为什么pm.blendShape失败并且#34;对象不允许设置别名"?

时间:2016-02-25 12:13:35

标签: animation maya pymel

在迭代Maya场景中的节点(多个资源上的多个几何)时,我setting blendShape targets如下:

pm.blendShape(blendshape, edit=True, target=(mesh, target_index, corrective, 1.0))

有时它会起作用,有时我会收到以下错误:

  

对象不允许别名' corrective_name'要设置。可能是因为该名称的属性已经存在。

...其中 corrective_name 是nt.Transform corrective的名称。我在blendshape节点上找不到具有该名称的属性,因此不能成为原因。强制corrective的值为随机废话(试图保证不会发生冲突),会导致同样的错误。

这种失败的其他原因是什么?

注意:可见的副作用(或原因?)是在调用工作的blendShapes上,我可以看到名称与修正名称匹配的权重。在调用失败的blendShapes上,权重称为weight[0]weight[1]weight[2],依此类推。

注意2:保存.ma文件然后第一次加载后,似乎(某些)属性别名失败。加载后,某些对象的权重属性显示为weight[0]而不是actualName。同一个对象一致地失败(该对象上的属性的别名总是失败,其他对象上的别名永远不会失败)。这意味着pm.blendShape在第一个会话中对该对象成功,但每次加载场景后都会失败。然后,新创建的属性也称为weight[X](Example of alias failure in a completely different context.)

如果资产(包含多个对象)被导入到场景中,只有在引用它时才会发生这种情况。

资产别名正常工作(首次创建时,以及导入资产时):

working when asset imported

资产别名失败(第一次加载资产引用和保存的场景时):

fails when asset referenced and scene loaded

0 个答案:

没有答案