在制作这种渲染比较复杂的情况下,容易出现渲染前后关系错乱问题,我在制作龙卷风的时候出现了如下图的情况:
1.摄像机角度是斜向下看:
2.摄像机角度是从下往上看:
出现的情况很显而易见,要么气流在中心风的上面,要么在中心风的下面,看着非常难受,此时两个shader都是半透明无写入的情况下产生的结果,我们考虑如何去避免这个情况,或者如何去解决显示问题:
解决方法:
解决方法很简单,只需要把中心的风shader改为"rendertype"= " opaque" zwrite打开即可,因为先让中心的风渲染,更新中心风的深度值,再渲染边缘螺旋风的时候,在中心风背面的螺旋风因为深度值大而剔除,在中心风前面的螺旋风将更新颜色缓冲区而替代中心风