我正在尝试以三种方式实现移动摄像机:
function initThree(){
scene = new THREE.Scene();
camera = new THREE.PerspectiveCamera(75,window.innerWidth/window.innerHeight,0.1,1000);
renderer = new THREE.CanvasRenderer();
renderer.setSize(window.innerWidth,window.innerHeight);
document.body.appendChild(renderer.domElement);
geometry = new THREE.CubeGeometry(1,1,1);
material = new THREE.MeshBasicMaterial({color:0x00ff00});
cube = new THREE.Mesh(geometry,material);
scene.add(cube);
camera.position.z=5;
controls = new THREE.PointerLockControls(camera); //fails at this line
}
在标记的行,我得到以下错误:
Uncaught TypeError: undefined is not a function
但是,在this页面上有一个示例吗?我当前正在使用this三个构建的本地副本。
任何帮助将是巨大的!
最佳答案
因为controls不属于main source的一部分,所以出现了该错误。如果要使用控件,则可能需要单独包含它们。参见此related post。
关于javascript - THREE.PointerLockControls()返回“未定义不是函数”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21838997/