Unity 渲染層級 RenderQueue SortingLayer SortingOrder


相機渲染順序

  相機的渲染順序,由Camera的Depth參數控制

RenderQueue

  Queue分為五個隊列:

    Background,天空盒,天生用來被覆蓋的(1000)

    Geometry,不透明物渲染隊列(2000)

    AlphaTest,通道測試的幾何體使用這個隊列,這些物體的渲染有點介於Opaue與Transparent之間(2450)

    Geometrylast,特殊的點,定義了透明與不透明的分界點(2500)

    Transparent,不寫深度的物體,一般是透明物或粒子效果(3000)

    Overlay,最后渲染的內容,天生覆蓋別人的,如UI(4000)

RenderQueue與SortingLayer與Order之間的關系

  1. Queue > 2500的物體絕對會在Queue <= 2500之后渲染,這時Layer、Order將完全不起作用

  2. Queue位於1中的同一側時,Layer低的先渲染,無視Queue與Order值

  3. Queue位於1中的同一側時,Layer相同,Order低的先渲染,無視Queue

  4. Layer與Order都一樣時,Queue低的先渲染

Opaque調整SortingLayer,SortingOrder為什么沒作用?

  因為不透明物體是打開ZWrite的,即使改了SortingLayer與Order,讓一個本來在后邊(Z值大)的物體先渲染了,但是另一個物體渲染時

    由於Z值小,寫深度以后,立馬把前邊的物體覆蓋了,結果總是一樣的;透明物渲染時,關閉了ZWrite,渲染的結果不是替換的,是

    混合的,所以先渲染后渲染,結果就可能會不同(與混合的方式有關)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM