NGUI:UIPanel

概觀:

UIPanel是一個在其下方收集並管理widgets的元件。UIPanel負責使用widget的幾何圖來建立實際繪圖呼叫。沒有panel,就沒有東西能夠被畫出來,假如你熟悉Unity的話,你可以把UIPanel想成是一個渲染器。

所有的面板(panel)都有一個深度值(Depth value),這個值會影響到所有在面板內的widgets。假如你在建立一個複雜的UI,其中包含了數個視窗,通常最好是在每個視窗中都放一個UIPanel。面板的深度值比個別的widgets的深度值有更大的比重,所以說,確認你的面板不會有相同的深度值會是個好主意。

  • Alpha 屬性影響所有在面板下的widgets 。他是一個淡出整個視窗的好方法。
  • 假如你的UI受到光線的影響,確認點選Normals框。
  • 假入你在建立一個有許多幾何圖在裡面的可滾動面板,你可能會想點選Cull 項以減少三角繪圖的數量。注意,這樣做可能會實際降低效能。(視每次更新需要被檢查的widgets的可見度!)
  • 點選Static 框可以告訴NGUI在其內的widgets 將不預期被移動,藉以改善效能。NGUI 將不會檢查位置旋轉以及大小的改變。注意,這樣做意味著在執行期間移動widgets 是不會有任何效果的- -所以小心使用。
  • 假如你試著對由面板建立的繪圖呼叫進行除錯,Show All選項可能可以幫助你。這樣做能讓你看到所有由NGUI面板建立的繪圖呼叫,並且以他們被繪出的順序排列。每個繪圖呼叫都會顯示出詳細的資訊,包含了widgets造成的材質使用。甚至讓你選擇性的關閉繪圖呼叫,藉此幫助你判斷現在正在發生什麼事。

面板能夠依據你所選擇的尺寸自動地裁切子物件。要開啟裁切功能,只要選擇Clipping 下拉選單中的一個選項,然後就像你調整任何widget尺寸一樣,調整在Scene視窗中的紫色四邊形的尺寸。假如你繼續下去,你可以把你的面板變成滾動視窗(Scroll View),而且也能相當簡單地讓它變成可拖曳的。

然而要注意的是,裁切視窗不能是巢狀的。每個面板只能裁切他自己管理的子物件,而如果你有一個裁切面板在另外一個裡面,只有一個能夠面板能夠影響widgets。這個限制或許在未來會被移除。

新手提示:

一個運動鋼體會被自動加入到你的面板中,這是因為根據Unity,這將會在物理重力遊戲中大大的改善效能。移動靜態的碰撞器在unity中是非常昂貴的操作,但移動鋼體則不會。

類別文件:

http://tasharen.com/ngui/docs/class_u_i_panel.html

本頁面是翻譯官方網頁的文件:UIPanel

 
 

  按個讚!~支持本站!~

FB推薦載入中