FBX 插件重命名策略

当 Maya FBX 插件发现对象或元素具有相同的名称时,发生了命名冲突。Maya FBX 插件会在导入或导出时通过重命名元素来修正此问题。这种方法同样适用于任何大小写冲突。

何时会出现这种情况?

例如,从 3ds Max 导出的 FBX 场景中包含两个名称为“Box01”的对象时,会发生这种情况。Maya 中的结果是,第一个对象名为“Box01”,第二个对象原先名为“Box01”,现在名为“Box01_ncl1_1”。这种情况肯定会发生,因为 Maya 不支持具有相同名称的对象。

以下是对发生情况的描述:

多余的名称

当 Maya FBX 插件发现场景中的多个实例具有相同的名称时,将使用符号代码。Maya FBX 插件可以读取旧文件,尽管它不再按此方法写入它们。

新的后缀为 _ncl1_x(其中 x 是实例编号)。

命名冲突

有时,当您将多个 FBX 角色从 3ds Max 导入游戏引擎时,会发生冲突,从而导致根关节熔合在一起。这是因为有些软件包像 Maya 一样,不需要名称空间即可区分对象。因此,导出到游戏引擎时,移除任何名称空间非常重要。

3ds Max 支持重复的名称,因此导出将自动使用 3ds Max 的“导出选定对象”(Export Selected)选项。但在 Maya 和 MotionBuilder 中,重复的名称会引发问题。因此,如果两个角色均使用相同的装备名称,则必须对每个装备使用不同的名称空间。

从 Maya 或 MotionBuilder 导出两个角色时

  1. 从要导出的第一个动画装备的层次中移除名称空间。
  2. 在第一个角色上重置名称空间,然后从第二个角色中移除名称空间
  3. 导出。

导入两个包含同名对象(例如,角色装备)的角色时

  1. 导入选项中,启用“使用名称空间”(Use Namespaces)“使用选定的名称空间作为父对象并添加新的名称空间字符串”(Use selected namespace as parent and add new namespace string)
  2. FBX 导入选项中,使用“添加”(Add),而非“包括文件内容”(Include File Content)区域中的“添加并更新”(Add and Update)
  3. 输入。

大小写冲突

Maya FBX 插件发现场景中的对象或元素的名称存在大小写冲突时,将使用更复杂的后缀跟踪大写或小写字符,以便可以在导入或合并时将其转化回原来的样式。

以下后缀用于指示大小写:

情况 后缀
指示大小写 _ncl2
描述原先为大写、后变为小写的字符 _ulXXXX
描述原先为小写、后变为大写的字符 _luxxxx(其中 xxxx 为四位数字的整数,表示字符串中的字符位置,数字表示位置的形式是比特式。例如,_ul5 指示字符串中第一个和第三个字符已从大写更改为小写。后缀可以由 _ul 和 _lu 子后缀组合而成。)