три. js как изменить вектор камеры вверх? - PullRequest
0 голосов
/ 04 мая 2020

В трех. js У меня есть точка камеры где-то с помощью camera.lookAt (0, 0, 0). После этого вектор camera.up в основном в случайном направлении. У меня есть известный вектор повышения, где я хочу, чтобы камера была вверху, но когда я ее установил, она ничего не делает:

camera.position.set(0, 0, 5);  // works
camera.lookAt(0, 0, 0);        // works
camera.up.set(1, 0, 0);        // nothing
camera.up.set(-1, 0, 0);       // nothing
camera.up.set(0, 1, 0);        // nothing
camera.up.set(0, -1, 0);       // nothing
camera.up.set(0, 0, 1);        // nothing
camera.up.set(0, 0, -1);       // nothing

Как изменить вектор вверх камеры? camera.rotateZ (0.1) работает, но я не знаю, сколько повернуть, я просто хотел бы использовать вектор.

1 Ответ

1 голос
/ 05 мая 2020

up используется только при вызове lookAt. lookAt - это не состояние, это функция, которая устанавливает для вас rotation. Поэтому, если вы измените up, вам нужно снова позвонить lookAt.

camera.position.set(0, 0, 5);  // 
camera.up.set(1, 0, 0);        // set up
camera.lookAt(0, 0, 0);        // now call lookAt
...