您的位置:首页 > 运维架构 > 网站架构

3D游戏引擎的总体架构设计

2010-03-02 16:25 232 查看


/************************************************************************
* Author: 陈相礼
* Time: 2010.2.267
************************************************************************/
[b]一、
3D引擎的一般组件
1、 光影计算
2、 动画技术
3、 物理系统
4、 实时渲染
5、 人机交互
6、 网络接口
二、 3D引擎层次结构
第一层:
数学库:提供通用数学运算库(如三角函数、快速近似计算)和三维数学运算库(如向量、矩阵);
I/O支持:提供鼠标、键盘、手柄等输入设备的支持;
资源管理:使应用程序更好的使用内存,对系统内存进行调度并对资源实现引用计数管理;
网络支持:提供Socket连接、数据包发送。
第二层:
日志系统:用于信息输出及调试使用;
声音支持:使游戏更加丰富多彩;
渲染器:提供二维及三维图形的渲染、光影效果的处理、材质的渲染等等非常重要的功能;
物理系统:负责物体物理模拟,包括最重要的碰撞检测和动力学模拟。
第三层:
场景管理:管理整个游戏世界,使得游戏应用能更高效地处理场景的更新及事件;
特效:使得游戏更加绚丽,能力的高低往往决定了游戏画面是否优美逼真;
动画:管理关键帧动画和骨骼动画,丰富角色,使之动作更逼真;
GUI:负责用户和系统的交互,决定了一个游戏的风格。
第四层:
AI:处理游戏中的逻辑,负责角色对事件的反应、复杂智能算法的实现等;
辅助开发工具:便于游戏的开发,常用开发工具:场景编辑器、材质编辑器、动画编辑器、GUI编辑器、逻辑编辑器、特效编辑器等辅助管理工具。
具体如下图:





三、 客户端体系结构
1、 登陆服务器:处理用户登录请求及其新用户注册工作,提供数据加密功能。独立出来减轻其它服务器负荷。
2、 大厅服务器:维护游戏列表和游戏房间列表,负责组织玩家进入不同游戏或是给一个游戏分配不同房间;还是玩家交流平台。承载所有玩家,考虑要进行优化。
3、 中心服务器:玩家状态维护和房间映射管理。可以放在登录服务器或大厅服务器上。
4、 数据服务器:保证数据安全存储和传输。
5、 游戏服务器:处理具体游戏逻辑和玩家消息分发。

[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: