Я только начал с Three.js.Как и сейчас.
Проиграв с ним в течение часа или около того и создав инструмент, который помогает мне понять, как различные элементы работают вместе (Камера, Свет, Объекты), я обнаружил нечто странное.
Инструмент: http://hotblocks.nl/tests/three/cubes.html
Это текущая настройка по умолчанию:
- Камера расположена на 210 градусов вверх и
- 500 назад и
- 246 вправо
- Камера немного повернута влево
- свет находится прямо над и светит во все стороны
Как можновидите, объекты находятся в самом низу области просмотра.Поэтому я хочу повернуть камеру вниз, чтобы увидеть больше из них.
Попробуйте: поверните camera.rotation.x
вниз.
Это работает, но угол поворота неправильный!Вместо того, чтобы вращать Камеру, это Мир, вращающийся вокруг своей оси Z.
Это не так, не так ли?
Ось Y также неверна.Он вращает мир вокруг своей оси Y.
Вращение камеры вокруг своей оси Z работает отлично: камера вращается, а не мир.
Я делаю это неправильно?Или неправильно это понимаете?
PS Поскольку вращение камеры происходит только вокруг оси Y, в результате вертикальные края объектов также должны быть вертикальными.В настройках по умолчанию они есть.Вращение камеры вокруг оси X не должно изменить это, но это так.Только вращение вокруг своей оси Z должно изменить это (и это делает).Я не прав?
PPS Я знаю о Camera.lookAt( THREE.Vector3 target )
, но это меняет поворот камеры, включая ее ось Z, и это не должно быть логично.