unity插件Dotween的使用方法

来源:互联网 发布:58网络销售工作怎么样 编辑:程序博客网 时间:2024/06/05 10:22

1.对变量做一个动画(通过插值的方式去修改一个值得变化)

 DOTween.To(()=>myValue,x=>myValue=x,new Vector3(10,10,10),2);

2.控制Cube和UI面板的动画

public class test_ani : MonoBehaviour {    public Vector3 myValue = new Vector3(0,0,0);    public Transform cubeTransform;    public RectTransform taskPanelTransform;    public float myValue2 = 0;    // Use this for initialization    void Start () {        //对变量做一个动画        // lambda表达式        DOTween.To(()=>myValue,x=>myValue=x,new Vector3(10,10,10),2);    }    // Update is called once per frame    void Update () {        // cubeTransform.position = myValue;        taskPanelTransform.localPosition = myValue;    }}

3.控制动画的快捷播放

public class mybutton : MonoBehaviour {    public RectTransform panelTransfrom;    public void OnClick()    {        panelTransfrom.DOLocalMove(new Vector3(0,0,0),1);//从当前位置运动到(0,0,0)位置时间为1    }    // Use this for initialization    void Start () {    }    // Update is called once per frame    void Update () {    }} 

4.动画的前进与后退

public class mybutton : MonoBehaviour {    private bool isIn = false;    public RectTransform panelTransfrom;    // Use this for initialization    void Start()    {        //动画会被销毁        Tweener tweemer = panelTransfrom.DOLocalMove(new Vector3(0, 0, 0), 0.3f);//从当前位置运动到(0,0,0)位置时间为1                                                                                 //Tweener对象保存这个动画的信息,每次调用do类型的方法都会创建一个tweem对象,这个对象是dotween来管理        tweemer.SetAutoKill(false);        tweemer.Pause();    }    public void OnClick()    {        if(isIn==false)        {            //播放物体自身动画            panelTransfrom.DOPlayForward();//前进播放            isIn = true;        }        else        {            //让panel离开屏幕              panelTransfrom.DOPlayBackwards();//倒放            isIn = false;        }    }    // Update is called once per frame    void Update () {    }} 

5.FromTween

public class FromTween : MonoBehaviour {    // Use this for initialization    void Start () {        //由当前位置        transform.DOMoveX(5,1).From();        //默认是从当前位置运行到目标位置加上From方法以后表示从目标位置移动到当前位置      //  transform.DOMoveX(5, 1).From(true);    }    // Update is called once per frame    void Update () {    }}

6.动画的属性设置(动画曲线和事件函数)

public class MyPanel : MonoBehaviour {    // Use this for initialization    void Start () {        Tweener tweener=transform.DOLocalMoveX(0,2);        tweener.SetEase(Ease.OutBounce);        tweener.OnComplete(OnTweenComplete);    }    // Update is called once per frame    void Update () {    }    void OnTweenComplete()    {        Debug.Log("动画播放完了");    }}

7.设置动画的生命 和生命周期函数

如果动画在播放的时候被销毁,会报错,中止游戏运行,设置safemode。

OnComplete(TweenCallback callback)

OnKill(TweenCallback callback)

OnPlay(TweemCallback callback)

OnPause(TweenCallback callback)

OnRewind(TweenCallback callback)

OnStart(TweenCallback callback)

OnStepComplete(TweenCallback callback)

OnUpdate(TweenCallback callback)

OnWaypointChange(TweenCallback callback)

8.文字显示特效

public class text_ani : MonoBehaviour {    private Text text;    // Use this for initialization    void Start () {        text = this.GetComponent<Text>();        text.DOText("接下来,我们进入第二篇章",2);    }     // Update is called once per frame    void Update () {    }}

9.震屏效果

transform.DOShakePosition(1);//随机向周围移动

10.透明度和颜色变化

调用API,用到再去学习

11.

原创粉丝点击