第九章 android游戏物理引擎讲义

上传人:今*** 文档编号:108178237 上传时间:2019-10-22 格式:PPT 页数:13 大小:981.50KB
返回 下载 相关 举报
第九章 android游戏物理引擎讲义_第1页
第1页 / 共13页
第九章 android游戏物理引擎讲义_第2页
第2页 / 共13页
第九章 android游戏物理引擎讲义_第3页
第3页 / 共13页
第九章 android游戏物理引擎讲义_第4页
第4页 / 共13页
第九章 android游戏物理引擎讲义_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《第九章 android游戏物理引擎讲义》由会员分享,可在线阅读,更多相关《第九章 android游戏物理引擎讲义(13页珍藏版)》请在金锄头文库上搜索。

1、Android游戏开发案例教程,第九章 Android游戏物理引擎,了解Android常用的2D游戏引擎 了解Android常用的3D游戏引擎,学习目标,前 言,当游戏需要实现比较复杂的刚体碰撞、滚动或者弹跳时,通过全部自行编程的方式实现就非常困难,成本也很高。使用物理引擎不仅可以得到更加真实的结果,对于开发人员来说也比自行开发要耗时短、效率高。 一款好的物理引擎可以非常真实地模拟现实世界,使得游戏更加逼真,提供更好的娱乐体验。,9.1 常用2D物理引擎,(一)Cocos2d,(1)易用:把关注焦点放在游戏设置本身,不必消耗大量时间学习难懂的OpenGL ES。 此外,Cocos2D还提供了大

2、量的规范。 (2)高效:Cocos2D基于OpenGL ES进行图形渲染,从而让移动设备的GPU性能发挥到极致。 (3)灵活:方便扩展,易于集成第三方库。 (4)免费:基于MIT协议的免费开源框架,用户可以放心使用,不用担心商业授权的问题。 (5)社区支持:关心Cocos2D的开发者自发建立了多个社区组织,方便的查阅各类技术资料。,基于MIT协议的开源框架,用于构建游戏、应用程序和其他图形界面交互应用。该引擎主要版本包括Cocos2D-iPhone、Cocos2D-X、Cocos2D-HTML5和JavaScript bindings for Cocos2D-X。同时也拥有非常优秀的编辑器(独

3、立编辑器),例如SpriteSheet Editors、Particle Editors 、Font Editors 、Tilemap Editors。,该引擎具有如下优点:,(1)运行高效,特别是在运算量较大的情况下,使用C/C+本地代码进行开发。 (2)AndEngine是开源项目,开发者可对源码进行修改,源码在github上托管。 (3)拥有Particle System (粒子系统),能制作雨雪流水等效果。另外还有Streak(动态模糊)、Radial Blur(径向模糊)等效果。 (4)使用JNI(Java Native Interface)封装了BOX2D的C+端,使得运行效率提高

4、。JNI 是本地编程接口,也是Java平台的一部分。它使得在 Java 虚拟机(VM)内部运行的Java代码能够与用其它编程语言(如 C、C+ 和汇编语言)编写的应用程序和库进行交互操作。,9.1 常用2D物理引擎,(二)AndEngine,基于libGDX框架开发,使用OpenGL ES进行图形绘制。同时继承了BOX2D物理引擎,因此能实现一些较为复杂的物理效果。在Rokon停止更新以后,AndEngine 成为Android 最为流行的2D游戏引擎。,该引擎具有如下优点:,9.1 常用2D物理引擎,基于OpenGL ES技术开发,是Android 2D游戏引擎,物理引擎为Box2D,因此能

5、够实现一些较为复杂的物理效果。开发文档相当完备,对Bug的修正迅速,被称为Cocos2d-iPhone引擎的Android版(业务逻辑和编码风格上很像)。,(三)Rokon,有Android及PC(J2SE)两个开发版本。 该引擎具有如下优点: (1) 层绘图器LGrpaphics封装有J2SE以及J2ME提供的全部Graphics API(PC版采用 Graphics2D封装,Android版采用Canvas模拟实现),能够将J2SE或J2ME开发经验 直接套用其中,两版本间主要代码能够相互移植。 (2)Android版内置有Admob接口,可以不必配置XML直接硬编码Admob广告信息。

6、(3)内置有按照1:1实现的J2ME精灵类及相关组件,可以将绝大多数 J2ME游戏平移到 Android或PC版中。但该引擎除了基本的音效、图形、物理、精灵等常用组件以外, 也内置有Ioc、xml、http等常用Java组件的封装,jar包体积较为庞大。,9.1 常用2D物理引擎,(四) LGame,是开源的物理引擎Box2D的Java版本,可以直接用于Android。由于JBox2D的图形渲染使用的是Processing库,因此在Android平台上使用JBox2D时,图形渲染工作只能自行开发。该引擎能够根据开发人员设定的参数,如重力、密度、摩擦系数和弹性系数等,自动地进行2D刚体物理运动的

7、全方位模拟。,9.1 常用2D物理引擎,(五)JBox2D,9.2 常用3D物理引擎,(一)Unity3D,有独立的开发客户端,采用脚本式开发而非编码式开发,可以和Unreal、Cry这种国际顶级引擎效果相媲美。具有跨平台特性,wp7、ios、pc、mac、xbox360等终端都可以使用,语言较C类语言更容易学习,更贴近Java(JS、c#)。,(二)JPCT,基于OpenGL技术开发的3D图形引擎(PC环境为标准OpenGL,Android为OpenGL ES),以Java语言为基础,拥有功能强大的Java 3D解决方案。该引擎与LGame(此为2D游戏引擎)相类似,目前拥有PC(J2SE)

8、以及Android两个开发版本。 最大优势之一,在于有非常好的向下兼容性。在PC环境中,JPCT甚至可以运行在JVM1.1环境之中,因为jPCT内部提供的图形渲染接口完全符合所有的Java 1.1规范,连已经消失的Microsoft VM乃至更古老的Netscape 4VM也不例外。,基于OpenGL ES技术开发,一款体积非常小的Android 3D游戏引擎,核心文件大约只有40KB,所有相关jar的总和也不足150KB。根据不同功能采用多jar方式发布。,9.2 常用3D物理引擎,(三)Libgdx,基于OpenGL ES技术开发的Android游戏引擎,支持Android平台下的2D游戏

9、开发。单就性能角度来说,是一款非常强大的 Android游戏引擎,缺点是精灵类等相关组件在使用上不够简化,仅支持2次方尺寸的图片。,(四)Alien3d,本章小结,物理引擎通过给物体赋予真实的物理属性来模拟物体的运动,包括碰撞、移动、旋转等;好的物理引擎不仅会帮助实现碰撞检测、力学公式模拟,而且还会提供很多机械结构的实现,如滑轮、齿轮、铰链等;更高级的物理引擎不但可以提供刚体的模拟,甚至还可以提供软体及流体的模拟。这些都能帮助游戏提升真实感和吸引力。,思考与练习,(1)除了本章介绍的,在Android平台中还支持哪些游戏物理引擎。 (2)在Android平台中使用Cocos2D引擎的环境配置方法。 (3)通过图书资料或网络了解Unity3D三维游戏引擎对资源的组织方式。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号