第10章 荀总你可真是个天才!(1/2)
言情小说吧【www.yqxsb.com】第一时间更新《2013:从做黑悟空开始》最新章节。
“关于角色和场景面数的话……我也有一套完整的解决方案。”
就在众人为模拟真实的物理效果而感到惊讶的时候,荀宇又继续说着另外一个大难题。
也就是之前宋明哲提出来的【游戏性能】问题。
这个其实也是前世黑悟空比较被人诟病的问题,对配置要求高,开低模勉强跑起来,但就会卡顿严重。
问题的本质就在于黑悟空的面数太多了。
所谓的面数,最简单的理解就是:一个正方体有6个面,然后复杂的结构体,比如说猴子是通过许多个不断细化的三角面和方形面拼接起来的,面数越高模型精度就越高,就越顺滑,更贴近于真实效果。
圆形消耗的面数就是非常多的,因为一个圆相当于将正方形不断地细分结果,正方形、六边形、八边形、边越多就越趋近于圆。
除此之外,角色的毛发数量也是面数的消耗大户,黑悟空比平常游戏麻烦的地方也在于这里:
这特么是一只猴子!
而且还是长毛的那种。
天然就要多很多面,否则模型就会变得很奇怪:
毛发变成锥型,甚至是三角锥,跟卡卡罗特似的。
开低配的时候就是这效果。
所以黑悟空角色面数几万面往上,高配置的情况下,十万面都打不住。
一个大场景,上千万面,还要加载,这个对游戏性能的开销不是一般的大。
“三种技术来解决游戏性能的问题。”
荀宇数着手指,“第一个是LOD。”
LOD技术也是最近才被开发和推广的技术,很多游戏公司也刚接触,还没有应用。
对于荀宇来说,如果不是受到硬件限制的话,完全可以采用更先进的方式。
“所谓的LOD,就是将游戏场景和角色分成很多个层。”
“通过在不同距离或屏幕空间尺寸下使用不同详细程度的模型,以减少渲染负担。
具体来说,当物体距离视点较远时,使用较低分辨率的模型;
当物体靠近视点时,则使用高分辨率的模型。这种技术可以有效减少需要渲染的多边形数量,从而提高渲染速度和优化内存使用。”
“这其实是跟我们的人眼习惯保持统一的,反而能增加游戏世界的真实性,最简单的来说就是:
远处模糊,近处清晰。
远处采用低精度模型,近处用高精度。
甚至超过一定距离之后,完全可以用个面片做背景板。”
面片,相当于是个电影屏幕,对于游戏内来说这只是一个长方形,或者弧形的面,开销是最省的。
然后美术做几个动态帧放到上面进行播放。
“举例来说:
在黑悟空的场景当中,远处的天空,火焰山中的牛魔王,在离得较远距离的时候,完全可以只播放这个动态图,而不用加载牛魔王的具体模型。
性能上就得到了极大的节约。
然后当你跑到脚下的时候,牛魔王的模型就会被预加载进来。”
荀宇竖起两根手指,笑了起来,“所以第二个技术就是分布式加载和预加载。”
“分布式加载,就是将一个大场景进行多个模块划分,比如一个1000*1000的场景,可以分割成为100份,玩家的主视角下所能看到的体验到的东西是有限的。
利用好这一点,能极大地节省游戏性能开销。
黑悟空的移动速度假设是一秒钟跑5米,那么我们在超过100米,或者400米外的场景就可以不用先加载进来,只用加载一个背景板就行。
当他跑到下一个场景分块的时候,我们有足够多的时间加载进来。
然后将冗余场景资源给卸载掉。”
“然后最后一个技术就是OS技术,也就是所谓的唯可见技术。”
本章未完,点击下一页继续阅读。