共计 2722 个字符,预计需要花费 7 分钟才能阅读完成。
时间轴控制器
Timeline 控制器对象允许在事件工作表中控制时间线。
标记
与补间非常相似,当使用其中一个“播放”操作播放时间线时,可以选择性地标记时间线。标签可用于以后控制时间线(或共享相同标签的多个时间线)以及其他一些操作、条件或表达式。
设置要播放的实例
在最简单的情况下,时间线将影响用于在编辑器中创建时间线的实例。使用“设置实例”操作,可以使用与编辑器中使用的实例不同的实例。以下是一些简短的示例,以帮助说明此操作的工作原理。
示例 1
在下面的示例中,时间轴插件 Play 操作在启动时单独使用。这将播放时间线,影响编辑器中用于创建时间线的实例。时间线被标记为“新时间线”。
示例 2
在此示例中,时间轴插件 Play 操作与系统插件 Create Object 操作和时间轴插件 Set Instance 操作一起使用。这将播放影响新创建实例的时间线。新实例将在 ID 为“a-track-id”的轨道中使用,时间轴标记为“new-timeline”。
示例 3
此示例与上一个示例类似,但不是从头开始创建新实例,而是使用碰撞事件选取的实例。
关于拣选
在一个或多个“设置实例”操作之后使用“播放”操作时,可能会有一个或多个类似的时间线开始播放。这将取决于每个给定对象类型的当前选取的实例数量。
示例 4
在下面的示例中,将为每组实例播放时间线。
这是编辑器中时间线的预览。它有两个不同的轨道和占位符实例。
使用我们指定的“设置实例”操作,在布局开始时为每组选取的实例播放时间线。
最后,布局的预览显示,创建了两个不同的时间线,以适应在布局开始时发现的四个实例。
省略曲目 ID
在几种情况下,可以使用轨道的轨道 ID 属性忽略,也可以使用“设置实例”操作的轨道 ID 参数省略。
只有一条轨道的时间线
在这种情况下,可以不使用轨道 ID,因为只有一个实例,因此无需做出任何选择。在时间轴轨迹和“设置实例”操作中,轨道 ID 必须为空。
将替换其所有实例的时间线
如果需要使用“设置实例”操作替换时间线的所有实例,则可以跳过对每个轨道和每次调用“设置实例”时使用轨道 ID。如果时间轴中的每个轨道都有一个“设置实例”操作,则实例将按照它们在时间轴中的显示顺序进行替换。
下面的图像显示了在这种情况下时间轴及其属性的外观。
模板时间线
First Instance 属性 二次实例属性
事件
在这种特殊情况下,章鱼精灵用于第一个轨道,而 toster 精灵用于第二个轨道。由于未使用轨道 ID,因此假定顺序与编辑器中定义的顺序相同。
时间轴控制器条件
是任何玩法
如果正在播放任何时间线,则为 true。
正在播放
如果正在播放指定的时间线,则为 True,由其标签给出。
是否有任何暂停
如果任何时间线已暂停,则为 True。
已暂停
如果指定的时间线已暂停,则为 true,由其标记给出。
开始
在时间线开始播放时触发,由其标签给出。
在任何开始
在任何时间线开始播放时触发。
完成后
在时间轴完成播放时触发,由其标签给出。
在任何成品上
在任何时间线完成播放时触发。
在达到关键帧时
在播放过程中达到具有特定标签的主关键帧时触发。关键帧可以通过它是否匹配任何给定标签,或者它是否具有所有给定标签来识别。用空格分隔标签。
在达到的任何关键帧上
在播放过程中达到任何主关键帧时触发。KeyframeTags 表达式具有关键帧的 Tags 属性的字符串。
按时设置
当使用“设置时间”操作设置时间线的时间时触发。
时间轴控制器操作
玩
开始播放时间线,并带有用于标识此播放的标签。
播放全部
播放布局中的所有时间线。
暂停
按时间线的标签暂停时间线。暂停的时间线随后可以恢复。
全部暂停
暂停所有当前播放的时间线。
恢复
通过其标签恢复暂停的时间线。
全部恢复
恢复所有暂停的时间线。
停
停止时间线并将其重置为其初始状态。
全部停止
停止所有时间线,将它们全部重置为初始状态。
设定时间
设置时间轴的当前播放时间(以秒为单位)。注:您还可以将带有关键帧标记的字符串用于 Time 参数,在这种情况下,时间将设置为该关键帧的位置。如果时间线在设置时间时正在播放,则播放将停止。
设置播放速率
设置时间线的播放速率。1 为常速,0.5 为半速,以此类推。负数将反向播放。
设置实例
设置用于下次时间线播放的实例。实例的类型可以与编辑器中使用的实例不同。实例将设置为具有相应轨道 ID 的轨道。轨道 ID 也可以留空,在这种情况下,它使用时间轴中的第一个轨道。它也可以与空 ID 一起重复使用,以保持按顺序设置时间线中的曲目。当播放时间线时,它将影响此实例,而不是编辑器中使用的实例。播放时间线时,可以使用唯一标签来控制播放。
时间轴控制器表达式
时间(nameOrTags)
按名称或标签检索第一个匹配时间线的当前时间。
进度(nameOrTags)
按名称或标签检索第一个匹配时间线的进度,返回 [0,1] 范围内的值。
总计时间(nameOrTags)
按名称或标签排列的第一个匹配时间线的总时间。
关键帧标签
在“已到达关键帧”或“已达到任何关键帧”触发器中,包含已到达关键帧的 Tags 属性的字符串。
时间轴名称
在触发器中,包含相关时间线名称的字符串。
Timeline 标签
在触发器中,带有相关时间线标记的字符串。
值(timelineNameOrTags,valueTrackNameOrId)
通过指定时间线名称或标签以及值跟踪名称或跟踪 ID 来检索值跟踪的值。如果未找到匹配的值跟踪,则表达式返回 0。
ease(easeName,value)
返回 0-1 范围内给定值的 ease 函数的结果。易用名称可以是内置易用易,也可以是项目中自定义易用的名称。下面列出了内置缓动的名称。
内置易用名称
这些是可与 TimelineController Ease 表达式一起使用的内置 ease 函数的名称。
"linear"
"in-sine" "out-sine" "in-out-sine"
"in-elastic" "out-elastic" "in-out-elastic"
"in-back" "out-back" "in-out-back"
"in-bounce" "out-bounce" "in-out-bounce"
"in-cubic" "out-cubic" "in-out-cubic"
"in-quadratic" "out-quadratic" "in-out-quadratic"
"in-quartic" "out-quartic" "in-out-quartic"
"in-quintic" "out-quintic" "in-out-quintic"
"in-circular" "out-circular" "in-out-circular"
"in-exponential" "out-exponential" "in-out-exponential"