`
须等待
  • 浏览: 211271 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Andengine 学习笔记-整体框架认知

阅读更多
浏览了一下Andengine的源码,总结一下整个Andengine的框架的抽象方法。

大体上来说,Andengine的API分为几类,一类关注于图像的处理:如何将图片资源从文件读取到内存,并且做好缓存等管理工作;一类则关注于构建游戏:将整个游戏画面抽象为一个一个的Scene、每个Scene里又有一层一层的图像。

图像处理的API又有两层抽象,第一层是图像本身的抽象,父接口是ITexture。




这里的类主要负责加载图片资源,更优化的做法是使用Atlas地图类,其中加入了批量和缓存的一些优化。

第二层抽象是图像抽取方法的抽象,父接口是ITextureRegion。




这些类记录了目标Texture在大Texture中的位置信息,我们在操作Sprite的时候,一般图像的参数都是ITextureRegion。

构建游戏的API则分为很多模块。
Engine模块,负责驱动游戏时间逻辑、接收事件,是框架的主类。

Entity模块,在Andengine的框架中,所有的屏幕上的元素都是Entity,所以Entity中封装了元素的位置信息、颜色、角度等等。Entity是一个相对抽象的类,它有很多子类,分别代表我们看到的各个元素的抽象。如,常见的长方形、字符串、更重要的是Sprite子类,它代表一个被贴图的形状,这样我们就可以把图片和元素结合起来,变成我们看到的“活”的元素。
Scene也是Entity的子类,并且是第一个被创建的Entity,它是游戏画面里最基本的元素,相当于最下面那一层画面。

Camera模块, Camera代表我们的可视区域,因为一个Scene可以很大,大到超过屏幕的显示范围,而Camera才是我们真正看到的那个区域。了解了Camera,自然的我们可以想到Camera可以支持放大和缩小的操作;另外Camera是可以移动的,代表着我们可视区域在移动。



  • 大小: 10.3 KB
  • 大小: 6.4 KB
  • 大小: 55.9 KB
1
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics