我有一个带动画的FBX文件。当我将它导入Maya(2017)时,骨骼'arm_r_shoulder'的旋转值如下所示:
但是在将其导入Unity(5.6.1f1)后,该值才刚刚改变:
可以下载fbx here。
我的问题是,为什么这些价值不同?我该怎么处理呢?
答案 0 :(得分:0)
我认为它是Rotate Order
和/或Order of Transformation
问题。首先,检查Maya中的Rotate Order
,然后查看Unity中的内容。这两个包中的参数必须相同。
您可以使用以下代码行更改Rotate Order
,但保留Maya中的整体转换:
import maya.cmds as cmds
cmds.xform(preserve=True, rotateOrder='yzx')
import maya.cmds as cmds
cmds.rotationInterpolation('polyModel_rotateY', convert='quaternion')
阅读此文章,了解如何使用Python进行转换:Quaternion to Euler Rotations。