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

/************************************************************************
* Author:  Bill Adams
* Time:    2010.2.267
************************************************************************/

一、             3D引擎的一般组件

1、  光影计算

2、  动画技术

3、  物理系统

4、  实时渲染

5、  人机交互

6、  网络接口

二、             3D引擎层次结构

第一层:

数学库:提供通用数学运算库(如三角函数、快速近似计算)和三维数学运算库(如向量、矩阵);

I/O支持:提供鼠标、键盘、手柄等输入设备的支持;

资源管理:使应用程序更好的使用内存,对系统内存进行调度并对资源实现引用计数管理;

网络支持:提供Socket连接、数据包发送。

第二层:

         日志系统:用于信息输出及调试使用;

         声音支持:使游戏更加丰富多彩;

         渲染器:提供二维及三维图形的渲染、光影效果的处理、材质的渲染等等非常重要的功能;

         物理系统:负责物体物理模拟,包括最重要的碰撞检测和动力学模拟。

第三层:

         场景管理:管理整个游戏世界,使得游戏应用能更高效地处理场景的更新及事件;

         特效:使得游戏更加绚丽,能力的高低往往决定了游戏画面是否优美逼真;

         动画:管理关键帧动画和骨骼动画,丰富角色,使之动作更逼真;

         GUI:负责用户和系统的交互,决定了一个游戏的风格。

第四层:

         AI:处理游戏中的逻辑,负责角色对事件的反应、复杂智能算法的实现等;

         辅助开发工具:便于游戏的开发,常用开发工具:场景编辑器、材质编辑器、动画编辑器、GUI编辑器、逻辑编辑器、特效编辑器等辅助管理工具。

具体如下图:

 

图片

 

三、             客户端体系结构

1、  登陆服务器:处理用户登录请求及其新用户注册工作,提供数据加密功能。独立出来减轻其它服务器负荷。

2、  大厅服务器:维护游戏列表和游戏房间列表,负责组织玩家进入不同游戏或是给一个游戏分配不同房间;还是玩家交流平台。承载所有玩家,考虑要进行优化。

3、  中心服务器:玩家状态维护和房间映射管理。可以放在登录服务器或大厅服务器上。

4、  数据服务器:保证数据安全存储和传输。

5、  游戏服务器:处理具体游戏逻辑和玩家消息分发。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bill Adams

喜欢?打赏一杯阔乐吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值