Unity | UI系統(tǒng)

User Interface (UI)系統(tǒng)是應用與用戶交互的窗口,合理地設置UI 可以讓用戶獲得更好的體驗。

文 / 丁建雄
圖 / Mary Anna

小白是單純?yōu)榕d趣而寫作的獨立創(chuàng)作人,如果您喜歡小白的文章,歡迎關注、交流、分享(引用請鏈接到本文)。

寶貝
  1. unity 使用UGUI 作為自帶的UI 編輯器。
  2. 所有UI 元素都必須作為Canvas 的子對象存在,一個Canvas 可以掛載多個子對象,一個場景中可以存在多個Canvas 對象。
  3. Event System 的作用是用于處理場景中的交互事件。
  4. Canvas 的三種渲染模式(render mode):
    Screen Space-Overlay:默認渲染模式,優(yōu)先級最高,不會被其他任何對象覆蓋,大小由Game 視圖大小決定。
    Screen Space-Camera:這種渲染模式基本和上一個一致,而由于是相機跟隨,如果屏幕尺寸改變,Canvas 會自動重新適應屏幕尺寸。
    World Space : VR項目必須以這種模式,這種模式下Canvas 對象會跟其他所有2D對象一樣存在于場景中。
  5. 在Canvas 內(nèi)部,位于下方的組件會優(yōu)先于上方的組件顯示在場景視圖的前面而發(fā)生遮擋。
  6. 交互元素包括:Button(按鈕),Toggle(開關),Slider(滑動條)等,通過這些控件,可以響應簡單的交互效果??梢酝ㄟ^設置一個UIController 對象來統(tǒng)一控制UI 交互的邏輯。
  7. 布局屬性理解:布局在新版本的UI系統(tǒng)中有很不錯的改動,引入了Anchor(錨點)和Pivot(軸點),關于這兩個屬性的理解,不少人都很迷糊,網(wǎng)上找了很多博客文章,寫得也是含糊不清。這里附上官方文檔:
    https://docs.unity3d.com/Manual/UIBasicLayout.html
    其實,很好理解,恰如其名:錨點就是固定相對位置不動的點,如果父節(jié)點(屏幕)產(chǎn)生尺度縮放,子節(jié)點能保證與anchor 的距離保持不變,以此保證適配不同的屏幕;軸點就是旋轉中心,旋轉以此為中心而非幾何中心。
    這篇中文博客講解還行:https://blog.csdn.net/duotemplar/article/details/76644035,可以用于輔助理解。

結束語

UI 先簡單了解一下,具體到要用到某塊知識的時候再具體學習一下。其實,由于主要處理3D物體,Unity 開發(fā)中可能沒有基于界面的應用那么依賴UI,更多的是通過設置UI 的屬性來設置功能性的效果。廣義上講,整個場景其實就是一個巨大的UI(User Interface)。

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容