跳转到内容

Sub-Mesh

Cavalry 中的 Mesh 可以包含其他 Shapes 的层次结构。这些 mesh 被称为”子 mesh”。这个层次结构是一个树形结构,类似于 Scene Window,不同之处在于它存在于 Shape 的 Mesh 中。

例如,Text Shape字符组成,Duplicator 创建由许多 Input Shapes 构建的 Mesh,SVG 可以在层中包含任意数量的层。Sub-Mesh Behaviour 通过指定层次结构中的层级,提供了一种访问和影响这些单独子 mesh 的方式。

也可以手动创建可被 Sub-Mesh 影响的 mesh 层次结构。例如:

Pre-Comp 中的两个 Ellipses:

  • Pre-Comp
    • Ellipse1
    • Ellipse2

Group 中的两个 Ellipses,该 Group 作为 Custom ShapeInput Shape

  • Custom Shape
    • Ellipse1
    • Ellipse2
  • Shape
  • Advanced

Common Attributes +

Position - 设置 X 和 Y 位置。0,0 位于 Composition 的中心。

Rotation - 设置旋转(度)。

Scale - 设置 X 和 Y 缩放值。

Opacity - 设置不透明度。

Visibility - 逐个影响子 mesh 的可见性。

Time Offset - 逐个影响子 mesh 的动画曲线偏移。

Recalculate Pivot - 选中后,根据 Pivot Position 为每个子 mesh 放置枢轴点。

Pivot Position - 当 Recalculate Pivot 选中时,通过将枢轴点对齐到每个子 mesh 的边界框来定位它们。

Deformers - 已连接的 Deformers 列表。

Filters - 已连接的 Filters 列表。

Level Mode - 选择要影响的 Mesh 层次结构层级。

  • Custom… - 手动设置 Custom Level Range
  • Text (Lines) - 用于 Text Shape,这将影响每一
  • Text (Words) - 用于 Text Shape,这将影响每个
  • Text (Characters) - 用于 Text Shape,这将影响每个字符
  • All - 影响所有子 mesh,无论层级如何。

Level Mode 提供了几个旨在使 Text 操作更简单的设置。例如,Text (Words) 模式设置内部 Custom Level Range 值为 2, 2。虽然这些设置会影响 Text Shape 中的任何词,但这些相同的设置对 SVG Shape 也可能有效。

Custom Level Range - 设置 Mesh 层次结构中要影响的层级。这也可用于设置一个层级范围。例如,设置范围 1, 2 可用于覆盖 SVG 的颜色,针对级别 1 和 2 上的所有形状,但不影响级别 3。

随着 Level 值的增加,Sub-Mesh 会深入到 Shape 的层次结构更深处。

Flatten Mesh at Level - 低于此级别的所有子 mesh 将被合并并提升到此级别。

Index Mode - 确定如何为子 mesh 分配索引:

  • Unique - 为每个子 mesh 分配唯一索引。例如,当将 Sub-Mesh 添加到 Text Shape 然后向 Sub-Mesh 添加 Color Array 时,颜色将循环遍历每个字符。
  • Child Index - 为其父级中的每个子 mesh 分配唯一索引。例如,“word” 是 “character” 的父级——当将 Sub-Mesh 添加到 Text Shape 然后向 Sub-Mesh 添加 Color Array 时,颜色将循环遍历每个字符,但索引将从每个词的第一个字符的 0 开始。这可用于创建重复效果。下表提供了当与 Text Shape 和字符串 HELLO WORLD 一起使用时,每个选项的索引分配方式示例:
StringHELLOWORLD
Id (Unique)0123456789
Id (Child Index)0123401234

Sub-Mesh 也有 Fill 和 Stroke 标签页。它们与 Shapes 上的标签页相同,除了两个例外。

Replace Fill/Stroke - 选中后,Sub-Mesh 将用此标签页中设置的 Color 和/或 Shaders 覆盖它所连接的形状上的任何材质。

Replacement Mode - 默认情况下,所有材质都将被替换,但通过使用此选项,可以针对特定条件:

  • Replace All - Sub-Mesh 将替换所有子 mesh 的 Fill/Stroke。
  • Replace Missing - Sub-Mesh 将仅替换启用 Fill/Stroke 的任何子 mesh 的 Fill/Stroke。
  • Replace Existing - Sub-Mesh 将仅替换启用 Fill/Stroke 的任何子 mesh 的 Fill/Stroke。

Fill/Stroke Overrides - 参见 Color Material OverrideAlpha Material Override

Use Index Context - 选中后,Sub-Mesh 将拉取 Context。这可用于控制如何分配 Id,从而逐个影响每个子 mesh。

Text 的层级如下:

  1. Line.

  2. Word.

  3. Character.

  4. 创建一个 Text Shape

  5. 创建一个 Sub-Mesh Behaviour。

  6. 连接 subMesh.id→textShape.deformers

  7. Sub-Mesh 上的 Position Y 设置为 30

  8. 右键点击 Falloff 属性,选择 ‘Add Falloff’。

Falloff 在文本上动画时,每个字母将向上移动 30px。