使用NGUI建立的Camera參數爲Simple 2D的UI,會在遊戲的場景中生成1個名爲UI Root(2D)的遊戲對象,且此對象下還包含了3個其它對象:Camera、Anchor和Panel,如圖1-4所示。本小節會分別介紹這4個遊戲對象本文選自NGUI從入門到實戰。ios
圖1-4 在Hierarchy視圖裏查看新建立的UI遊戲對象spa
此遊戲對象將負責控制UI控件的大小。在Hierarchy視圖裏選中UI Root(2D)對象,而後在Inspector視圖裏查看此遊戲對象上的組件,如圖1-5所示。orm
圖1-5 在Inspector視圖裏查看UI Root(2D)對象的各組件對象
Transform組件在Unity的遊戲對象上很常見,或者說全部的遊戲對象上都有此組件,很日常就不作介紹了。而UIRoot(Script)組件是此遊戲對象所特有的,其屬性和介紹以下本文選自NGUI從入門到實戰:遊戲
q Scaling Style:能夠用於修改UI控件的縮放樣式。ip
提示:此屬性下有3個可選的參數:PixelPerfect、FixedSize和FixedSizeOnMobiles。it
² PixelPerfect,將確保UI控件不管在何種遊戲分辨率中,始終保持指定的像素大小。例如,指定像素大小爲300×200,那麼遊戲在320×240的分辨率下,此UI控件就會很大,而在1920×1080的分辨率下,此UI控件就會很小。io
² FixedSize,將確保UI控件不管在何種遊戲分辨率中,始終於遊戲視圖保持指定的大小比例。即UI控件會隨着遊戲視圖的縮放,而成比例的縮放。入門
² FixedSizeOnMobiles,將確保UI控件,在移動設備上的時候,保持指定的大小比例;在其它設備上時,保持指定的像素大小。form
q Manual Height:當UI控件的縮放樣式爲FixedSize時,此屬性就決定了UI控件是否須要成比例的縮放。例如,當遊戲視圖的高度大於這個屬性設置的值時,UI控件會成比例的放大;當高度小於這個值時,UI控件會成比例的縮小;
提示:UI控件縮放時,控件的寬高比是恆定的。
q Minimum Height:當UI控件的縮放樣式爲PixelPerfect時,此屬性就指定了遊戲視圖的最小高度,當遊戲視圖的高度值小於這個屬性的設置值時,UI控件就會主動成比例的縮小;
q Maximum Height:當UI控件的縮放樣式爲PixelPerfect時,此屬性就指定了遊戲視圖的最大高度,當遊戲視圖的高度值大於這個屬性的設置值時,UI控件就會主動成比例的放大;
提示:遊戲視圖的分辨率比例多種多樣,而UI控件僅僅以高度爲依據,決定是否縮放控件,所以就有可能致使在不一樣的遊戲分辨率比例下,出現UI控件可能會被視圖「裁剪」的狀況。爲了應對這一狀況,建議讀者使用兩種方法來避免。
方法一:將UI控制設置爲正方形,即UI控件的寬度和高度相同;
方法二:爲遊戲視圖指定遊戲時的分辨率比例。指定的方法是,在Unity中單擊Edit|Project Settings|Player命令,會彈出名爲PlayerSettings的對話框,如圖1-6所示。
圖1-6 PlayerSettings對話框
展開PlayerSettings對話框裏的Resolution and Presentation屬性組,設置其中的Supported Aspect Ratios屬性,如圖1-7所示。
圖1-7 Resolution and Presentation屬性組
Unity默認支持的遊戲視圖分別率有不少,如4:3、16:10等等,若是但願遊戲僅能在分別率4:3下運行,就取消對其它分辨率的複選本文選自NGUI從入門到實戰。