Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4

в 15:54, , рубрики: Unreal Engine, Компьютерная анимация, разработка игр

Всем доброго времени суток. Меня зовут Александр и уже год я занимаюсь разработкой игр на движке Unreal Engine 4.

Данный пост расскажет о наболевшей теме по работе с анимацией, так как в интернете приходилось либо просматривать по 3 часа видео ролики, либо копать тонны литературы в поисках нужной информации.

Мой пример затронет бесплатный пакет анимации Animation Starter Pack, в котором имеется замечательная анимация Aim_Space_Ironsights. Она позволяет персонажу от третьего лица направлять свое оружие в сторону прицела.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 1

Первым шагом следует сделать retarget anim assets на skeletal mesh своего персонажа. После этого открыть и остановить анимацию, выбрать нужный фрейм. Пусть наш персонаж смотрит вверх. Это 10 фрейм. Далее внизу на панели следует найти красную точку в белом кругу, которая обозначает record — запись и нажать ее. Указать путь куда следует загрузить анимацию и после остановить запись. Заходим в полученную анимацию и удаляем все фреймы, оставив только с 0 по 1.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 2

Таким же образом задаем анимацию когда персонаж будет смотреть вниз.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 3

И далее уже работаем стандартным способом, создаем BlendSpace1d указываем направление от -90 до 90.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 4
В плеере создаем переменную Direction которая будет на Tick записывать данные на угол обзора игрока по координате Y. Берем GetController достаем из него функцию getActorRotation и получем координату Y.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 5

Записываем данную переменную в наш BlueprintAnim в переменную direction прописав логику через cast To Player.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 6

И в конечной стадии в графе AnimGraph в Анимационном Blueprints устанавливаем нашу анимацию

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 7

Так же для корректной работы следует анимацию подкорректировать и воспроизводить ее выше кости spine_02.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 8

Таким образом анимация когда персонаж следит за вертикальной составляющей нашего прицела будет выполнятся не зависимо от того бежит персонаж, сидит или стоит на месте. Что бы заставить нашего персонажа по горизонтали следовать за прицелом, следует выставить в True значение UseControllerRotationYaw. Если данная логика должна срабатывать только на прицеливании то из Self получаем значение set UseControllerRotationYaw, в случае когда ее нужно выставить на постоянную работу то найти данное свойство можно в Pawn в компонентах в самом Character персонажа.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 9

Таким образом на выходе мы получаем персонажа который направляет свое оружие в сторону прицела.

Как создать анимацию прицеливания и как нарезать анимацию в игровом движке Unreal Engine 4 - 10

Автор: Железный человек

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js