匹配树¶
当你浏览到一个 .anm 时,OTS 会读取文件中的每一项,并试着在你当前的场景里找到它。它展示给你的这个列表就是这次搜索的结果 — 也是你在提交之前最后要看的东西。
摘要行¶
列表上方有一行告诉你手里拿的是什么:
3 pegs — 2 matched · 1 camera · frames 1–60
| 部分 | 含义 |
|---|---|
3 pegs |
文件中包含多少项 |
2 matched |
其中有多少项在 这个 场景里解析到了东西 |
1 camera |
其中有多少项是摄像机。摄像机是单独计数的,从不计入已匹配 |
frames 1–60 |
该文件导出时所用的范围 |
如果已匹配的数量低于你的预期,下面的列表会告诉你是哪些没匹配上。
行的颜色¶
列表中恰好只有 两种 颜色,而它们表示两件毫不相干的事。
| 颜色 | 出现在哪 | 含义 |
|---|---|---|
| 整行 | 未匹配 — 文件中的这一项在你的场景里什么也没找到 | |
| 子行上的 Rig 单元格 | 继承 — 这一项跟随其 root 的 rig;它不是一个独立的选择 |
图例就这些。列表里其余的一切都是交替行背景上的普通文本,而你在高亮行上看到的蓝色只是选中状态。
琥珀色表示未匹配 — 仅此而已¶
琥珀色的行不是错误,也不是对你数据的警告。它只陈述一件具体的事:OTS 在你此刻打开的这个场景里,找不到这一项的目标。
它是琥珀色而不是红色,是有意为之 — 这是一个常规状态,下一步该做什么很明显,它并不是拦路虎。
常见且完全正常的原因:
- 场景是空的。 你正准备按 Create Rig,而这恰恰是该做的事。一切都是琥珀色,因为什么都还不存在。
- 它是一个摄像机 peg。 在向 Maya 或 Blender 的一次全新导入中,还不存在带着摄像机名字的 joint 或 bone,所以它那一行是琥珀色。Create Cameras 会处理它。这正是摘要中摄像机要单独计数的原因。
- 名称不一样。 这一侧的 rig 是手工搭的,或者被重命名过,或者来自另一个版本。
它实际会让你付出什么代价:Apply 会跳过未匹配的行。它不会报错,也不会去猜 — 它就是不写这些行。所以如果你按了 Apply 而某个东西没动,就去找琥珀色。
颜色和图标是相互独立的
图标 说明这一行 是什么;颜色 说明它 有没有匹配上。它们是分开设置的,所以一个未匹配的摄像机会同时显示两者 — 一个摄像机图标加上琥珀色的文字。任何一个信号都不会遮住另一个。
琥珀色的行不会自己消失¶
在 Create Rig 或 Create Cameras 之后,列表显示的仍然是你按下浏览时的匹配状态。即使目标现在已经存在,这些行还是琥珀色的。
要重新执行匹配,对同一个文件再按一次 Browse…。这是预期行为,不是构建失败 — 去检查你的场景,而不是这个列表。
图标¶
| 图标 | 含义 |
|---|---|
| 这一项是摄像机,而且是场景的 默认 摄像机 | |
| 这一项是摄像机,但不是默认的那台 | |
| (无) | 一个普通的 peg / bone / joint |
Blender 的面板用 Blender 自己的图标表达同样的含义 — 已匹配用对勾,未匹配用警告三角,活动与非活动摄像机用它的原生摄像机图标。
匹配是怎么工作的¶
OTS 会按顺序尝试:
- 存储的路径。 每个被导出的项都记录了它在源场景中的完整路径。如果某个节点仍然位于那个路径上,而且类型也还对得上,那就是匹配。
- 精确的名称匹配。 用该项的基础名去比对场景中的对象。
- 带后缀的变体。 在 Harmony 中,是名称的
-Ppeg 后缀变体。
第一个命中的胜出。如果一个都没命中,这一行就是琥珀色。
像 Harmony 的 -P 这类后缀在匹配时会被剥离,所以一个叫 hip-P 的 peg 和一个叫 hip 的 joint 会被视为同一项。正是这一点,让一次穿过三个应用、三套命名惯例的往返能够稳稳落地。
修好没匹配上的项¶
编辑目标路径。 双击某一行的 Target path 单元格并输入正确的路径。只有这一列可编辑 — 双击名称列是刻意不做任何事的,这样你就不会误改一个传入项的名字。
取消勾选它。 如果这一项在这个场景里确实无处可去,而你也不想要它,就取消勾选,Apply 会忽略它。
在你的场景里重命名。 如果好几行是因为同一个原因没匹配上 — 比方说命名惯例变了 — 那么把场景里的名字改好再按一次 Browse…,会比一行一行地编辑快得多。
干脆构建出来。 如果文件里大部分都没匹配上,你多半应该用 Create Rig 而不是 Apply。
读懂层级¶
缩进就是父子关系。没有 Parent 列,因为这个缩进 就是 将要被构建或匹配的结构。
折叠箭头 只出现在 root 行上 — 一条 chain 的中间部分无法折叠,所以你总能看到你即将改动的整条 chain。
Rig 列显示每一行属于哪个 rig;root 会得到一个可编辑的下拉框,子项得到灰显的继承文本。参见 Rig 与多 Rig。