Unreal Engine 4
http://uengine.ru/forum/

Поворот на цель
http://uengine.ru/forum/viewtopic.php?f=3&t=75108
Страница 1 из 1

Автор:  Alexander2002 [ 29 фев 2020, 21:09 ]
Заголовок сообщения:  Поворот на цель

Здравствуйте. Опишу задачу. У меня есть координаты точки (цели), полученные с помощью курсора (в игре вид сверху, так что с точностью определения координат проблем нет). После получения координаты цели компоненты персонажа должны с некоторой скоростью повернутся на цель (если так будет понятнее: компоненты персонажа (Static Mesh Component) - орудия корабля, типа линкора. И их нужно с некоторой скоростью (например 15 градусов в секунду) повернуть на цель). Не могу разобраться, как это сделать. Ясно, что для этого наверное нужно RotationFromXVector, но не могу понять, как его подключить - орудия, даже с мгновенным перемещением скачут во все стороны, без видимой закономерности. Подскажите пожалуйста, как решить данную задачу.

Автор:  Agny [ 01 мар 2020, 07:59 ]
Заголовок сообщения: 


Автор:  Alexander2002 [ 01 мар 2020, 10:34 ]
Заголовок сообщения: 

Спасибо. Как сделать вращение плавным теперь понятно, но как получить верный target rotation? Не знаю, как прикрепить картинку. Код следующий: в event tick выполняется для массива с "орудиями" For each loop. Для каждого компонента я получаю get world rotation и отправляю его в current Rinterp to. На target идёт следующая комбинация: переменная локации цели, rotation from Xvector. Из Rinterp to полученное значение подаётся на Set world rotation. Результат данного кода следующий: орудия поворачиваются не на ту точку, куда нужно (то есть сразу ясно, что target неверный); все орудия "смотрят" в одном направлении. Но этого также быть не должно (орудия, расположенные в линию должны быть повёрнуты по разному, так чтобы их векторы направления вперёд пересекались в точке цели, а не шли параллельно). Что сделано неверно?

Автор:  Agny [ 01 мар 2020, 10:47 ]
Заголовок сообщения: 


Автор:  Alexander2002 [ 01 мар 2020, 11:18 ]
Заголовок сообщения: 

Спасибо! Теперь всё работает правильно.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/