动画
行为
行为是一条规则,每一帧都替你设定一个属性或图层:让一个数值来回摆动、让图层转向另一个图层、让图层贴在一条线上,或者让一条骨骼链拖在后面。你给它输入和参数,结果由编辑器计算,查看器和导出里完全一样。
什么是行为
行为有一个目标,也就是它设定的属性或图层;有它读取的输入,比如另一个图层的位置或一个滑块;还有自己的参数。打开时,它每一帧都设定目标:大多数替换目标自己的动画,少数(比如次级运动)叠加在上面。关掉它,目标又播放自己的关键帧。
行为属于合成。编辑器按输入的先后依赖来计算它们,所以一个行为可以读另一个的结果,比如让图层朝向一个正在摆动的图层。如果改动会让一个行为经由其他行为读到它自己设定的值,这次改动会被拒绝。
属性上的表达式 (在新标签页打开)读到的属性值,就是行为设定的结果,所以表达式可以在行为的基础上继续算。
每种行为都内置在编辑器里并带有版本号,项目保存每个行为时会记下它所属种类的版本和它的参数。行为里没有随机成分:无论直接跳到某一帧还是一路播放过去,那一帧都一样。
添加行为
选中它要设定的对象。设定属性的行为,先选中那个属性,在属性或时间轴里都可以;作用于整个图层的行为,选中图层。
展开属性里的行为组,它在图层设置下方。组的顶部为每个适合当前选择的行为各放一个按钮。不需要选择的表面、IK和物理世界收在各自的名字下面。
选择输入。需要读取别的东西的行为,比如二维朝向要朝向的图层,按钮上方有一个下拉列表。每个列表都选好后,按钮才能点。
点按钮。行为一步添加完成,它的卡片出现在下方,带着初始参数。比如周期摆动以属性当前的值为中心、振幅为 0,所以在你改参数之前什么都不会动。

- 给选中的属性添加行为。
- 行为卡片:勾选框可以关掉它。
- 它的一个参数。
- 只在合成的一段时间里起作用。
- 它在时间线里的那一行,写着起止帧。
行为卡片
每个行为在行为组里是一张卡片,名字下面是它的参数。无论选中哪个图层,组里都列出这个合成的全部行为。
- 打开与关闭。名字旁边的勾选框关掉行为但不删除它,目标回到自己的值和关键帧。
- 顺序与删除。箭头把卡片在列表里上移或下移,垃圾桶删除它。每次改动都是一步,可以撤销。
- 时间范围。周期摆动和二维朝向有使用时间范围:勾选后,行为从开始帧起作用,到结束帧(不含)为止。周期摆动还有源开始帧、源结束帧和循环源时间,用来选在这段时间里播放摆动的哪一段,以及是否循环。
- 烘焙。刚体和物理世界的卡片上有一个菱形按钮,把模拟变成关键帧(见烘焙为关键帧 (在新标签页打开))。其他行为始终是实时计算的规则。
- 改动无法完成时,组里会显示无法应用这个行为。,项目保持原样。
时间线里的行为
合成里有行为时,时间轴顶部会出现行为区,每个行为一行。一根横条标出它起作用的帧,关掉的行为显示为暗色。点它的名字或横条,播放头就跳到它开始的位置。
名字旁边的两个输入框设定它的起止帧,也就是给它一个时间范围。刚体和物理世界不接受时间范围:刚体随图层的入点加入、出点离开。
动作片段的关键帧以菱形显示在它的横条上,点一下就跳过去。
这个区域高度有限、单独滚动,所以行为再多(比如画组每个部件一个),也不会把图层挤出面板。
设定属性的行为
除了不需要选择的IK,这些行为都要先选中一个存放数值或点、可以做动画的属性才会出现。
- 周期摆动
- 让属性以中心值为中心、按振幅来回摆动,是一条从相位(度)开始、频率为频率(Hz)的正弦波。点类属性可以给每个轴各设振幅:
0, 40让图层上下浮动。整段摆动都必须在属性允许的取值范围内。 - 二维朝向
- 让一个图层转向另一个。选中它的旋转,选好朝向目标(另一个图层的位置),再点二维朝向。旋转为 0 时图层朝右,画面朝向别处时用朝向偏移(度)补上。两个图层都必须是 2D、没有父级。
- 动作片段
- 关键帧存在行为里,而不是属性上。它一开始有两个关键帧,分别在第一帧和最后一帧,都取属性当前的值;卡片里每个关键帧有一个数值框,时间线的行为区里能看到这些关键帧。打开时,它替换属性自己的动画。
- 控制关系
- 让属性跟随另一个属性:选好控制源,它必须存放同一类数值。结果是来源乘以倍率再加上偏移,所以一开始是原样照搬。
- IK
- 图层之间的两段 IK,用于由父子图层而不是骨骼搭成的肢体:由根位置和目标位置算出上段旋转和下段旋转,两段的长度是上段长度和下段长度,按弯曲方向弯曲。四个属性都在它的下拉列表里选。骨架请用骨骼自己的 IK (在新标签页打开)。
跟随其他图层的行为
这些行为根据另一个图层或一条线来设定图层的位置。先选中位置再添加;相机跟踪要选摄像机的位置。
- 附着
- 让图层贴在另一个图层上:选好附着来源。它的 X、Y 跟随来源的位置再加上位置偏移;偏移一开始是 0, 0,所以图层会移到来源那里。Z 保持它自己的值。
- 表面
- 一条供接触贴附图层的直线,从起点到终点,它本身不画任何东西。延伸方式决定这条线止于两端(限制在线段内)还是一直延伸(无限直线)。新建的表面横在合成的下半部。
- 接触
- 让图层贴在表面上:选好接触表面。图层移到线上离它自身动画位置最近的点,法线偏移让它沿垂直方向离开线一段距离,比如一个球的半径。表面关掉时,图层自由移动。
- 相机跟踪
- 让摄像机跟着主体走:选好相机跟踪目标。摄像机与目标的位置保持相机偏移的距离。偏移一开始就是两者当前的距离,所以摄像机先待在原处,然后跟着走;它只移动摄像机,不转动它。
换画与姿势
画组 (在新标签页打开)就是用这两个行为搭起来的,你也可以自己添加它们。
- 素材替换
- 让图片或视频图层显示另一张图片或另一段视频,代替它自己的素材:选中图层,选好替换素材。打开按控制值换图后,由一个控制值决定显示哪张画(见素材替换 (在新标签页打开))。
- 姿势驱动
- 让一个控制(通常是滑块)按你记录的姿势带动许多属性:选中要驱动的属性,再选好控制,它是一个数值属性(见姿势驱动 (在新标签页打开))。在画之间变形 (在新标签页打开)会为整个画组生成一个。
骨骼与物理
这些行为是模拟运动,而不是按公式算出来的,各有专门的页面。
- 次级运动
- 让一条骨骼链跟在带动它的东西后面:先落后、再冲过头、最后停稳。选中骨架图层并选好起始骨骼,或者在查看器的骨骼选项里打开它(见次级运动 (在新标签页打开))。
- 刚体
- 把一个 2D 图层变成会下落、碰撞和弹跳的实心物体。选中图层即可(见刚体物理 (在新标签页打开))。
- 物理世界
- 合成里所有刚体共用的重力、开始帧和实心边界;每个合成最多一个(见物理世界 (在新标签页打开))。
须知
- 行为属于合成,不属于某个图层:复制粘贴图层时,它的行为不会跟过去。
- 你让 Agent 做时,它也能添加和调整行为,并作为草稿交给你审核。