欧拉角和四元数都能表示一个旋转,同样还有转换矩阵也能表示一个旋转,它们三者之间可以互相转换
在3D图形学中,最常用的旋转表示方法便是四元数和欧拉角,比起矩阵来具有节省存储空间和方便插值的优点
欧拉角
也叫姿态角
用一句话说,欧拉角就是物体绕坐标系三个坐标轴(x,y,z轴)的旋转角度。
万向节死锁
四元数
为何要引入四元数?首先是因为欧拉角有万向节死锁的问题。
四元数存在于四维空间,其中用到了复数
四元数相比其他形式的优点:
- 解决万向节死锁(Gimbal Lock)问题
- 仅需存储4个浮点数,相比矩阵更加轻量
- 四元数无论是求逆、串联等操作,相比矩阵更加高效
现在主流游戏或动画引擎都会以缩放向量+旋转四元数+平移向量的形式进行存储角色的运动数据。
欧拉角(Euler angle) & 万向节死锁(Gimbal Lock) & 四元数(Quaternion)
最新推荐文章于 2024-07-16 11:29:14 发布