Javascript Three.js-在OrbitControl和FirstPersonControl之间切换

Javascript Three.js-在OrbitControl和FirstPersonControl之间切换,javascript,jquery,three.js,Javascript,Jquery,Three.js,我正在尝试在three.js OrbitControl和FirstPersonControl之间来回切换。而且,我试着制作自己的按钮,在两个控件之间切换 我的html有: <button id="controla" type="button" class="btn btn-default">1st</button> <button id="controlb" type="button" class="btn btn-default">3rd</butto

我正在尝试在three.js OrbitControl和FirstPersonControl之间来回切换。而且,我试着制作自己的按钮,在两个控件之间切换

我的html有:

<button id="controla" type="button" class="btn btn-default">1st</button>
<button id="controlb" type="button" class="btn btn-default">3rd</button>
<script src="js/OrbitControls.js"></script>
<script src="js/FirstPersonControls.js"></script>
当我将其切换为第一人称时,模型将消失。另外,在IE控制台中,当我键入
camera.position
时,点击按钮后,我会得到
[object object]{x:NaN,y:NaN,z:NaN}


我错过了什么?是否需要指定更多控件?

它不工作,因为FirstPersonControl需要时钟才能工作。我没有通过
controls.update()操作时钟,如下所示

function animate() {
  requestAnimationFrame( animate );
  controls.update( clock.getDelta() );
  update();
  render();
  stats.update();
}

几天前,我帮了一个人做了几乎完全相同的事情。FirstPersonControl要求将时钟传递给控件的问题在
animate()中更新函数<代码>控件.update(clock.getDelta())
function animate() {
  requestAnimationFrame( animate );
  controls.update( clock.getDelta() );
  update();
  render();
  stats.update();
}