游戏引擎介绍
开源游戏引擎
- OGRE 架构优良,易学易用。
- Panda3D,PYTHON脚本引擎。
- Crastal Space,有扩充模块。
游戏引擎组成
游戏引擎与游戏本身并没有一个非常清晰的界限,不同类型的游戏,侧重点不同,游戏的各部分划分就有所不同。
大部分游戏,都会有一些相对独立的模块部分,如图形渲染系统、动画系统、资源管理、碰撞及物理检测系统、音频系统、游戏世界模型系统、人工智能系统等。
游戏引擎可分为工具套件与运行时,两大部分。
常用的算法库:STL、STLport(可移植、优化的STL实现)、Boost、Loki(强大的泛型编程库)
常用图形库:openGl、DriectX、Edge等
常用碰撞与物理库:Havok、PhysX、Open Dynamics Engine(ODE)
角色动画:Grandy(优良的设计)、Havok Animation、Edge. 五种基本动画:精灵/纹理动画、刚体层次结构动画、骨骼动画、每顶点动画、变形目标动画。
人工智能库:Kynaspe
生物力学角色模型:Endorphin/Euphoria动画套件
引擎核心系统功能:断言、内存管理、数学库、自定义数据结构及算法、日志、RTII/反射/序列化、引擎配置、随机数生成器、单元测试、异步文件IO等
视觉效果系统:粒子系统(烟、火、水花等)、帖花系统(弹孔、脚印等)、光照贴图及环境贴图、动态阴影、后处理效果、PRT光照及表面反射、全屏抗锯齿等、颜色校正等
调试工具:intel的VTune、IBM的Quantify/Purify、Compuware的Bounds Checker
游戏性:通常使用两种语言实现,原生语言与高阶脚本语言。静态世界元素、动态游戏对象模型、事件/信息系统、世界加载/串流等
参考: