我想在 Maya(mel 语言)中创建一个空节点,我可以在其中存储我的属性(对最终用户可见)。
我需要一个空节点的原因是因为我不需要任何定位器信息或其他标准 Maya 信息,只需要几个我的自定义属性。在节点中可见。
createNode "<What_type_should_I_put_here?>" -n "MyCustomEmptyNode";
scriptNode 对于非物理对象来说是一个很好的选择。您还可以使用 scriptNode 的 open 和 close 函数进行初始化。
我也喜欢分区节点 - createNode('partition')
. 它们出现在大纲中,但在场景中没有实际存在。它们具有与资产容器相同的属性,因此您无需额外工作即可添加一些元数据(如用户名和创建时间)。
对于变换、createNode ('transform')
制作和空组。您可以锁定和隐藏所有属性,但您仍然可以在属性编辑器中拥有它们。有时,我使用单个锁定和隐藏变换,并将显示覆盖设置为引用作为不可接触对象(如装配内脏)的层次结构父级。资产节点是转换,但具有一些额外的功能(例如自动隐藏其内容),并为其他节点提供了良好的存储空间。
您也可以使用fileInfo将信息存储到没有节点的文件中(python中的链接,但思路相同)。这对于不需要连接到场景图的静态数据非常有用。它在 python 中更有用,您可以使用标准工具对更复杂的数据进行编码。
任何非 dag 节点类型都可以。您可以调用该命令allNodeTypes
以查看完整列表。有数百个,有些比其他更好。
有一次,我unknown
认为这将是一个很好的基础,但在两者之间改变格式.ma
并.mb
给出错误。
从那以后我开始使用scriptNode
,因为它可以帮助提醒我是我的脚本成功了。我将包含的属性留空并添加我自己的。
您还可以查看“网络”节点类型,因为它在默认属性方面的开销非常小......如果您不使用第三方插件,您的场景中已经存在的可能性很小/工具...