界面

我们把游戏的界面分成2个类型,一种是游戏里面的主角,怪物,建筑物这一类,我们称为精灵,另外一类是页面显示的按钮,弹出框,我们称为UI控件。

精灵和UI控件都可以组成游戏的界面

比如一些按钮:

ElevatedButton(
	child: Text('攻击'),
	onPressed: () {
	  
	},
),

我们知道再Flutter中,只有Widget才能显示到界面上,而我们引擎中定义的Sprite类仅仅是个和普通的类,并不能直接放到页面内,这就需要我们引擎中定义的一个很重要的类DFGameWidget。

DFGameWidget是个负责将精灵渲染成Widget的类,并且在它的内部是一个GameLoop,精灵的刷新也全靠它来实现。

所以你在场景文件中会看到下面这样的代码:

/// 将地图精灵添加到主界面
this._gameWidget!.addChild(mapSprite);

/// 将玩家精灵添加到主界面
this._gameWidget!.addChild(_playerSprite);

/// 将怪物精灵添加到主界面
this._gameWidget!.addChildren(_monsterSprites);

只有被添加到DFGameWidget实例中的精灵会被渲染到界面上。







本站内容来源于作者发布和网络转载,如有版权相关问题请及时与我们取得联系,我们将立即删除。

 关于作者
 热门教程
快速开始
这是一款精美的Flutter游戏引擎,轻松在Google的Flutter框架上开发游戏。 A Flutter 2D R
2024-08-05
剑道仙尊
82
游戏功能
游戏的功能开发: 坐标系 资源加载 碰撞检测 A* 寻路算法
2022-08-19
剑道仙尊
42
游戏控件
游戏中的一些常用控件: 摇杆 按钮
2022-08-19
剑道仙尊
45
渲染精灵
游戏中不可缺少的精灵,包括: 文本精灵 图像精灵 动画精灵 进度精灵 瓦片精灵
2022-08-19
剑道仙尊
46
核心框架
引擎中的结构比较简单,编写程序时首先创建场景,场景也是一个Widget,然后往场景中增加子Widget,可以添加2中类
2022-07-11
剑道仙尊
112
摇杆
DFJoyStick是完全用Flutter实现的Widget,默认是8方向的,可以设置背景图片和一些基本样式。 ///
2022-06-07
剑道仙尊
130
精灵
组成游戏世界里的元素我们称之为精灵。 引擎里为了方便开发,内置了一些常用的基础精灵,如文本精灵,图像精灵,动画精灵等。
2022-06-07
剑道仙尊
83
界面
我们把游戏的界面分成2个类型,一种是游戏里面的主角,怪物,建筑物这一类,我们称为精灵,另外一类是页面显示的按钮,弹出框
2022-06-07
剑道仙尊
38
基本概念
1、场景 一般我们把打开一个界面也叫做进入了一个场景,一般游戏里的场景有登录场景,游戏主界面场景,地图的切换我们也称作
2022-06-07
剑道仙尊
242
资源加载
通过DFAssetsLoader类进行资源的加载,支持加载图片和文本资源。首次加载后引擎会自动缓存该资源以提高效率。
2022-06-07
剑道仙尊
47