@作者 : SYFStrive
@博客首页 : HomePage
📌:个人社区(欢迎大佬们加入) 👉:社区链接🔗
📌:觉得文章不错可以点点关注 👉:专栏连接🔗
💃:程序员每天坚持锻炼💪
🔗:直接阅读文章
👉 Unity插件相关专栏(🔥)
目录
DOTween导入
DOT~Unity自身的扩展方法
Ⅰ DOT~Transform 相关扩展方法
通过DOT~Transform可以让我们在开发中快速、高效,完成关于Transform相关动画。
1、DOTween的简单应用
实现功能:简单实现移动 && 旋转 && 缩放
实现步骤:导入命名空间(using DG.Tweening;) 👉 使用DOTween
代码及详细说明如 👇
using UnityEngine;
using DG.Tweening;
public class DOTween01 : MonoBehaviour
{
private void Start()
{
移动到原点,移动三秒
//transform.DOMove(Vector3.one, 3);
单方向移动
//transform.
相对于局部
//transform.DOLocalMove(Vector3.one, 3);
//transform.DOLocalMoveX(5,3);
旋转的度数、旋转三秒
//transform.Rotate(new Vector3(50, 50, 50), 3);
//缩放三倍,使用时间三秒
transform.DOScale(new Vector3(3,3,20),3);
}
}
移动效果如 👇(旋转缩放类似)
2、Punch 扩展方法
代码及详细说明如 👇
#region Punch函数
//第一个参数 punch:表示方向及强度
//第二个参数 duration:表示动画持续时间
//第三个参数 vibrato:震动次数
//第四个参数 elascity: 这个值是0到1的
//当为0时,就是在起始点到目标点之间运动
//不为0时,会把你赋的值乘上一个参数,作为你运动方向反方向的点,物体在这个点和目标点之间运动
//移动旋转缩放都是类似的
transform.DOPunchPosition(new Vector3(0, 8, 0), 3f, 100, 0.1f);
transform.DOPunchRotation(new Vector3(0, 90, 0), 3, 1100, 0.1f);
transform.DOPunchScale(new Vector3(2, 2, 2), 2, 100, 0.1f);
#endregion
效果如 👇
3、Shake 扩展方法
代码及详细说明如 👇
#region Shake
//参数:持续时间,震动强度,震动频次,随机角度,淡出
// 震动:强度
// 震动:震动次数
// 随机性:随机角度
// 淡出:就是运动最后是否缓慢移动回到原本位置
//移动旋转缩放都是类似的
//transform.DOShakePosition(2, 0.5f, 60, 90);
//transform.DOShakeRotation(3);
//transform.DOShakeScale(3);
#endregion
效果如 👇
4、Blend 扩展方法
代码及详细说明如 👇
using UnityEngine;
using DG.Tweenin