三杰 - "Cannot read property 'autoUpdate' of undefined"

ThreeJs - "Cannot read property 'autoUpdate' of undefined"

我正在尝试使用 Three.js,但我的浏览器中显示此错误:

代码如下:

import { AxesHelper, PerspectiveCamera, Scene, WebGLRenderer } from 'three'
import Vue from 'vue'
import App from './App.vue'

Vue.config.productionTip = false

new Vue({
  render: h => h(App),
}).$mount('#app')

const scene = new Scene();
scene.add(new AxesHelper());

const camera = new PerspectiveCamera(75, window.innerWidth/window.innerHeight, 0.01, 1000);
camera.position.z = 2;
camera.position.y = 0.5;
camera.position.x = 0.5;
scene.add(camera);


const renderer = new WebGLRenderer();
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.setPixelRatio(Math.min(window.devicePixelRatio, 2));
document.body.appendChild(renderer.domElement);
tick();

function tick() {
  renderer.render(scene.camera);
  camera.position.x += 0.01;
  camera.lookAt(0, 0, 0);
  requestAnimationFrame(tick);
}

我不知道如何解决这个问题。

打错了:这一行...

renderer.render(scene.camera);

...其实应该这样写:

renderer.render(scene, camera);

... 而不是 (docs)。您得到的错误是由于试图将 scene.camera 值视为 scene 而导致试图访问其 autoUpdate 属性.