unity3d中使用Ngui实现幻灯片效果

首先添加一个Simple Texture用来当做幻灯片的对象。
 
 
新建一个材质,着色器选择如图
 
在Simple Texture上选择我们刚刚建立的材质
 
最后上代码
using UnityEngine;
using System.Collections;

public class SlideShow : MonoBehaviour
{

    public float waitTime;
    float tm;
    //TweenColor tc;
    bool isshow = false;
    TweenColor[] tcs;
    public string url;
    public int count;
    int index=0;
    void Start ()
    {
        this.gameObject.AddComponent<TweenColor> ();    
        this.gameObject.AddComponent<TweenColor> ();
        tcs = GetComponents<TweenColor> ();
        tcs [0].enabled = false;
        tcs [1].enabled = false;
        tcs [0].from = new Color (1, 1, 1, 1);
        tcs [0].to = new Color (1, 1, 1, 0);
        tcs [1].from = new Color (1, 1, 1, 0);
        tcs [1].to = new Color (1, 1, 1, 1);
        tcs [0].eventReceiver = this.gameObject;
        tcs [0].callWhenFinished = "endChange";
        tcs [0].duration = 1;
        tcs [1].duration = 1;
    }
    // Update is called once per frame
    void Update ()
    {
        tm += Time.deltaTime;
        if (tm > waitTime) {
            if(index<count-1)
            {
                index++;
            }
            else
            {
                index=0;
            }
            startChange ();
            tm = 0;
        }
    }

    void startChange ()
    {

        tcs [0].Reset ();
        tcs [0].enabled = true;
        Debug.Log ("Start");        
    }

    void endChange ()
    {
        UITexture ut=GetComponent<UITexture>();
        ut.material.mainTexture=Resources.Load(url+index.ToString()) as Texture;
        tcs [1].Reset ();
        tcs [1].enabled = true;
    }
}
填写参数,完成!~
 





原文地址:https://www.cnblogs.com/leestar54/p/3013296.html