一、下载安装DOTween插件,下载地址:DOTween - Asset Store (unity.com)
使用 Free免费版本即可,导入成功后,Project视图中会出现 DOTween 文件夹
二、使用案例
需求1:控制材质球中的某个属性值,实现美术需求的忽明忽暗效果,Shader由美术提供
C#中使用 Sequence 缓动动画序列,让多个动画依次播放,实现动画组合
var render = transform.GetComponent<MeshRenderer>();
Sequence sequence = DOTween.Sequence();
sequence.Append(render.material.DOFloat(1.0f, "_click", 0.5f));
sequence.Append(render.material.DOFloat(0.0f, "_click", 0.5f));
sequence.Play();
Shader部分
需求2:控制 Camera 旋转并移动到指定的坐标位置
float duration = 1.0f;
//位置更新
camera.transform.DOLocalMove(Vector3.zero, duration);
//旋转角度更新
camera.transform.DOLocalRotate(new Vector3(0, 60, 0), duration);
Sequence sequence = DOTween.Sequence();
//添加时间间隔,在镜头移动到0.5f时,进行另外的操作
sequence.AppendInterval(duration - 0.5f);
sequence.OnComplete(() =>
{
Debug.LogError("进入子界面.......");
});
//按时间插入动画
sequence.Insert(0, transform.DOMove(Vector3.one, duration));
由此可见,序列动画,也可以实现多个动画同时播放