Javascript 是否有一个three.js函数来模拟摄影机的移动?
我的场景中有两个模型。我可以单击一个按钮,使用以下代码将相机传送到场景中的不同空间:Javascript 是否有一个three.js函数来模拟摄影机的移动?,javascript,three.js,Javascript,Three.js,我的场景中有两个模型。我可以单击一个按钮,使用以下代码将相机传送到场景中的不同空间: camera.position.set(0, 100, -350); //sets initial camera orbit rotation controls.target.set(0, 0, 0); //sets orbit location in world 是否有一个three.js函数来模拟摄影机在点之间的移动?如评论中所述,您可以使用类似tween.js的动画库来解决此问题。也可以使用three.
camera.position.set(0, 100, -350); //sets initial camera orbit rotation
controls.target.set(0, 0, 0); //sets orbit location in world
是否有一个three.js函数来模拟摄影机在点之间的移动?如评论中所述,您可以使用类似
tween.js的动画库来解决此问题。也可以使用three.js
的内部动画系统,但它的低级API更适合于资产加载程序
查看以下使用tween.js制作的示例。查看摄影机位置如何在两秒钟内设置动画,以及如何使用onUpdate()
回调将摄影机聚焦在网格上
var摄像机、场景、渲染器;
变量几何、材质、网格;
init();
制作动画();
函数init(){
摄像头=新的三个透视摄像头(70,窗口内宽/窗口内高,0.01,10);
摄像机位置z=1;
var目标=新的三个向量3(1,0,1);
新TWEEN.TWEEN(摄影机位置)
.to({x:target.x,y:target.y,z:target.z},2000)
.onUpdate(()=>{camera.lookAt(scene.position);})
.start();
场景=新的三个。场景();
几何体=新的三点几何体(0.2,0.2,0.2);
材质=新的三个。MeshNormalMaterial();
网格=新的三个网格(几何体、材质);
场景。添加(网格);
renderer=new THREE.WebGLRenderer({antialas:true});
renderer.setSize(window.innerWidth、window.innerHeight);
document.body.appendChild(renderer.doElement);
}
函数animate(){
请求动画帧(动画);
TWEEN.update();
渲染器。渲染(场景、摄影机);
}
使用tween.js或GSAP库。