使用Python在Maya中为曲线制作动画

时间:2020-11-10 11:37:06

标签: python maya maya-api

我正在使用Maya(使用Python)制作关键帧脚本物理动画,并且我想显示一些会影响动画对象的矢量(算法的结果)。

为了表示向量,我选择了一条曲线:

import maya.cmds as cmds
vectorCurve = cmds.curve(d=1, p=[(x, y, z), (p, q, r)])

然后,当为动画创建关键帧时,我这样做:

for i in range(300):
    #a,b,c,d,e,f values change every iteration
    cmds.move(a, b, c, vectorCurve + ".ep[0]", wd=True)
    cmds.move(d, e, f, vectorCurve + ".ep[1]", wd=True)

    cmds.setKeyframe(vectorCurve, time=i)

但是当我运行脚本时,曲线保持在最终位置,并且在动画过程中不会移动。

如何正确设置(线性)曲线的动画关键帧?

编辑:
曲线实际上具有关键帧,但是当我查看Channel Box中的关键值时,平移和旋转都为0,比例为1(对于X,Y和Z)。

1 个答案:

答案 0 :(得分:0)

如评论中所述,OP的问题通过指定control points也应为键来解决:

# Original code
cmds.setKeyframe(vectorCurve, time=i)

# Becomes
cmds.setKeyframe(vectorCurve, time=i, controlPoints=True)