以上这种材质唯一的缺点呢,就是它的材质层非常复杂,所以我们后面会用到一些塌陷的方式,来生成一些更简化的材质层。比如说像这就是我刚才说的材质的一个蓝图,这个蓝图看起来好像就是这么几块,但是如果中间这么一个小块都是这么一个复杂的方式,把它打开又是非常大的一个蓝图。所以整个材质层的组成是一个非常可怕的复杂度。 如果你在游戏里面用到这样的材质层,那就基本上就不可能再做其他的事情了,基本上是在开发状态才会用到。在游戏中为了优化,我们可能要做一些塌陷,比如说我要把那些纹理合并到一张纹理上,这样材质层可以在最小的规模上,再做一些跟场景相关的技术。 比如说我这里面,有一个场景是雪地,雪地有一个要求,就是说模型放在雪地里面,上面会有一些积雪,雪会落在模型上面。比如其他的如沙地、沙漠也有类似的需求,比如我在沙漠里放的模型,在模型的表面是有一层沙子堆在上面的,而雪地上面要堆一些雪。其实把这些本身并不复杂,需要用一些堆雪的法线来计算这种方法来实现,但是不可能每一个材质都这么计算,所以我们就用到了刚才说的这种塌陷的方式,把刚才那几个复杂的材质启用到塌陷的纹理面,然后再把雪的函数加上,材质层的复杂程度就得到了一个很有效的控制。 基本上这就是我们后面做的效果,把雪直接落在这个上面,这是堆雪的函数,把堆雪的函数放在这儿,再烘焙出来,这是最终的材质层,就是说我把烘焙出来的纹理再加上。堆雪函数就变成了这种效果。整个这里面的材质层,它足够在那些主机比如PS4上跑得非常快。 更多经常内容移步腾讯GAD。 (责任编辑:本港台直播) |