在Unity3D中創建任何一個UI元素時,都會自動創建canvas畫布。這篇文章主要介紹Canvas參數中Render Mode的三種渲染模式:Screen Space-Overlay、Screen Space-Camera、World Space:
1、Screen Space-Overlay模式(屏幕空間-覆蓋模式)
該模式下的畫布會投射到整個屏幕空間,並將畫布下面的所有的UI元素置於屏幕的最上層,即畫布上的內容永遠覆蓋其他普通的3D畫面。如果屏幕尺寸被改變,畫布將自動改變尺寸來匹配屏幕。
2、Screen Space-Camera模式(屏幕空間- 攝像機模式)
在該模式下,畫布會被放置到攝影機前方。在這種渲染模式下,要為Canvas鏈接一個Camera攝像機,所有的UI元素都由該攝影機渲染,畫布看起來繪制在一個與攝影機固定距離的平面上,場景中的所有物體按照與攝影機的距離按層級依次顯示,距離近的物體會遮擋距離相對遠的物體。該模式下畫布也是填滿整個屏幕空間,如果屏幕尺寸改變,畫布也會自動改變尺寸來匹配屏幕。
3、World Space模式(世界空間模式)
在此模式下,畫布被視為與場景中其他普通游戲對象性質相同的類似於一張面片(Plane)的游戲物體。畫布的尺寸可以通過RectTransform設置。這種模式可用用來實現跟隨任務移動的血條或者名稱。