Unreal Engine 4 https://uengine.ru/forum/ |
|
Как смешать анимации передвижения? https://uengine.ru/forum/viewtopic.php?f=19&t=12872 |
Страница 1 из 1 |
Автор: | kiteg [ 19 дек 2017, 06:44 ] |
Заголовок сообщения: | Как смешать анимации передвижения? |
Дано: -Вид сверху, персонаж поворачивается за курсором мышки через AddControllerYawInput(); -камера не поворачивается, только следует за персонажем; -движение персонажа не зависит от его поворота (w-движение вверх, s-вниз...). Нужно найти два значения по которым будут смешиваться анимации. Я по началу думал что можно взять эти значения из вектора скорости персонажа GetVelocity(). Проблема в том что если персонаж бежит вверх, а повёрнут вправо, то вектор скорости показывает что персонаж бежит вперёд, когда по логике вещей он бежит уже влево. В общем нужно что-то делать с вектором скорости в зависимости от вектора направления взгляда персонажа GetActorForwardVector(). Я так понимаю, что можно это сделать через MirrorByVector(), но я так и не смог разобраться как это сделать. Накиньте пожалуйста примерный путь решения этой задачки. |
Автор: | kiteg [ 19 дек 2017, 07:29 ] |
Заголовок сообщения: | |
Или может как-то возможно привести вектор скорости GetVelocity() в локальное координатное пространство персонажа? |
Автор: | kiteg [ 19 дек 2017, 09:05 ] |
Заголовок сообщения: | |
Нашёл решение: FVector animVector = FRotationMatrix(FRotator(0, GetControlRotation().Yaw, 0)).InverseTransformVector(GetVelocity()); |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |