3D引擎的基本内容

 
【整体设计】3D引擎一般都采用OO设计,使用C++实现;支持plug-in;
【渲染管道】支持多个渲染管道;渲染到贴图;HDR;
【场景管理】SceneGraph管理场景对象的层次关系;Quad Tree,Octree,BSP tree处理空间分割;LOD;PVS、遮挡剪裁等;
【资源管理】后台异步调入;引用计数控制生存期;
【光照和阴影】经典的Per-Vertex光照,Light map;使用Shader可以实现Per-Pixel光照。至于阴影可以使用Shadow map或者Shadow volume。
【动画】关键帧动画、骨骼动画是两种常用的动画;动作混合;
【材质】基本2D贴图,cube-map,bump map,multi-textue,multi-pass;Effect或者类似框架的支持。
【特效】环境映射、镜头光晕,公告板,粒子系统;动态天空,水面;雾,以及雨雪等天气效果;
【物理系统】最基本的就是碰撞检测了,然后有需要的话可以加入基本的刚体模拟,车辆控制,如果想要更复杂的效果,例如Ragdoll character animation,那么还是整合一个第三方的,例如Havok这样的比较好。
【声音】2D、3D音效播放;流式音乐播放;
【脚本】引擎层使用C++,游戏层使用一种脚本语言已经成为一种普遍的形式,一般可以选择支持Python,LUA,C#,Java,JavaScript。
       【编辑器】理想的情况是实现一个整合的、所见即所得的编辑器。主要支持的功能包括室内外场景实时的模型、材质编辑;Light、NPC等游戏对象的摆放和属性编辑;
【文件系统】支持文件打包压缩
 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值