● 摘要
游戏引擎就像汽车的引擎一样,是游戏的发动机。游戏引擎要为游戏的开发提供强大的底层功能支持和功能扩展解决方案,并保证游戏开发和游戏本身的高效性。本文论述了FPS 3D游戏引擎(First Person Shooting)的关键技术设计与实现。该引擎通过实现良好的可扩展性和通用性的设计,为将来开发此类型的游戏打下坚实的基础,为公司开发游戏降低风险,并且为快速开发游戏提供基本的技术支持。本文对FPS 引擎的下列方面进行了设计和实现:1.基本的数据结构的定义与操作。2.基本的渲染模型的定义与操作,如:颜色的定义与操作、光源的定义与操作。其中,渲染模块包含3个子系统,它们是纹理系统,场景管理系统,光照系统。渲染模块主要是负责:渲染流水线的管理、场景的管理,物体光影的生成。3.3D骨骼动画。主要是负责游戏里所有的动画效果。4.碰撞检测系统,主要是通过给物体添加包围盒来检测。5.简单例子系统,如:子弹的爆炸效果,场景里的火的效果。通过本文的设计和实现过程,使得本引擎具备下述优点:1.跨平台引擎支持Windows ,Linux, Mac操作系统。2.使用灵活因为引擎对底层的接口进行了封装,所以使用引擎的开发者可以不需要掌握DirectX/OpenGL的具体细节而可以直接用引擎提供的方法来开发游戏。3.可持续发展引擎的设计是尽可能的把底层API(DirectX/OpenGL)的接口进行封装,这样在底层的API有变化时只需要更新底层的类,而无须改动上层的设计。