介绍
The Unity Timeline is a feature that allows you to visually edit music, play animations, show/hide objects, control particles, etc. along the time axis.
Unity的Timeline,可以根据时间轴来进行可视化的编辑音乐、动画等资源,有点类似于一个可播放内容的集成中心。Timeline经常用于制作游戏里的过场动画(CutScene)。对于过场动画而言,一般会涉及到很多东西的播放,比如音频的播放、各个角色播放各自的动画、摄像机的位移动画等,这些不同的播放对象,各自占据一个轨道,如下图所示,是一个Timeline的编辑窗口,Timeline由多个可以播放的Track组成:
Track Types
这里的track一共有五种主要的类型,基本每个Track都会与一个场景里的GameObject联系到一起:
- Activation Track: 控制物体的显隐的轨道
- Animation Track:动画播放轨道,本质上是控制目标物体的Transform的改变
- Audio Track:音频轨道
- Control Track:Controls objects, etc.
- Playable Track:通过脚本控制的自定义的Track
上面提供的图里,就是有一个音频轨道,和三个显隐轨道
Timeline Asset和Timeline Instance
Timeline Asset
一个Timeline资源,可以认为由多个Track组成。其后缀为.playable,代表可以播放的资源,可以在Project里右键创建相关资源,如下图所示:
双击资源,可以打开对应的编辑窗口,如下图所示:
Timeline Instance
Timeline Instance可以认为是Assets创建出来的实例,类似于prefabs和instances之间的关系。但与prefabs不同的是,对于Timeline Instance的改动会直接应用到Timeline Asset上,不用像prefabs要点apply按钮。
关于Bindings
Timeline这个系统,感觉像是一个系统级别的Animator,它可以把自己内部记录的Track的播放信息,应用到对应的GameObject上,而具体一个Track,对应到哪个GameObject的哪个Property上,相关信息叫做Bindings。所以说,Track记录播放资源的引用,Scene记录GameObjects,而Bingdings记录对应的Connections。
例一:添加Activation Track控制Cube的显隐
- 首先,创建Timeline Asset
- 把创建的Asset拖拽到场景的Hierarchy里,场景里会出现一个New Timeline的对象,它挂载了一个叫Playable Director的东西,把它改名为New Timeline Instance,如下图所示:
- 当选中这个挂在了Playable Director组件的Game Object时,Timeline窗口会自动切换到对应的timeline,如下图所示,它展示的既是Timeline Asset的信息,也是Timeline Instance的信息:
- 在Scene里创建一个Cube,在选中刚刚的Timeline的情况下(也可以直接lock住窗口),把Cube拖进Timeline窗口的左边区域,然后选择Add Activation Track,如下图所示:
- 点击右上角的齿轮,把时间刻度从帧数换成秒
- 编辑这个Activation Clip,长度拖拽为3s,然后拖到该track的中间部分,如下图所示,这个蓝色区域应该是Timeline的区间,好像不可以编辑,应该是根据内部Track自行决定的吧:
- 播放就可以了,一开始Cube会消失,然后到对应的时间会显示3s,然后这个Timeline就播放完毕了
顺便提几个小操作:
- 滚轮调整横向Track
- Ctrl+滚轮调整纵向高度
- 按住Alt可以拖拽整个Track窗口
例二:添加Audio Track
- 给的链接里下一个音频文件,导入到Unity里
- 把这个文件拖进去Timeline窗口,会出现一个Audio Track
例三:添加Animation Track
- 场景创建Sphere,拖到里面,选择Animation Track,此时Sphere上面会自动增加一个Animator Component,如下图所示:
- 点击红色录制按钮,然后拖拽上面白色的playback head到指定帧,改变对应角色的property,如下图所示,跟Animation窗口里制作动画类似,改变以后,会添加代表关键帧的菱点,在Inspector上右键点击,选择Add Key也可以:
- 这里的动画Track还可以双击点进去,本质上就是调用了Unity的Animation窗口
- 编辑完,点击红色按钮退出编辑模式,就可以播放了
补充UI说明
Holder按钮
Timeline的Track有的是有一个代表曲线的icon的,可以点击,会出现对应的Curve窗口,如下图所示,这里音频都有Curve: