别抽象的马,大概也就只有几根线条而已。

    “我们制作不同的精度的模型。”

    “近距离范围内,按照优先级最高,加载实际面数多的这个模型出来。”

    “如果离得远,没有战斗需求和交互需求,但是又在可见范围内的话,就可以使用粗糙一点的,面数少的这个。”

    “再远一点,勉强可见的话,可以只加载这个特别特别粗糙的模型,甚至不加载都行,只加载地形就行了。”

    “除此之外,给地形、材质、不同的物体模型上打一个优先级的标签,这样方便程序来进行判断。”

    “比如地形是最重要的,那么在预加载的过程当中,就会先把地给加载进来,之后再是一些环境当中的重要元素,什么大石头啊,悬崖,河流……

    就按照这个模式去做就行了。”

    “哦哦,懂了懂了。”赤西健和小池点头如捣蒜。

    社长真是太可怕了。

    居然能想到这种方式。

    按照赤西健原来的设想,一个场景当中加载那么多的东西进来,起码得有几万面了,这程序消耗怎么可能吃得消。

    但是青智源一说分层级加载,预加载,突然一下子就把几万面给干到了只有几百面了,简直可怕。

    这其实还有一个好处,就是可以模拟真实的人眼。

    人看东西,也是近处的圆形范围内,越靠近焦点的越清楚,越远离的就越模糊。

    LOD做出来之后,其实也是这样的一个效果。

    离得越远,加载的模型就越粗糙,面数越少,自然就越模糊。

    不但不会因为面数减少而导致玩家们觉得不舒服。

    反而显得更加真实。

    不过就像青智源说的那样,你得将玩家的移动速度控制在一定的范围内才行。

    不然的话,当你的移动速度超过了预加载的速度,那就很容易穿帮了。

    比如说旁边这块地板还没加载出来,你就直接开着摩托车过去了,有可能一下子就陷入地板下面。

    这也是很多游戏当中常常存在的bug。

    但是实际上就是因为预加载没能匹配上的问题导致的。

    ……

    “除此之外呢,程序那边还需要做一件事情。”青智源说。

    “嗯?”赤西健疑惑地抬起头来。

    “你们知道拓扑运算吧?”

    “知,知道吧……”赤西健有点犹豫。

    倒不是自己的程序水平不够,主要是社长那副盛气凌人的样子,就好像是在课堂上面讲课的老师一样,突然提问学生,你一下子心里面多少会有点儿慌。

    “那就好办了。”青智源说着,将一个粉笔盒放到了桌子上,然后再掏出一根粉笔来放到它的后面,只露出半截脑袋。

    “在3D领域当中,物体之间其实是有遮挡关系的。”

    “比如说,这根粉笔,有半截藏在后面,那么它从你们的视角来看,其实就只有一半可见。”

    “在这种情况下,按照一般的程序逻辑,不管后半部分可不可见,是不是也会被加载出来呢?”

    “嗯,”赤西健点点头,“那是肯定的。”

    “但是实际上,我们并不需要加载后面的部分对不对,因为对于玩家们来说,藏在盒子后面的半截粉笔是个无效信息,那么就应该将后边这个部分给裁掉。”

    “而且,就粉笔盒而言,能被玩家们看到的也就只有三个面而已,在后面和底下的面也是多余的,将这些面都给裁掉的话,内存开销一下子就释放出来了。”
>

本章未完,点击下一页继续阅读