Unity 中的半透明

首先说Unity中的渲染顺序,在Unity中改变渲染顺序的方式有四层,第一层为Camera的depth,第二层为Sorting Layers, Canvas可直接在面板中调节,其他的可能需要在脚本中设置,第三层为shader中的渲染队列,第四层为Pass(Pass的顺序在不同情况下有差别)。

再说半透明,最重要的是渲染顺序,只要渲染顺序正确,透明材质是可以不用关闭深度写入的,即使是多个半透明物体也是一样,另外当多个物体处于相同的渲染队列时,Unity中的透明渲染队列是由后往前渲染的,其余队列都是由前往后渲染。

若是进行双面渲染,要注意的是,若是在一个Pass中完成时会发生渲染顺序混乱的现象,正确的做法是放在两个Pass中,先渲染背面,在渲染正面。

事实上唯一能够最完美解决半透明物体渲染问题的方法是进行片元级的深度排序,不然总是会出现渲染顺序的问题。

你可能感兴趣的:(Unity,Shader)