Разрабатывая свой проект на тему космоса, я столкнулся с тем, что в Three.js почему-то нет готового и удобного инструмента управления камерой, подходящего для подобных задач.
Я, конечно, признаю, что просто плохо искал.
Но довольно длительные поиски не дали результатов.
ОрбитаУправление — традиционный любимец примеров на Three.js, не умеет переворачивать камеру и не умеет делать много других необходимых вещей.
ТрекболУправление - примечательна тем, что камера вращается вокруг объекта как ей заблагорассудится, и вверх ногами тоже, но при этом не может вращаться по оси зрения, не может двигаться вперед-назад без изменения масштаба, нет удобной регулировки скорость движений и поворотов.
FlyControls - наоборот, позволяет сделать «бочку» и изменить скорость, но… что случилось с вращением камеры вокруг рассматриваемого объекта.
Можно было, конечно, выбраться с помощью всяких костылей, но как-то это было не комильфо.
Убедившись, что готового решения для моих целей не существует, я решил создать его сам.
Если кому интересно, смотрите кат. За основу я решил взять TrackballControls.js, открыв его, вижу авторов:
Теги: #Разработка игр #JavaScript #webgl #threejs #камера #FLY #управление/** * @author Eberhard Graether / http://egraether.com/ * @author Mark Lundin
-
«4 Утра — Самое Продуктивное Время»
19 Oct, 24 -
История Веб-Поиска Google Разочаровывает
19 Oct, 24 -
3D-Печать В Производстве Дронов
19 Oct, 24 -
Кроссворд «Почувствуй Себя Аналитиком Soc»
19 Oct, 24