Unity Shader渲染队列与深度测试控制(ZTest、ZWrite、Early-Z)
Unity 的渲染队列、ZTest、ZWrite 和 Early-Z 这些概念,多新手会有点迷糊。其实,它们就是在 Unity 的渲染流程中你控制物体的渲染顺序和深度测试。比如说,Unity 渲染引擎会先渲染不透明物体,开启深度测试和深度写入,确保前面的物体遮挡后面的物体。而对于半透明物体,它会按照离摄像机的远近进行排序,从远到近逐个渲染。这时,深度测试开启但深度写入是关闭的,这样做的目的是避免深度冲突,让半透明效果更加自然。ZTest 和 ZWrite 在这其中起到了至关重要的作用,控制物体是否参与深度测试和是否写入深度缓冲区。如果你对 Unity 渲染的深度测试和透明物体渲染比较感兴趣,搞懂这些概念后,你会发现渲染效果有了更大的掌控空间。
943.74KB
文件大小:
评论区