我正在尝试给四元数的旋转增加一个偏移量,根据Unity文档,两个四元数相乘相当于按顺序进行旋转。目前我正在尝试以下方法:如果偏移四元数是(0, 0, 0, 0),将它与第一个四元数相乘,不应该有任何影响。然而,在我的测试中,将任何四元数与(0, 0, 0, 0)相乘的结果均为(0, 0, 0, 0),因此这种方法并不正确。
Quaternion q = new Quaternion (-0.7f, 0f, 0f, -0.7f);
Quaternion rotationZero = new Quaternion (0f, 0f, 0f, 0f); // offset
Quaternion result = q * rotationZero;
print (result); // (0.0, 0.0, 0.0, 0.0)