连接
连接(Connections)是 Cavalry 的一项核心功能,用于设置驱动其他属性的属性。
虽然 Cavalry 的界面提供基于图层的交互方式,但其底层实际上是”基于节点”的架构——这意味着当创建连接时,一个图层属性的数据会直接传递给另一个图层的属性。
连接可以通过从连接锚点(Connection Anchor)点击并拖拽来创建。连接锚点是指鼠标悬停在上面时会变为蓝色的任何元素。

当属性被悬停时,连接锚点会高亮为蓝色。
对于从 After Effects 转过来的用户来说,需要注意:在 Cavalry 中创建连接并不是编写 JavaScript 表达式的快捷方式——连接是在图层之间建立的。这带来了高速计算和极大的灵活性。
创建连接
标题为“创建连接”的章节在Attribute Editor中创建连接:
- 将光标悬停在属性上(连接锚点图标将变为状态 2)。
- 将光标移到连接锚点图标上(图标将变为状态 3),然后点击并拖拽。
- 将光标移到另一个属性上(当可以连接时,“连接”会变为蓝色)。
- 释放鼠标。

连接图标会同时出现在发起连接的属性和第 4 步中接收连接的属性上,表示已建立连接。
当提到 id 时,指的是图层的Attribute Editor界面标题栏中的连接锚点。这是图层的输出。
在场景窗口中的操作非常类似:
- 悬停在图层上(连接锚点图标将变为状态 2)。
- 将光标移到连接锚点图标上(图标将变为状态 3),然后点击并拖拽。
- 将光标移到另一个图层上(当可以连接时,“连接”会变为蓝色)。
- 释放鼠标。
- 将弹出一个弹出窗口。
- 选择要连接到的行(属性)。
- 点击鼠标。
连接图标会出现在第 6 步中接收连接的图层上,表示已建立连接。

在场景窗口中创建连接
可以使用 Option/Alt 键同时向多个图层创建连接:
- 创建 3 个 Shape(Shape1、Shape2、Shape3)。
- 创建一个 Value Behaviour。
- 将 Value 和 Shape1 载入Attribute Editor。
- 在场景窗口中选中所有 3 个 Shape。
- 按住 Option/Alt 键,在Attribute Editor中从 value.id 拖拽连接到 shape1.position.x。
这样就会从 Value 到每个 Shape 的 position.x 属性都创建了连接。
输入与输出
标题为“输入与输出”的章节连接可以是输入或输出。
- 输入(Input) 是指一个属性被另一个属性驱动。
- 输出(Output) 是指一个属性驱动另一个属性。
一个属性可以有多个输出,但只能有一个输入。动画曲线(关键帧)被视为一种输入,因此用另一个输入覆盖连接会替换动画曲线,这意味着所有关键帧数据都将丢失。
输入由面向左侧的黄色图标表示。输出由面向右侧的紫色图标表示。

点击连接图标会打开一个弹出面板,显示现有连接的列表。双击某一行可以定位到被连接的图层/属性,或者点击叉号来断开连接。

在弹出面板中,按住 Cmd/Ctrl 键双击连接或点击”x”断开属性时,窗口将保持打开状态,允许一次执行多个操作。
要覆盖现有连接,在使用连接器时按住 Cmd/Ctrl 键,或在上下文菜单中选择 Replace Connection。
数据类型
标题为“数据类型”的章节连接只能在兼容数据类型的属性之间建立。例如,字符串(文本)无法连接到值(数字)。创建连接时,不兼容的属性在Attribute Editor中会变暗,在场景窗口中会被隐藏。