Анимационные нотификаторы в UDK: события в анимации

Анимация в UDKАнимационные нотификаторы в UDK (Anim Sequence Notifies) — крайне полезная, даже можно сказать, незаменимая вещь. Они дают разработчику обратную связь из анимационной последовательности (Animation Sequence) в UnrealScript в виде вызовов определенных событий (функций) при анимации. Благодаря нотификаторам мы всегда сможем знать, в каком состоянии находится наш персонаж (точнее, в каком положении находится его тело).

При помощи анимационных нотификаторов можно создавать такие вещи, как звук шагов персонажа, обработчики ударов в боевой системе и даже правильную постановку стоп на неровной поверхности с использованием инверсной кинематики (IK). Я уже писал про создание основы системы постановки стоп персонажа, теперь пришло время ее доработать с использованием Anim Sequence Notifies (анимационных нотификаторов в UDK).
Об этом, а также о других применениях Anim Sequence Notifies будет мой сегодняшний пост.


( Читать дальше )
  • 0
  • 30 октября 2012, 11:47
  • dimanjy
  • 4

Процедурная (программная) анимация в UDK

Настало время заняться программированием анимации в UDK. Чтобы освоить этот аспект разработки игр на Unreal Engine, попробуем начать с чего-то простого, но в тоже время полезного. Создадим актера (Actor), который будет проигрывать различные заданные нами анимации в ответ на какое-либо внешнее воздействие или действие игрока. В качестве примера представим себе экскаватор, который игрок может заставить копать, нажав на рычаг или кнопку. Понятно, что экскаватор должен быть выполнен в виде модели со скелетной анимацией (SkeletalMesh). Если мы хотим заставить экскаватор ездить и при этом копать, то нам, возможно, придется использовать AnimTree и блендинг различных анимаций. Также вместо экскаватора можно представить себе какой-либо более-менее сложный роботизированный станок с механической рукой, или что-то в этом роде…

Для имитации простого механизма со скелетом я создал болванку, похожую на лапу экскаватора:

Простой SkeletalMesh в UDK



( Итак, приступим... )