0.说明
原文转自https://www.jianshu.com/p/56b56d80fbc8 原作者:简书 生产力学院河南分院
基于Unity3D之TimeLine的讲解(一)
TimeLine官方文档
1. 关于TimeLine
TimeLine是Unity3D 2017版之后新添加的新组件.它将时间轴资产与场景中的GameObject关联,
建立关联后,为所选的GameObject创建一个时间轴实例.创建时间轴实例后,可以使用Playable Director组件中的属性来控制该实例.
简言之就是先创建好一个流程,然后再通过一个组件上的属性来控制这个流程的运行.
2. 创建Timeline资源和Timeline实例
如上图,选中需要操作的游戏物体,打开Timeline编辑器(菜单:Window > Timeline)这里我用的Unity版本是2018.3.9,TimeLine归于"Sequencing"标签页下.
红框内容翻译为: 为A创建新的时间表(TimeLine),为其添加Director组件(控制组件)和时间表资产(对应的流程)
1.点击Create. Unity会弹出一个对话框提示你将被创建的Timeline资源的名字和保存路径.你也可以修改要要保存的路径和文件名.
2.点击"保存".确认这个Timeline资源的名称和存储位置.
前面两步操作,Unity做了下列事情:
-
完成任保存Timeline资源到工程.如果你没有修改Timeline资源要保存的名字和位置,Timeline资源的默认命名将会使用被选中的GameObject的名字加上“Timeline”为后缀. 例如:选中的游戏物体的名字是“A”,那么默认保存在工程中的Assets文件夹下,名字叫做“ATimeline”.(一般我会新建一个文件夹,将TimeLine文件统一放在一处)
-
添加一个空的Animation Track到Timeline资源上
-
添加一个Playable Director组件到选中的GameObject上,并且设置把Playable的属性设置成Timeline资源(这样会创建Timeline实例).
-
在Playable Director的Bindings中,Animation track被设置为被选中的GameObject.由于Animation track还没有clip,因此被选中的GameObject将静止不动.
-
添加Animator组件到选中的GameObject上.Animator组件通过Timeline实例来驱动GameObject.
3. 录制一个简单动画
选中需要添加动画的物体,就可以开始录制动画了,你可以直接在Animation track里面录制动画。当你直接往一个空的Animation track录制动画的时候,你就创建了一个Infinite clip.
什么是Infinite clip呢?我们定义为通过Timeline的编辑器窗口录制的关键帧动画为Infinite动画。Infinite clip不能修改位置,裁剪,或者分离,这是因为Infinite clip覆盖了整个Animation track,没有确切的大小。Infinite clip简单翻译为 : 无限 剪辑,区别于Animation Clip(动画剪辑),后边会介绍他们的转化.