小编Edu*_*duG的帖子

如何在three.js中为相机设置动画以查看对象?

在Three.js中,我想让相机看到场景中的一个物体,当我点击另一个物体时,让相机平稳地旋转以查看新物体.(即为相机的旋转设置动画).

我检查了SO,这是最相似的问题:

Three.js如何使用四元数来旋转相机

我也试过修改这个网站上的代码,我设法得到这样的东西http://jsfiddle.net/F7Bh3/

 var quat0 = mesh2.quaternion;
 var eye = mesh2.position;
 var center = mesh.position;
 var mat = new THREE.Matrix4();
 mat.lookAt(center, eye, new THREE.Vector3(0,1,0));
 var quat1 = new THREE.Quaternion();
 quat1.setFromRotationMatrix( mat );

 var qm = new THREE.Quaternion();

 deltaTheta = angleBetweenQuats(quat0,quat1);
 var frac =  0.2/deltaTheta;
 if (frac>1)  frac=1;

 mesh2.quaternion.slerp(quat1,frac);
 mesh2.quaternion.normalize();
Run Code Online (Sandbox Code Playgroud)

但是当我尝试旋转相机而不是物体时,我得到的是:http://jsfiddle.net/5Peq9/1/

我错过了什么?提前致谢

rotation quaternions three.js

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

quaternions ×1

rotation ×1

three.js ×1