У меня есть большая 2D-плоскость кругов, которую я увеличивал и увеличивал (и хорошо отслеживал TrackballControls), используя положение Z камеры (PerspectiveCamera).Должен ли я использовать поле зрения или положение камеры z для увеличения/уменьшения масштаба?
Недавно я добавил camera.fov в свои элементы управления DAT GUI, чтобы поиграть с ним, и обнаружил, что могу полностью увеличить или уменьшить масштаб сцены, используя диапазон от 0 до 180 для поля обзора.
Какой метод использовать и почему?
Отредактировано:
Есть несколько способов, чтобы сделать объект, кажется, ближе и дальше от камеры:
- перемещения положения объекта (слишком много объектов, поэтому не использует этот один)
- перемещения положения камеры
- изменяя свойство FOV камер
- меняющегося трансфокатор свойство камеры
Чтобы иметь возможность плавно прокручивать, используя колесико мыши, в и из сцены, содержащей большие геометрии (миллионы вершин), есть причина, по которой я не должен или должен использовать один из методы выше других?
Вы также можете использовать 'camera.zoom (2); camera.updateProjectionMatrix(); 'Ваш вопрос, к сожалению, основан на мнениях. – WestLangley
Изменение масштаба изображения, похоже, изменяет fov - https://github.com/mrdoob/three.js/blob/master/src/cameras/PerspectiveCamera.js#L95 – dps27a
Все дороги указывают на изменение значения fov, но это не так. Не играйте хорошо с TrackballControls. После того, как вы увеличили масштаб достаточно далеко, а затем попытайтесь передвигаться, движения не учитывают, насколько вы близки, и поэтому панорамирование действует как ваш гораздо дальше. – dps27a