先说说ShadowMask 模式下 按如下设置进行烘焙:
如上所示烘焙之后的结果动态物体 小Cube放在比它高的静态物体(我们把它看作高墙)下的时候,静态物体的影子并没有影响到动态物体小Cube。
正常情况下小Cube会受到高墙的阴影影响会变暗,那么我们如何改变这种情况呢??
第一种:之后会介绍灯光探针的技术运用;
第二种:就是把混合光照的渲染模式Shadowmask更改为Shadowmask Distance
Unity2017 之后ShadowMask distance选项放在了Quality里面,Unity5.6 版本的在Lighting面板里面
经过修改之后重新进行烘焙结果如下所示:其中下面的Shadow Distance数值150 ,表示摄像机视野的150米之内,所有的静态物体的阴影是不是光照贴图预算计算好的阴影,而是实时计算的,所以动态物体会受其影响。
一旦相机距离静态物体超过150米,在视野内就看不到动态物体受静态物体阴影的影响了。
当然了这种模式会比较耗性能,但是比较真实。不过我们可以通过代码来控制,在动态物体上添加碰撞盒,经过检测触发来改变设置模式嗲吗如下所示: