将元数据添加到 Maya 节点

 
 
 

可以使用 Maya 元数据 API 创建任意多的元数据结构,这些结构可以直接附加到 Maya 网格对象的任何 Maya 节点以及组件(顶点、面、边和顶点面)。也可以将元数据整体添加到 Maya 场景中,也就是说无需将其附加到任何特定节点。通过为数不多的一组 MEL 命令,可以从 Maya 内访问元数据。

使用元数据类,可以为组件级别的元数据创建数据结构,并将其合并为单个数据流,该数据流允许元数据流经 Maya DG 中的操作,同时使元数据保持附加到节点。这包括向具有构建历史的网格节点添加组件级别元数据。由于元数据可以通过任意指定关联附加到任意节点,因此可以扩展 API 用途(如将元数据附加到点云中的点、模拟中的粒子或 NURBS 曲面上的顶点)。元数据稍后可通过 MEL 命令或 API 进行检查或修改,并在不同会话之间保存在 Maya 文件中。adsk::Data::Association 类引用中的示例显示了如何将顶点速度和加速数据存储在模拟网格上。请参见 Maya API 文档。

在构建历史中,元数据索引值不会发生变化。如果网格拓扑改变,则网格组件元数据可能不再与原始组件关联。editMetadata 命令可以帮助将调整插入构建历史,进而修复由此引发的任何问题

元数据 API 类

元数据 API 包括以下最常用的类:adsk::Data::Association、 adsk::Data::Channeladsk::Data::Streamadsk::Data::Structureadsk::Data::Handle

“关联”(Association)“通道”(Channel)“流”(Stream)“结构”(Structure)各自具有等效的 XXIterator 类,有助于遍历类的所有成员。

元数据 MEL 命令

从 Maya 中,可以使用以下 MEL 命令访问和操纵从元数据 API 创建的数据结构。

如果要使用其他索引类型,可通过 Maya API 借助插件来实现。元数据命令可以在显示本地索引类型的任意位置使用这些其他索引类型。