当前位置:首页 > 编程笔记 > 正文
已解决

Three.js设置相机lookAt无效

来自网友在路上 156856提问 提问时间:2023-11-01 23:21:15阅读次数: 56

最佳答案 问答题库568位专家为你答疑解惑

Three.js设置相机lookAt无效

原因:代码中使用了OrbitControls轨道控件来控制相机,这个目标默认为THREE.Vector3(),也就是(0, 0, 0)世界坐标的原点。使用camera.lookAt会无效。

源代码片段:

//创建相机
const camera = new THREE.PerspectiveCamera(80, //视角widthofelement / heightofelement, //宽高比0.1, //近距离1000 //远距离
)//相机位置,z轴为朝向自己的方向,y轴为垂直方向
camera.position.set(-7, 13, -7)
// 设置相机朝向的位置
camera.lookAt(100, 0, 100) // <----!!!此处无效!!!
const controls = new OrbitControls(camera, renderer.domElement);//渲染函数
function animate() {controls.update()//调用animaterequestAnimationFrame(animate) //异步函数//渲染renderer.render(scene, camera)
}animate()

解决方法:
camera.lookAt(100, 0, 100)改为:

controls.target = new THREE.Vector3(100, 0, 100)

这篇博文写的很详细:
https://blog.csdn.net/ithanmang/article/details/82735273

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Three.js设置相机lookAt无效":http://eshow365.cn/6-29687-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!