Перемещение
Содержание
Набор универсальных блоков, работающих с настройкой движения Varwin объектов. Настроить положение объекта можно как в режиме редактирования 3D сцены, так и в редакторе логики Blockly
Инспектор
В настройках сцены, в инспекторе, вы можете установить положение объекта по трех осям: X, Y и Z
Подробнее об интерфейсе 3D редактора можно узнать в статье «Знакомство с интерфейсом»
Blockly
Действия
- Задать позицию X: Y: Z: - мгновенно перемещает указанный объект в позицию, заданную с помощью координат в мировом пространстве Перемещение по координатам
- Мгновенно переместиться в центр объекта N - мгновенно перемещает указанный объект по координатам второго объекта
- Перемещаться в направлении оси X/Y/Z со скоростью N м/с - запускает процесс перемещения указанного объекта в направлении выбранной оси с заданной скоростью
- Перемещаться в направлении оси X/Y/Z на расстояние N м со скоростью M м/с - запускает процесс перемещения указанного объекта в направлении выбранной оси на заданное расстояние с заданной скоростью
- Перемещаться в направлении оси X/Y/Z в течении N с со скоростью M м/с - запускает процесс перемещения указанного объекта в направлении выбранной оси в течение указанного времени с заданной скоростью
- Перемещаться к объекту N со скоростью M м/с - запускает процесс перемещения указанного объекта в направлении второго объекта с заданной скоростью
- Перемещаться к координатам X: Y: Z: со скоростью N м/с - запускает процесс перемещения указанного объекта в направлении указанных координат с заданной скоростью. Перемещение продолжается, пока объект не достигнет координат
- Перемещается по маршруту Список со скоростью N - запускает процесс перемещения указанного объекта по маршруту с указанной скоростью. Маршрут представляет собой список объектов или координат в мировом пространстве, заданных векторами Перемещение по маршруту
Перемещение продолжается, пока оно не будет остановлено блоком завершения перемещения. Чтобы изменить направление перемещения, используйте отрицательные значение скорости
Завершить/приостановить/продолжить любое перемещение - блоки управления перемещением объекта:
Завершить - параметр блока, завершающий любое передвижение объекта
Приостановить - параметр блока, приостанавливающий движение объекта
Продолжить - параметр блока, возобновляющий движение объекта, который был приостановлен блоком Приостановить
Переменные
- Объект перемещается в данный момент - возвращает «истину», если указанный объект перемещается в данный момент. В противном случае возвращает «ложь»
- Установить Объект минимальное расстояние остановки перед целевым объектом N м. - задает минимальное расстояние между заданным и целевым объектами, чтобы движение к нему считалось завершенным. Вычисляется расстояние между центрами объектов, поэтому использование значения 0 не рекомендуется
- Установить Объект лицевая сторона при перемещении = X: Y: Z: - задает сторону объекта, которой он будет направлен в сторону перемещения
Значение для настройки перемещения объекта «вперёд лицом»: (x: 0; y: 0; z: 1)
- Получить от Объект позиция по оси X/Y/Z - возвращает позицию указанного объекта по выбранной оси в мировых координатах
- Получить от Объект позиция - возвращает позицию указанного объекта в мировых координатах в виде вектора [X; Y; Z]
- Выполнить Объект расстояние до объекта - возвращает расстояние по прямой от указанного объекта до второго объекта
- Выполнить Объект расстояние до объекта - возвращает расстояние по прямой от указанного объекта до мировых координат, указанных с помощью вектора
Расстояние возвращается в метрах в виде вещественного числа
События
- Завершил любое перемещение для Объект - событие срабатывает, когда указанный объект завершает любое перемещение
Перемещение считается завершенным, если объект достиг целевой позиции, или если перемещение было остановлено соответствующим блоком
- Завершил перемещение к целевому объекту для Объект - событие срабатывает, когда указанный объект завершает перемещение к целевому объекту
- Завершил движение к целевым координатам для Объект - событие срабатывает, когда указанный объект завершает перемещение к целевым координатам
- Достиг точки маршрута для Объект - событие срабатывает, когда указанный объект, двигающийся по маршруту, достигает очередную точки маршрута
Примеры использования
Перемещение по координатам
Перемещение по координатам - функция позволяющая перемещать объект, указывая для него необходимые глобальные координаты в пространстве сцены. Подробнее о положении объектов на сцене и их координатах
Указание координат в редакторе Blockly равноценно указанию их в редакторе сцены в инспекторе в параметре объекта «Позиция»
Перемещение по маршруту
Перемещение по маршруту представляет из себя создание списка из объектов, которые и будут являться точками создаваемого маршрута для вашего объекта
Для создания маршрута обычно используется стандартный объект точка, так как её не видно в режиме воспроизведения
Получение данных об объекте
Рассмотрим на примере, как работают некоторые из блоков в разделе «Переменные»
Для реализации примера будем использовать цепочку обновление которой выполняется постоянно. Поместим внутрь неё логическое условие, которое будет выполняться в случае неподвижности куба. Если куб статичен, то в объект «Текст» будут передаваться значения трех параметров:
- Возвращение координат объекта по оси X
- Возвращение координат объекта по всем трем осям X, Y, Z
- Возвращение расстояния от одного объекта до другого, в нашем случае это объекты куб и игрок