关于欧拉角和四元数 如图:
图一:Rotation信息和输出内容
图二:Rotation信息和输出内容
图二:代码
图一和图二的不同之处就是绕X轴旋转的角度不一样,然后输出框中的第一行不一样,这个可以理解,因为欧拉角有“奇异性”,也就是说同一个“方向”可通过不同的旋转顺序和角度得到。
图一输出框中的后两行也一样,因为都是表示同一个方向,但是为什么图二里面的就不一样了呢?四元数没有奇异性,为什么数值不一样?求指教!
关于欧拉角和四元数 如图:
图一:Rotation信息和输出内容
图一和图二的不同之处就是绕X轴旋转的角度不一样,然后输出框中的第一行不一样,这个可以理解,因为欧拉角有“奇异性”,也就是说同一个“方向”可通过不同的旋转顺序和角度得到。
图一输出框中的后两行也一样,因为都是表示同一个方向,但是为什么图二里面的就不一样了呢?四元数没有奇异性,为什么数值不一样?求指教!
我说一下我的理解吧,可能有错误啊,因为欧拉角四元数这块其实我自己并没有吃透,欧拉角展示的是一个物体旋转的最终状态,四元数展示的是物体如何旋转到最终状态,(0,0,0)到(90,0,90)有外旋内旋两种途径,可以先X轴转90然后Z轴转90,也可以先Z后X,那么四元数就存在两个,你在unity属性面板里将
normal模式改为debug模式,然后将四元数的值修改为你debug出来的两个不同的值,你会发现物体显示的其实都是(90,0,90)