只给出使用方法,不讲原理
给定一个单位长度的旋转轴(x, y, z)和一个角度 θ。对应的四元数为:
q=((x,y,z)sin (角度/2), cos(角度/2))
q = (x' = x * sin (角度/2), y' = y * sin (角度/2), z' = z * sin(角度/2), w = cos (角度/2)
例如给定绕 Y 轴旋转 180
旋转轴 (x,y,z) = (0, 1, 0)
q = ((0,1, 0) sin(180/2), cos(180/2)
q = (x' = x = 0 * sin 90 度, y'= y = 1 * sin 90 度, z'= z = 0 * sin 90 度, w'= w = cos 90 度)
q = (0, 1, 0, 0)
对物件进行 Y 轴 180 度旋转只需要
transform.rotation = new Quaternion(0, 1, 0, 0);
在流星资料文件里经常看到的 0.7071, 0, 0, -0.7071 之类的,就是类似绕 X 轴旋转 90 度,270 度
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于