//感觉leantween和dotween 相似,不用解释了
public GameObject Cube ;
public void 常用() { //物体本身大小 LeanTween.scale(Cube, new Vector3(0, 0, 0), 0.5f);//3个参数1.变换的物体,2变化的大小,3.时间 //物体旋转角度(自身角度) LeanTween.rotate(Cube, new Vector3(0, 0, 0), 0.5f); //相对于父物体的角度 LeanTween.rotateLocal(Cube, new Vector3(0, 0, 0), 0.5f); //物体位置移动(自身角度) LeanTween.move(Cube, new Vector3(0, 0, 0), 0.5f); //相对于父物体的位置移动 LeanTween.moveLocal(Cube, new Vector3(0, 0, 0), 0.5f); //颜色修改 LeanTween.color(Cube, new Color(0,0,0,0), 0.5f); //UI颜色修改 LeanTween.color(Cube.GetComponent(), new Color(0, 0, 0, 0), 0.5f);
//渐渐显示出来:首先就是设置Aptha到0,值是0--1 Cube .DOFade(1,2); }
// 上面是我常用的,这个有关于test的,下面曾使用api的源自于:世界太疯狂
using UnityEngine; using System.Collections; using UnityEngine.UI; using DG.Tweening; //加入头
public class TempDoTween : MonoBehaviour { public GameObject m_image;
public Text m_text;
public Camera m_camera;
private bool isMoveOver;
void Awake() { }
void Start () { isMoveOver = false; //简单移动,每次调用Do就创建一个Tweener,所以最好不要每次都创建 Tweener tweener = m_image.transform.DOLocalMove (new Vector3(100,200,0),2); //设置不自动销毁 tweener.SetAutoKill (false); //设置动作曲线 tweener.SetEase (Ease.InBounce); //回调 tweener.OnComplete (MoveCallback); //挂起动作 tweener.Pause ();
//文本(文字一个个显示出来) // m_text.text = ""; // m_text.DOText ("字一个个显示出来",2).OnComplete(delegate{ // //颜色变化 // m_text.DOColor(Color.red,2); // }); //可以显示富文本查看API //渐渐显示出来:首先就是设置Aptha到0,值是0--1 m_text.DOFade(1,2);
//队列 // Sequence mySequence = DOTween.Sequence(); // mySequence.Append (); // mySequence.AppendInterval (); // mySequence.AppendCallback ();
//通过ID控制得到动作
//直接在组件上添加DoTweenAnimation脚本就是可视化的动画组件,和上面一样用法 //路径编辑DoPath -->添加这个组件可以编辑路径 shit+ctrl,注意点击屏幕添加的店是与摄像机垂直,可以对路径做圆滑设置path type }
public void ClickBtn() { //播放身上的动作,注意播放完成就销毁了必须SetAutoKill(false) // if (isMoveOver) { // //m_image.transform.DOPlay (); // m_image.transform.DOPlayForward (); //向前播放 // isMoveOver = false; // } else { // m_image.transform.DOPlayBackwards (); //会播放和DOPlayForward成对调用 // isMoveOver = true; // } // m_camera.DOShakePosition (1,new Vector3(4,4,0)); } public void MoveCallback() { Debug.Log ("MoveCallBack"); }
}
原文链接:https://blog.csdn.net/qq_35373690/article/details/86901002
物体本身大小 LeanTween.scale(Cube, new Vector3(0, 0, 0), 0.5f);//3个参数1.变换的物体,2变化的大小,3.时间
//物体旋转角度(自身角度)LeanTween.rotate(Cube, new Vector3(0, 0, 0), 0.5f);
//相对于父物体的角度 LeanTween.rotateLocal(Cube, new Vector3(0, 0, 0), 0.5f);
物体位置移动(自身角度)LeanTween.move(Cube, new Vector3(0, 0, 0), 0.5f);
setEase() //设置动画动画类型:LeanTweenType
自定义动画类型
public AnimationCurve myCur; void MoveCube() { LeanTween.move(cube.gameObejct, new Vector3(0f,10f,0f),0.5f).setEase(myCur); //Unity中设置关键帧 }
LeanTween.move(cube.gameObejct, new Vector3(0f,10f,0f),0.5f).setPingPong();设置委托:setOnComplete()
using... public class Test:Monobehaviout{ public AnimationCurve myCur; void MoveCube(Active active) { LeanTween.move(cube.gameObejct, new Vector3(0f,10f,0f),0.5f) .setEase(myCur) //Unity中设置关键帧 .setOnComplete( (delegate(){ active(); }) //委托 .setLoopPingPong(); //来回循环; } void Start() { MoveCube(RandomColor); } void RandomColor() { this.gameObject.GetComponent().material.color= new Color(UnityEngine.Random.Range(0f,1f), UnityEngine.Random.Range(0f,1f), UnityEngine.Random.Range(0f,1f)) //改变颜色 }
监听数值变化,当达到一定值的时候可以让它触发个事件
//相对于父物体的位置移动 LeanTween.moveLocal(Cube, new Vector3(0, 0, 0), 0.5f); //颜色修改 LeanTween.color(Cube, new Color(0,0,0,0), 0.5f); //UI颜色修改 LeanTween.color(Cube.GetComponent(), new Color(0, 0, 0, 0), 0.5f);
//渐渐显示出来:首先就是设置Aptha到0,值是0--1 Cube .DOFade(1,2); //取消
LeanTween.cancelAll()
原文链接:https://blog.csdn.net/qq_35373690/article/details/86901002
LeanTween - BZ易风 - 博客园