C語言中文網 目錄

Unity 3D Canvas畫布

Canvas 是畫布,是擺放所有 UI 元素的區域,在場景中創建的所有控件都會自動變為 Canvas 游戲對象的子對象,若場景中沒有畫布,在創建控件時會自動創建畫布。

創建畫布有兩種方式:
  • 一是通過菜單直接創建;
  • 二是直接創建一個 UI 組件時自動創建一個容納該組件的畫布。

不管用哪種方式創建畫布,系統都會自動創建一個名為 EventSystem 的游戲對象,上面掛載了若干與事件監聽相關的組件可供設置。

在畫布上有一個 Render Mode 屬性,它有 3 個選項,如下圖所示。

它們分別對應畫布的 3 種渲染模式:Screen Space-Overlay、Screen Space-Camera 和 World Space。

畫布的Render Mode屬性

1) Screen Space-Overlay 渲染模式

在 Screen Space-Overlay 渲染模式下,場景中的 UI 被渲染到屏幕上,如果屏幕大小改變了或更改了分辨率,畫布將自動更改大小以適配屏幕。

此種模式不需要 UI 攝像機,UI 將永遠出現在所有攝像機的最前面。

Screen Space-Overlay 渲染模式的參數如下表所示。

參 數 功 能
Pixel Perfect 重置元素大小和坐標,使貼圖的像素完美對應到屏幕像素上
Sort Order 排列順序

2) Screen Space-Camera 渲染模式

Screen Space-Camera 渲染模式類似于 Screen Space-Overlay 渲染模式。

這種渲染模式下,畫布被放置在指定攝像機前的一個給定距離上,它支持在 UI 前方顯示 3D 模型與粒子系統等內容,通過指定的攝像機 UI 被呈現出來,如果屏幕大小改變或更改了分辨率,畫布將自動更改大小以適配屏幕。

Screen Space-Camera 渲染模式的參數如下表所示。

參 數 功 能
Pixel Perfect 重置元素大小和坐標,使貼圖的像素完美對應到屏幕像素上
Render Camera UI 繪制所對應的攝像機
Plane Distance UI 距離攝像機鏡頭的距離
Sorting Layer 界面分層,執行 Edit→Project Setting→Tags and Layers→Sorting Layers 命令進 行界面分層,越下方的層在界面顯示時越在前面
Order Layer 界面順序,該值越高,在界面顯示時越在前面

3) World Space 渲染模式

在 World Space 渲染模式下呈現的 UI 好像是 3D 場景中的一個 Plane 對象。與前兩種渲染模式不同,其屏幕的大小將取決于拍攝的角度和相機的距離。

它是一個完全三維的 UI,也就是把 UI 也當成三維對象,例如攝像機離 UI 遠了,其顯示就會變小,近了就會變大。

World Space 渲染模式的參數如下表所示。

參 數 功 能
Event Camera 設置用來處理用戶界面事件的攝像機
Sorting Layer 界面分層,執行 Edit→Project Setting→Tags and Layers→Sorting Layers 命令進 行界面分層,越下方的層在界面顯示時越在前面
Order Layer 界面順序,該值越高,在界面顯示時越在前面

精美而實用的網站,提供C語言C++STLLinuxShellJavaGo語言等教程,以及socketGCCviSwing設計模式JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo