maya如何知道MPxNode的输出网格是什么?

2024-09-29 21:39:16 发布

您现在位置:Python中文网/ 问答频道 /正文

使用PolyModifierNode时,节点有一个inMesh和一个outMesh属性/插件,其中inMesh被隐藏并被outMesh替换。 但是一般的MPxNode可能有许多输入和输出,这些输入和输出可以用复杂的方式联网。在

我在理解MPxNode的结构时遇到的问题是,我看不出maya以何种方式知道哪些对象从输入转换为哪些输出对象。 我本希望图形中的最后一个节点连接到某个SceneRenderer.inputMeshes插件,但maya似乎以某种方式自动检测应渲染哪些未使用的outMesh插件。在

最后,我想写一个节点,它获得一个输入网格数组和一个额外的控制网格,并输出一个修改过的网格数组,它替换了原始网格。在

我使用的是组中所有对象相互影响的计算,因此无法逐个计算。每个输入使用一个节点是可能的,但是compute函数也需要在所有其他输入网格上触发计算。在


Tags: 对象插件图形网格属性节点方式数组
1条回答
网友
1楼 · 发布于 2024-09-29 21:39:16

Maya不会检测到未连接的插头。相反,当节点网络中的某些内容发生变化时,它会根据需要进行评估,并在必要时强制重新评估。在使用MPxNode::attributeAffects()或其等效Python初始化节点时,可以设置它关心的条件。对输入的更改将由其他节点按需顺流而下;当更改进入节点时,它将调用MPxNode::compute compute(),并将相应的插件作为参数传递。然后,您的节点将更新其输出,将它们沿着链传递给其他节点。在

您可能不想让您的节点获取一个输入节点数组,然后返回一个输出数组。制作一个一次只修改一个节点的节点更简单,也更像玛雅风格。这有助于在依赖关系图中本地化更改,并使场景运行更快。在

相关问题 更多 >

    热门问题