NGUI:UIRoot
- 詳細內容
- 分類:Unity
- 發佈:2013-11-26, 週二 20:59
- 點擊數:2078
概觀:
UIRoot永遠都待在NGUI UI階層的最底部。(或者是說最上面,取決於你怎麼看他。)
它是負責讓UI的大小可以比較好管理一點。因為widget 座標都是以畫素指定,一個800x400的widget就有800x400個單位,這真的很大。UIRoot會依據螢幕高度的倒數來縮小他自己,這可以讓widgets保持小尺寸,並且容易使用。
UIRoot有幾個縮放類型讓你使用,最明顯的一個就是PixelPerfect,在這模式向,你的UI總是使用畫素為單位,一個300x200的widget就會在螢幕上花掉300x200的畫素。這代表著你的UI在低分辨率的裝置上,你的widgets看起來會比較大。而在一個高分辨率的裝置上,看起來會比較小。而它優點是,這個設定會讓你的UI看起來盡量的明確。
FixedSize 模式則完全相反,當UI設定在這個模式下時,你的畫面總是會保持對NGUI而言相同的大小。而無視於實際的螢幕大小。這意味著假如一個300x200的widget在1920x1080解析度螢幕上佔了的25%的畫面,那當你把解析度降到1280x720時,它依然會佔據25%的畫面。假如你不想要擔心你的UI在不同螢幕大小看起來不一樣,又不太關心要讓它盡量的明確,你可以選擇這模式。當你選擇這模式時,不要忘記設定Manual Height (手動高度)。
FixedSizeOnMobile 設定是2種模式的結合,當在桌面裝置建立軟體時,它的行為會像是設定"PixelPerfect"模式一樣。當在移動裝置平台時,它的表現會像是"FixedSize"模式一樣。
如果你沒有選擇Fixed Size選項,不要忘記設定Minimum 跟Maximum Height (最小與最大高度),這個值是用來保持你虛擬螢幕大小在一個合理的值。舉例來說,假如你的UI是設定成Pixel Perfect 模式,而最小高度是設成720,這情況下某些玩家試著要在800x600解析度下執行你的程式,UI的行為會像是設定成Fixed Size模式,而且手動高度設定成720一樣。
UIRoot總是會把自己縮放到2 / ScreenHeight,這裡的ScreenHeight是實際螢幕高度(在pixel perfect模式下),或是你指定的手動高度(在fixed size模式下)。這樣做讓繪出UI的攝影機能夠保持正投影的大小為1 。
假如你不需要UIRoot的自動調整大小功能,你可以直接移除這個元件。
類別文件:
http://tasharen.com/ngui/docs/class_u_i_root.html
本頁面是翻譯官方網頁的文件:UIRoot
按個讚!~支持本站!~