你好,我是跟着大智学Unity的萌新,我叫小新,这是我本周的学习总结报告哦。
从这周开始了Timeline的学习,开始学之前:“什么东西?学他干嘛?我会动画系统就行了。”学了之后:“真香”。
Timeline能简化很多需要按时间顺序执行的动画的问题,而且有强大的扩展性,相比我以前用代码去处理那些动画来说,不知道优雅了多少倍。
今天的周总结呢,我来总结一下Timeline窗口中的各个功能。
Timeline窗口
先打开Timeline窗口:菜单栏Windows > Sequencing > Timeline。
如果当前选中的物体上有Timeline实例,那窗口中就会显示Timeline中的内容。并且绑定的GameObject也会显示出来。
如果当前没有选中物体,会显示如下界面,告诉你创建Timeline首先你得选中一个GameObject:
如果选中了物体,但是物体上没有Timeline实例,那在界面上会显示一个按钮,你可以用来创建一个新的Timeline。
如果在工程中直接选中了Timeline资产,在Timeline窗口中会显示轨道和剪辑(clips),但是不会显示绑定的GameObject(因为实例才能绑定)。并且Timeline的播放控件也被禁用了,也不显示时间轴。
Timeline选择器
可以使用Timeline选择器来选择场景中的Timeline实例,如下图右边的红框内。每个下拉菜单都代表了一个Timeline资产的名称和对应实例的GameObject。
上图左边的Preview按钮选中时,可以在场景中预览Timeline。不选中时不预览。
Timeline播放控制
Timeline窗口的左上角有一排按钮,可以用来控制Timeline时间轴的位置,控制Timeline预览时的播放。
移动到起始位置按钮
点击这个按钮可以将时间轴移动到最开始的位置。快捷键是Shift
+,
。注意需要输入法在英文状态下。
移动到前一帧按钮
将时间轴移动到前一帧。快捷键是,
。注意需要输入法在英文状态下。
播放按钮
点击播放按钮后,会播放Timeline,可以在场景中预览动画效果。快捷键是空格
。进入播放模式后:
- 从当前时间轴所在的位置开始播放,直到最后。如果范围播放按钮启用的话,播放会限定在指定的时间区域内。
- 时间轴播放时会跟随移动,时间轴的区域会显示当前的时间或者帧数,取决于Timeline的设置。
- 再次点击播放按钮可以暂停播放,也可以按
空格
键。 - 当播放到尽头时,Playable Director组件上面的Wrap Mode属性决定了Timeline会保持最后一帧(Hold)、从头重复播放(Loop)还是什么都不做(None)。
移动到下一帧按钮
点击后移动到下一帧,快捷键是英文句号.
移动到最后一帧按钮
点击后移到Timeline的最后一帧,快捷键是Shift
+.
(注意在英文输入法下)
范围播放按钮
启用范围播放按钮后,可以在指定范围内预览播放。注意只能在Timeline窗口中预览时生效,在运行模式下会忽略范围设置。
时间轴上会显示开始和结束的位置,可以拖动开始或结束的小图标来修改范围。
在范围播放模式下,可以在Timeline设置中设置播放一次还是循环播放。如下图:
时间轴
Timeline窗口中的时间轴显示了当前预览的位置。时间轴上显示了当前的帧数或者时间。此外,滚动条上也有一个小的白竖线,代表了时间轴的位置。如下图所示:
在时间轴上点击,可以快速跳转到特定的事件。你也可以在位置输入框中输入具体的帧数或者事件,然后按回车键跳转,如上图左上角那个红框。
在本地和全局时间轴之间切换
这个功能主要用在嵌套Timeline中。Global/Local按钮可以切换子Timeline的时间轴显示。
如何创建子Timeline之前已经讲过,稍微复习一下。将一个有Timeline实例的GameObject拖到另外一个Timeline实例的Clip区域中,就可以创建一个子Timeline。如下图所示:
如果想编辑子Timeline,可以双击上图红色箭头的Clip。Timeline窗口会切换到嵌套的子Timeline。在Timeline窗口上方的面包屑导航中可以看到是否打开了嵌套Timeline。
当按钮为Local时,时间轴从0开始。按钮位置如上图箭头所指的位置。
当按钮为Global时,时间轴会从子Timeline在父Timeline开始的位置显示。比如子Timeline的Control clip是从70帧开始的,那时间轴上的开始位置就会显示70。如下图所示:
洪流学堂公众号回复timeline
获取专题教程。