论文部分内容阅读
游戏引擎是软件工程中的软件复用思想在游戏开发中的表现形式之一。它把游戏中最常见、最核心的功能进行集成,形成通用的框架平台。这样,在进行具体的游戏产品开发时,游戏编程人员就不需要从头做起,而可以直接调用游戏引擎提供的强大功能,在短时间内高质量地开发出新游戏。游戏的运行效果往往受限于硬件性能,尤其是运行在嵌入式设备上的3D游戏,对高效率和高性能的追求为游戏开发人员提出了更高的要求。这种高要求产生了更专业的分工:一部分高水平的开发人员从事性能要求很高的游戏引擎的开发,而一般水平的开发人员则利用引擎进行具体游戏产品的开发。游戏产品的核心特点是创意和可玩性。这就使游戏的开发要变得比较容易和简单,使得不懂编程的游戏创作人员也能快速的实现他们的创意。随着手机性能的提高和3D图形技术在手机游戏领域的应用,3D手机游戏必将成为游戏领域的一个亮点,因此开发一款适应性强的3D手机游戏引擎,能够使今后3D手机游戏的开发更加高效和方便,是未来手机游戏开发的重点。论文通过对手机游戏引擎的发展现状的介绍,凸显出了3D游戏引擎在手机游戏开发中的重要性,并且提出基于Java ME的3D手机游戏引擎的架构设计。引擎架构根据引擎中各个模块功能以及面向的使用对象类型进行划分,共分为了四个模块:基本封装层、引擎封装层、可视化开发工具、和软件辅助开发库。这种分层的结构设计,不仅使得引擎的结构简明清晰,更有利于引擎的维护和版本升级。论文还详细阐述了3D手机游戏引擎中场景管理、碰撞检测、物理系统模块的具体设计思路以及实现过程。场景管理是游戏引擎的核心,它负责构造需要渲染的场景树,在论文的设计中,场景管理还负责各个模块间的数据分发,通过它将引擎层的其他模块结合在一起,协调了整个游戏引擎的工作;碰撞检测负责进行游戏场景中的相交测试。论文中使用的碰撞检测方法是在手机游戏开发中常用的光线相交法基础上的改进,利用包围盒技术,提高了游戏中不规则对象的碰撞检测精度:物理系统模拟真实世界中发生的物理现象,在论文中,着重模拟了碰撞反应和速度变化两种基本的物理现象。