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 子后缀组合而成。)