3DMMORPG游戏在中国在线游戏市场中占据非常重要的份额,而3D引擎则是关系到游戏效果的一个核心技术,在第二届中国游戏开发者大会上,来自完美时空3D引擎总监李毅阐述了其对于引擎技术的见地。
在其演讲中着重阐述了如下3点经验:
1. 设计统计分析函数对自己的渲染进行全方位的观察
从分析的方法来讲,有计数分析和计时分析。
从分析的粒度来讲,有宏观分析和微观分析。
组合起来就有四个分析项目。
宏观来讲,需要观察的就有
-渲染的批次
-shadowmap渲染的批次
-skinmesh的个数
-树木植被渲染的批次
-地形的三角形个数
-特效渲染的批次
……
微观来讲:
-渲染的三角形的个数
-渲染的顶点的个数
-shader切换的次数
-渲染切换的次数
-填充率
-设置shader常量的个数
…….
而对于计时统计,也是对应地把上面的个数变成时间。
2. 关于场景管理的策略
完美使用九格方块的方法,也就是永远只加载9格,以限制内存显存的占用率,理论上实现无限大场景加载。
3. 关于渲染状态的管理
使用二维表格来管理渲染状态,这张表记录了每种状态之间的互相对应关系,表里每个元素保存着两种渲染状态之间切换所需要做的状态改变。使用这种方法将有利于减少渲染状态切换的个数。
4. lod方面的经验
mesh方面lod的管理,总共分5级别。
下一级的三角形个数大概为上一级的75%,这样出来的视觉效果会比较好,如果太小,突变就比较严重。不过最后一级经常使用公告板。
由于目前大会的各种资料非常繁多,大会组委会正在对这些资料进行整理和校对,稍后大会组委会将提供更加详细的资料给产业界人士做参考。请大家关注CGDC官网:www.chinagdc.com.cn。