ThreeJS camera.lookAt ()не действует, я что-то #39;делаю неправильно?

В Three.js я хочу, чтобы камера была направлена ​​на точку в трехмерном пространстве.

Для этой цели я попытался использовать функцию camera.lookAtвот так:

camera.lookAt(new THREE.Vector3(-100,-100,0));

Однако я обнаружил, что вызов не имеет никакого эффекта. Просто вообще ничего не делает. Я попытался изменить числа в векторе, и я всегда получаю один и тот же вид на экране, когда он должен меняться.

Я только что обнаружил, что если я удалю THREE.TrackballControls, который есть в моем коде, camera.lookAt()работает как надо. Что-то не так с тем, как я использую THREE.TrackballControls? Вот как я их инициализирую:

    controls = new THREE.TrackballControls( camera, renderer.domElement );

    controls.rotateSpeed = 10.0;
    controls.zoomSpeed = 1.2;
    controls.panSpeed = 0.2;

    controls.noZoom = false;
    controls.noPan = false;

    controls.staticMoving = true;
    controls.dynamicDampingFactor = 1.0;

    var radius = 5;
    controls.minDistance = radius * 1.1;
    controls.maxDistance = radius * 100;

    controls.keys = [ 65, 83, 68 ]; // [ rotateKey, zoomKey, panKey ]*/

И затем в моей функции рендеринга я делаю:

function render() {
  controls.update();
  renderer.render(scene, camera);
}

Документации по Three.js довольно мало, поэтому я решил спросить здесь. Я делаю что-то неправильно?

27
задан houbysoft 26 April 2012 в 12:29
поделиться