DoTween插件使用

  • unity中动画分为两类
  • 在3dmax之类的软件中制作的动画
  • 在unity环境中通过代码控制Transform的组件实现的动画
  • 通过代码控制的动画需求量也是很大的
  • DoTween 是一个现成的功能类,已经封装了大量的动画效果只需要调用它的方法,传递参数就可以实现很多代码动画效果

导入与设置

  • 直接导入资源包
  • 在Tools——Demigiant——DoTween Utility Panel 进行插件设置
  • 资源目录结构
    • Demigiant 插件的根目录【该插件的公司名】
      • Demilib 插件核心类库
      • DOTween 插件基础版本资源
      • DOTweenPro 插件专业版资源
      • DOTweenPro Examples 实例工程

组件

  • 在component组件栏里面有DoTween Animation 基础动画
  • DoTween Path 路径动画
  • 两个动画组件

使用DoTween

  • 在代码中使用DoTween时,导入对应的命名空间
  • using DG.Tweening
  • 注意DOTween 的前两个字母都是大写
  • 除了功能类以外,还会在Unity本来的功能组件类中注入DoTween 的控制方法
    ,一般是“DOXXX”

DoTween 元素动画

  • 模型动画
    • 模型移动动画 DOMove方法
    • 模型旋转动画 DORotate 方法
    • 模型缩放动画 DOScale 方法
  • UI动画
    • 图片颜色动画 DOColor 方法
    • 图片透明度动画 DOFade 方法
    • 图片缩放动画 DOScale 方法
  • 动画和哪个组件相关,就在哪个组件下面寻找以DO开头的方法
  • DOTween 属性设置
    • 这一组方法统一以Set开头,可在动画方法的后面,进行属性的设置,
    • SetLoops(设置循环次数)
    • DOTween事件回调 这一组方法以On开头,可以在动画方法后面,也可以在属性方法后面,OnComplete[当执行完事件后]

两种方式

  • 注入到Unity原有组件类的api方法,称为便捷方式
  • DOTween 的一组独立的功能类,DoTween工具类中的静态方法,用Lambda表达式传值的方式,来实现动画控制,称之为通用方式
  • DOTween.To(()=>myValue,x==>myValue=x,100,1)
    • DOTween.To() DOTween插件中功能类的一个静态方法
    • ()=>myValue 获取对象元素Lambda表达式
    • x=>myValue=x 赋值对象元素Lambda表达式
    • 100 最终的目标值
    • 1动画持续时间

两个组件

  • Animation组件对应于代码中的便捷方式和通用方式,一般直接用代码搞定,不会用Animation组件
  • Path组件在代码中也有对应,不过Path效果一般使用组件完成

Animation组件

  • Ease属性是动画曲线
  • Loops循环,有三种类型,普通模式,循环悠悠球模式,累加模式
  • To 指定一个Vector3,也可以指定一个Transform
  • 既可以在面板绑定事件,也可以在代码里面绑定事件
  • .OnStart(()=>Debug.Log("start")) 开始事件,执行一次
  • .OnPlay动画播放事件,执行一次,先开始,再播放
  • OnUpdate动画更新事件,在动画播放的过程中,持续执行N次
  • OnComplete动画播放完成事件,执行一次

Path组件

  • 游戏模型路径运动(塔防小怪行走路线,马路上的汽车运动)
  • 摄像机运动动画(建筑场景漫游,游戏过场动画)
  • 本质就是事先规划好一个路径,然后让游戏物体在该路径上运动
  • 路径创建
    • shift+Ctrl +鼠标左键单击 添加一个新的路径点
    • shift+Alt +鼠标左键点击,移除一个路径点
    • 鼠标左键点击,调整路径点位置

  • pathType 设置路径类型为弧度或者直线
  • Orientation 最常用的是ToPath 模型沿正方向移动,LookAhead 设置为0
  • 在摄像机漫游中很重要,需要沿路径一直看着前方
  • relative 路径相对于模型移动
  • showIndexs 显示路径点的位置索引
  • Waypoint 路径点集合

你可能感兴趣的:(DoTween插件使用)