DoTween Pro是一款untiy插件,是untiy中最好用的tween插件,实现脚本和视觉脚本的新功能,支持包括移动,淡出,颜色,旋转,缩放,打孔,摇动,文本,相机属性等,DoTween与其他动画插件相比,它的效率是最高,支持支持可视化编程。
1.DoTween中数值的曲线变化
数值从一个固定值变化到另一个固定值,变化速度先快后
1 | using System.Collections; |
能实现的功能:
1.游戏物体的移动
2.UI面板的移动
UI面板移动代码优化:
1 | public RectTransform panelTransform; |
3.动画的倒放
1 | using System.Collections; |
实现:
2.常规设置
1.设置动画播放曲线
1 | Tween tweener = transform.DOLocalMoveX(0, 5); |
不同的曲线类型(缓动函数): 2.设置动画的循环次数
1 | tweener.SetLoops(1); |
3.设置动画事件函数
1 | tweener.OnComplete(OnTweenComplete); |
动画事件函数有:
OnComplete(TweenCallback callback) 动画播放完成时调用
OnKill(TweenCallback callback) 动画被销毁时调用
OnPlay(TweenCallback callback) 动画播放时调用(可被调用多次)
OnPause(TweenCallback callback) 动画暂停时被调用
OnRewind(TweenCallback callback) 动画被重置时调用
OnStart(TweenCallback callback) 动画刚开始播放时被调用(只会被调用一次)
OnStepComplete(TweenCallback callback) 动画完成一个循环时被调用
OnUpdate(TweenCallback callback) 动画被更新时被调用
OnWaypointChange(TweenCallback
文字的播放
1 | private Text text; |
演示:
摄像机的震动(增强打击效果)
1 | void Start () { |
效果:
颜色的渐变与透明度渐变
1 | text = GetComponent<Text>(); |
显示:
3.DoTween的可视化编辑
4.DoTweend的路径编辑器
1.基本介绍:
主要功能就是:
a.路径点的创建和删除。
b.路径的可视化。
c.路径动画的控制。
2.Path路径动画的创建:
静态创建:
在需要添加Path动画的物体上挂上 DOTweenPath 组件.
a. Shift + Ctrl : 添加路径点
b. Shift + Alt : 删除路径点
动态创建:
transform.DOPath(vector3[] waypoints,float duration);
a. waypoints : 路径点
b. duration : 动画时间
c. pathtype : 路径类型,路径类型分为线性或者利用CatmullRom插值算法形成的曲线。(默认参数)
d. pathmode : 路径模式,主要是用于对物体三个方向上的旋转的限制。(默认参数)
e. resolution :CatmullRom算法的参数,数值越大曲线越精细,一般5足以,默认为10。(默认参数)
f. gizmoColor :辅助线的颜色,只会在动画Running时在Secene面板上可见。 (默认参数)
3.Path路径动画的属性:
一般动画有的属性Path都有,几个独特的属性:
a. Ease :动画类型
b. ClosePath :封闭路径,如果勾选此属性路径将会形成一个封闭环。
c. LocalMovement :局部移动,如果勾选此属性将会按照局部坐标移动。
d. Orientation :运动朝向,分为ToPath朝向路线LookAtTran朝向Tran和LookatPos朝向点.
e. LookAhead :朝向前瞻性,数值越大朝向约向靠近更前方的点。
f. Relative :点相对,表示路径点是否与物体为相对的。
4.Path路径动画的相关方法:
一般动画有的方法Path都有,几个独特的方法:
a. SetOptions(bool closePath,AxisConstraint lockPos,AxisConstraint lockRota);
i.是否为封闭路径
ii.路径上三个维度的位置限制,给的参数为AxisConstraint.X,那么路径在X上位置不会变化。
ii.路径上三个维度的方向限制,给的参数为AxisConstraint.X,那么路径在X上方向不会变化。
b. SetLookAt() 设置Path动画 Orientation 属性的。
c. PathLength() 返回路径长度。
d. PathGetPoint(float pathPecentage); 参数为0~1小数,返回路径上小数百分比对应的点。
e. PathGetDrawPoint(float pathPecentage);参数为返回构成路径点的个数。
注意d.e两个方法,如果返回为Vector3.zero或者null.表示路径无效、路径尚未初始化或者这不是一个路径动画.封闭路径