NGUI:通過改變UV的位置,讓圖片動起來

NGUI,通過改變UV的位置,讓圖片滾動顯示,就是遊戲中移動的背景。

工具/原料

Unity3D
NGUI

方法/步驟

打開Unity3D,導入NGUI插件,我這裡用的是3.7.4的版本,如果需要的話,可以在下面的網盤下載:

http://pan.baidu.com/s/1rYgNG

首先改變圖片的類型,將Texture Type設為Texture,然後把Wrap Mode設為Repeat,單擊Apply。

打開NGUI->Open->Widget Wizard (Legacy)

Template選擇Texture,並單擊Add To創建UITexture。

找到剛剛創建的UITexture,設置UV Rectangle。

把W改小點,然後通過改變X可以實現圖片橫向移動效果。

可以添加腳本,用腳本動態設置uvRect,開實現動畫效果。

當然,為了使圖片的長寬比一致,你可以把圖片的寬度也縮小0.3

創建一個叫TextureMove的腳本,掛在創建的UITexture對象上。

腳本內容:

using UnityEngine;

using System.Collections;

public class TextureMove : MonoBehaviour

{

public UITexture player2bg;

private float offset_x = 0f;

void Update ()

{

offset_x += Time.deltaTime * 0.1f;

player2bg.GetComponent<UITexture> ().uvRect = new Rect (offset_x, 0, 0.3f, 1.0f);

}

}

最後運行,看效果,看看圖片是否開始運動了?代碼會不停的改變UV的X來使圖片有右移動的效果。

注意事項

記得改變圖片的類型,將Texture Type設為Texture,然後把Wrap Mode設為Repeat

本文內容整理自網絡, 文中所有觀點看法不代表淘大白的立場