如何在Maya MEL语言中创建空节点

时间:2014-01-20 12:14:28

标签: nodes maya mel

我想在Maya(mel语言)中创建一个空节点,我可以在其中存储我的属性(对最终用户可见)。
我之所以需要一个空节点,是因为我不需要任何定位器信息或其他标准Maya信息,只需要几个自定义属性。在节点中是可见的。

createNode "<What_type_should_I_put_here?>" -n "MyCustomEmptyNode";

3 个答案:

答案 0 :(得分:6)

scriptNode对于非物理对象来说是一个很好的对象。您还可以使用scriptNode的open和close函数进行初始化。

我也喜欢分区节点 - createNode('partition')。它们出现在大纲中,但在场景中没有实体存在。它们具有与资产容器相同的属性,因此您可以添加一些元数据(如用户名和创建的时间)而无需额外的工作。

对于转换,createNode ('transform')生成并清空组。您可以锁定并隐藏所有属性,但您仍然可以在属性编辑器中使用它们。有时我使用单个锁定和隐藏变换,并将显示覆盖设置为引用作为不可触摸对象(如绑定内部)的层次结构父级。资产节点是转换,但有一些额外的功能(比如自动隐藏它们的内容)并为其他节点建立了良好的存储空间。

您还可以将信息存储到文件without a node by using fileInfo中(链接在python中,但想法是一样的)。这对于不需要连接到场景图的静态数据非常有用。它在python中更有用,您可以使用标准工具对更复杂的数据进行编码。

答案 1 :(得分:4)

任何非dag节点类型都可以。您可以调用命令allNodeTypes查看完整列表。有数百个,有些比其他更好。

我曾经使用unknown认为这是一个很好的基础,但在.ma.mb之间更改格式会产生错误。

从那时起,我开始使用scriptNode,因为它可以帮助提醒我我的脚本成功了。我将包含的属性留空并添加我自己的属性。

答案 2 :(得分:2)

您还可以查看“network”nodeType,因为它在默认属性方面的开销很小...... 如果你不使用第三方插件/工具,你的场景中几乎没有机会......