NGUI:UITexture

概觀:

UITexture是NGUI中最基礎的可繪製元件。他繼承了UIWidget所有的功能,並且加入了一個可見的元件—texture—這個元件可以延伸它的尺寸。

  • 你可以指定一個會被畫出來Texture (紋理),當你這樣做時,一個預設的材質會被建立出來,假如你不指定texture,會使用材質的texture作為替代。
  • 如果你想要的話,你可以指定你自己要的材質。即使是指定了材質,上面指定的Texture還是會替代掉材質的主要紋理。
  • 假如你不想要弄一個材質,你也可以只指定著色器來做為替代。
  • 你可以指定一個UV矩形,這個矩形能控制文裡的哪個部分會被畫出來,X與Y控制UV位移,而W與H控制UVs的寬度與高度(紋理的座標)。就像所有的紋理座標依樣,這些值通常都是0到1(0代表紋理的一邊,而1代表另外一邊)。UVs是依據左下方作為基準的,所以假如你想要畫出紋理的上面50%,你要指定UV矩形的值為(0,0.5,1,0.5) (維克:順序是X Y W H)。

選擇快捷(右鍵)選單中的"Make Pixel-Perfect"選項會讓UITexture認定為原始的大小,所以假如原始的紋理圖是300x200畫素,你的UITexture的寬度跟高度會被調整到它的實際大小。

新手提醒:

你可以在建立整個UI時都使用UITextures,然後再使用Atlas Maker把他們全部都加到atlas中。打開Atlas Make(NGUI -> Open -> Atlas Maker),選擇你的UI根目錄。按下Create按鈕。你所有的紋理圖都會被放到這個atlas中。然後會被Sprites 替代掉。

(維克:這功能很好用,不用事先把需要用的圖全部弄好後再合成atlas以後才能使用。話說NGUI現在Atlas Maker也還滿好用的,可以隨時新增sprites進去,不用再另外做。那為啥要多一個步驟去合成atlas而不直接留下UITextures就好呢?在類別文件中有提到,每一個UITextures都會進行一次繪圖呼叫,所以他其實只適合用來繪製背景圖或是暫時性的Widgets。我猜就是這個原因—他太耗資源了。在話說Unity在4.3版後也提供了自動打包成altas的功能,也相當的方便。)

類別文件:

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

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

 
 

  按個讚!~支持本站!~

FB推薦載入中