阴影
有光必有影,阴影是由于光照到遮挡的物体然后投射到另一个物体表面形成的。关于在unity中投射阴影的条件,可以参看上篇的插图
阴影暗斑
来看这两张图,左面的是正确的光照阴影,右边的圆柱体顶部,产生了细小的斑痕,但这是不正确的。该圆柱体顶部应该是光滑的,并不可能出现这样的斑痕。造成这种现象的原因,涉及到我们先前提过的Shadowmap,在阴影贴图中保存的是远近位置的深度信息,当使用阴影贴图来决定是否生成阴影时,我们是需要将顶点位置来和该顶点在阴影贴图中的信息做大小比较。但是,这个存储信息可能不准确。原因有很多情况,包括阴影贴图的分辨率造成的精度丢失,贴图采样算法造成的计算精度丢失等。那么一旦一个原本位于更靠远位置的点,因为精度问题,被计算成位于前面的话,就会产生一个原本不该存在的阴影。<