threejs 第十用 四元数简单camera

按前面写过的四元数旋转 就是要构造一个q Pq-1代表了P绕轴转x度的一次旋转变换

threejs里面封装了 就不需要全部算了。就用个接口

threejs中,先构造一个q=setFromAxisAngle(axis, -angle)好像q就已经是得出一个qPq-1了。。乘原来的qua就直接得到新的qua

取得P=camera.quaternion 然后P multiply q,再归一化,最后把camera的四元数赋值为这个新计算出来的就好了

camera.setRotationFromQuaternion(newP)

angle就捕捉onTouchMove事件取deltaX deltaY来计算

旋转轴x(1 0 0) y(0 1 0),当然,这里可以是任意轴

为啥用四元数,四元数效率比矩阵高 。

猜你喜欢

转载自blog.csdn.net/qq_35158695/article/details/81272971
今日推荐