DNACalib 库支持通过一组工具和命令来修改DNA文件中包含的数据。这个库使用C++编写,并具有Python绑定。这些绑定使用SWIG库生成。
这些工具单独使用时很有用,可程序化地修改DNA文件数据,并可在管线中轻松扩展或定制,让工作流程的交互性更高,对美术师更友好(例如,在DCC应用程序中生成重命名或删除命令,用于修改场景和对应的DNA数据)。
DNACalib工具可以通过以下方式使用:
-
在C++项目中,从源文件使用或链接到二进制文件。
-
通过兼容的Python环境中的Python绑定使用(包括命令行)。
-
在Maya中,经由其Python绑定,通过提供的参考实现来使用。
值得反复强调的是,DNACalib包含会直接影响DNA数据的命令。虽然你可以从Maya中(包括MayaPy和GUI的脚本工具)运行参考实现,但这并不匹配或响应Maya场景更改。你将负责创建可以同时影响场景和DNA数据的包装器,以便加以使用。
DNACalib命令
重命名关节、网格体、混合形状和动画贴图
要使MetaHuman头部rig能够正常工作,所有这些组件都是必需的。在发布DNACalib之前,重命名它们通常会破坏运算符与场景/资产对象和参数之间的链接。
使用DNACalib命令,你可以将其中任意元素重命名为所选的(合法)名称,这样如果你的管线或工具依赖名称,现在你可以修改MetaHuman头部rig来加以处理。
删除关节、网格体、混合形状和关节动画
我们仅允许删除,而不允许添加,你将负责确保删除之后底层结构保持完好。
删除组件部分常常有助于降低LOD的内容中rig的权重。以这种方式删除关节,还可确保我们生成的权重贴图将在几何体中正确地参数化,同时该关节不会显示在影响中。
整体Rig变换
传播到整个层级的根节点平移、旋转和缩放现在可通过此命令来实现。你可以对这些参数的任意混合进行变换。
虽然你可以使用此命令执行非等分缩放,但不推荐这样做。
使用此工具,可以缩放MetaHuman头部,并将其用于自定义形体,其大小可以不同于我们提供的形体大小,或用于不同于正常比例的装置和生物。
LOD删除
我们的DNA提供了构建各种LOD所需的一切内容。很多时候,你可能只需要其中的一部分,如果每次包含MetaHuman头部rig的资产更新时,你都要删除未使用的LOD,那就需要反复删除,比较繁琐。
此命令可从DNA文件的内容中删除LOD,生成更快的构建和更小的资产。
更改中性变换和网格体
使用这些命令可设置关节以及中性姿势网格体的中性变换(平移、旋转、缩放)。
这样做的效果实际上相当于设置绑定姿势,并在DNA上设置新的预蒙皮顶点位置。
几何体顶点距离我们提供的基础MetaHuman网格体越远,rig就越有可能出现问题,尤其是在眼睛和嘴角等关键区域。若要修改的区域带有很少的影响且行为固定或非常简单(例如,耳朵、下巴尖和下颌边角),通常会更为宽松。