如果这篇文章的格式不正确,很抱歉,这是我的第一篇文章。
我目前正在尝试让CameraHelper沿着BezierCurve移动,相机移动得很好,相机辅助对象似乎也移动得很好,但是当从辅助的“调试”相机查看场景时,辅助对象并没有“移动”。
当我切换到普通摄像头并返回时,调试凸轮上的辅助对象位置确实会更新,只是在移动期间从调试凸轮查看时不会更新。
我已经在呈现循环中包含了cameraHelper.update()
if (this.animationView) {
this._effectComposer.render();
} else {
this._renderer.render(this._scene, this._debugCamera);
}
this._cameraHelper.update();任何帮助都将不胜感激,我相信这只是些小事
发布于 2021-05-06 12:44:05
确保已将cameraHelper摄影机(_debugCamera)添加到场景中。我注意到cameraHelper将渲染一次,但它不会更新,除非它已被添加到场景中,即使您调用update()。
发布于 2020-01-09 16:55:53
使用‘CameraHelper’的前提是至少使用两个摄像头,这样‘CameraHelper’就会完全出现在屏幕上。
‘CameraHelper’使用有意义的前提是至少使用两个相机,这样‘CameraHelper’才会完整的出现在屏幕内。
// 屏幕相机
let camera = new THREE.PerspectiveCamera(45, 1, 0.01, 300)
camera.position.set(-1, 1.2, 1.5)
camera.lookAt(0, 0, 0)
// 带相机助手的相机
const camera1 = new THREE.PerspectiveCamera(45, 1, 0.01, 3)
camera1.position.set(-1, 1.2, 1.5)
camera.lookAt(0, 0, 0)
let cameraHelper = new THREE.CameraHelper(camera1)
scene.add(cameraHelper)
// 需要每帧更新旋转矩阵
stage.onUpdate(() => {
cameraHelper.update()
camera1.updateMatrix()
camera1.lookAt(0, 0, 0)
})https://stackoverflow.com/questions/51636172
复制相似问题