游戏引擎是心脏,决定游戏的性能和稳定性,引擎是用于控制游戏功能的主程序,
它是一个发动机控制着游戏的运行。一个游戏包括引擎和资源2大部分。资源包括声音、动画、脚本、图像。
优秀3D引擎,会让使用者很轻松的使用SDK,通过SDK,能满足各种复杂的3D游戏功能需求。
一个强大的引擎会提供强大的编辑器,引擎的场景编辑、模型编辑、动画编辑、粒子编辑。
公共模块包含了客户端和服务端共有的系统,主要有:网络通信、实体对象系统、物理仿真、空间仿真、空间分割和查询、资源管理和脚本,文件io 等。
客户端模块包括客户端世界管理,图形图像渲染,网络预测,声音管理、动画等。
服务端模块包括服务端世界管理、事件和时间同步,游戏AI(可客户端共享)、碰撞检测(可客户端共享)、3D动画模型部分,持久保存和恢复等。
相关工具包括:数据库、脚本编辑器、模型和动画导出、世界构建和布局、声音动画编排、客户端发布更新工具。
2、八叉树Octree空间分割
八叉树是一种数据结构,描述在一个占据三维空间场景内物体的分布情况,并将物体安排
在一个层次结构中。八叉树的定义是:若不为空树,树种人一个节点都恰好有8个字节点或0个。
八叉树是四叉树在三维上面的推广。
八叉树比较适合小型室外场景等分割方式,允许摄像机随意位置的室内场景中
工作的一样良好。
3、二叉空间分割树(Binary-Space Partitioning)
使用一个分离面对每一层分为2,从而实现空间的划分。二叉树是一种非常有效的场景组织方式,
BSP做空间快速碰撞检测比几何体划分更多。
八叉树和四叉树擅长把多边形打包成几何体进行分割工作。二叉树不擅长此法。
游戏引擎开发阶段表
http://blog.csdn.net/luyuncsd123/article/details/10020035