继上一章从阴影产生的原理去讲解和实现阴影效果,本章将继续优化阴影效果和实现抗锯齿,以及阴影的多种产生方式及其应用场合,下面进入正题:
一.高精度锯齿优化
该方法实现简单,但是效果也是最好的一种,不过消耗非常大,所以适合的场合是精度要求较高的模型 比如主角渲染等,不适合全场景渲染。该方法下Shader代码基本不需要改什么,只需要提高精度就够了,其一是提高存储阴影相机深度图的分辨率,其二是减少阴影相机的渲染范围,也就是花最大的贴图显示出最小的场景,这样精度自然是最高的。
如下图,显示的是阴影相机渲染的场景阴影范围的深度法线图:
图一是用阴影相机渲染了场景20米范围的所有物体 把他渲染到一张512大小的rendertexture上面,图二是用阴影相机渲染了场景5米范围的物体,rendertexture精度达到2048。那么实际的阴影渲染效果要从下面的图可以看出:
如下图一所示,锯齿感非常强烈,是因为使用了低精度的rendertextur