Лимиты на перемещение камеры Transform внутри сцены
28 декабря 2015 14:00
Приветствую, уважаемые!
Можно ли установить ограничение на перемещение камеры (Transform), которая свободно перемещается внутри сцены?
Пока я придумал, только сделать проверку позиции камеры по x,y,z. Если камера удаляется дальше чем на 150, тогда задаём заново позицию камеры на стартовую при помощи set_translation(camObj, 0, 0, 0). Это работает, но это не совсем то, что хотелось бы видеть.
Хотелось бы, сделать так, чтобы камера при свободном перемещении не могла удалится от стартовых координат дальше установленного лимита.
Есть для этого подходящая функция в b4w ?
Можно ли установить ограничение на перемещение камеры (Transform), которая свободно перемещается внутри сцены?
Пока я придумал, только сделать проверку позиции камеры по x,y,z. Если камера удаляется дальше чем на 150, тогда задаём заново позицию камеры на стартовую при помощи set_translation(camObj, 0, 0, 0). Это работает, но это не совсем то, что хотелось бы видеть.
Хотелось бы, сделать так, чтобы камера при свободном перемещении не могла удалится от стартовых координат дальше установленного лимита.
Есть для этого подходящая функция в b4w ?
28 декабря 2015 14:27
Если я правильно понял, то в моём случае используется камера типа Hover и чтобы установить ей лимиты, надо использовать функции hover_set_horiz_trans_limits() и hover_set_vert_trans_limits()
Вот ссылка на документацию https://www.blend4web.com/api_doc/module-camera.html#.hover_set_horiz_trans_limits
Правильно?
Вот ссылка на документацию https://www.blend4web.com/api_doc/module-camera.html#.hover_set_horiz_trans_limits
Правильно?
28 декабря 2015 14:31
28 декабря 2015 14:49
28 декабря 2015 14:53
28 декабря 2015 15:07
Поправка, я использую камеру типа TARGET. И установленные лимиты проблемы не решают. Объект можно перетащить за пределы видимости сцены, зажав правую кнопку мыши. Такая же проблема есть в демке автоконфигуратора https://www.blend4web.com/ru/demo/car_configurator/
28 декабря 2015 15:26
28 декабря 2015 15:43
target_set_distance_limits(camobj, limitsnullable) - это функция задаёт минимальное и максимальное значение дистанции от пивота до камеры, но когда перетаскиваешь камеру зажав правую кнопку мыши, также перетаскиваешь точку пивота. Соответственно этот лимит не подходит.
Вроде подходящего лимита предусмотренного движком для данной ситуации нет.
Но вариант с блендером может сработать, надо попробовать.
Вроде подходящего лимита предусмотренного движком для данной ситуации нет.
Но вариант с блендером может сработать, надо попробовать.