Анимирование объекта placement

О том, как создавать анимации, которые меняют положение объекта (placement)

Подготовка объекта к movement анимации:

  1. Для movement анимаций placement необходимо прилинковать к кости basis. Если placement будет прилинкован к body, то не сможет давать полноценное движение вперёд, а только шевеление вокруг body

  2. ЦЕНТР объекта определяется по вертикальной проекции позиции кости placement.

  3. Направление ВПЕРЕД определяется по вертикальной проекции оси X кости placement.

Крайне желательно, чтобы данные полученные из placement совпадали с реальными.

В игре положение объекта можно посмотреть через консольную команду showAxes 1.

Отображение костей можно включить командой v_showbonesnames "placement" "basis" "foresight"

Отображение выключается по консольной команде "showbonesnames 0" Отображение направления осей в кости включается по нажатию "Alt+S" или по консольной команде "v_showbones 1"

Правило №1 (для анимаций, которые меняют положение объекта)

В НУЛЕВОМ кадре анимации ориентация и позиция placement должны ТОЧНО совпадать с basis в ВЕРТИКАЛЬНОЙ ПРОЕКЦИИ. В ПЕРВОМ кадре анимации ориентацию и позицию placement нужно установить на нужное для анимации место. Например, совместить его с body. В противном случае:

  • анимация будет в нулевом кадре перекидывать объект в другое место

  • нельзя будет вызывать анимации циклически, т.к. объект начнёт дрейфовать по карте

В описании анимации нужно прописать блок {movement}, например:

{binary "rlook_gun" {movement}}

Правило №2 (для анимаций, у которых placement в первом кадре был уже смещён)

Для того, чтобы не было разрывов, в описании анимации нужно прописать блок {pinback N}, например:

  • {pinback 1} ; работает по placement

  • {pinback 2} ; работает по body

  • {pinback} ; тоже, что и {pinback 1}

Правило №3 (для цепочек анимаций, в которых есть анимации и с movement и c pinback)

Для анимаций кидания гранаты из-за угла и других, где есть похожая цепочка анимаций

  1. "исходная точка"

  2. rlook_item (movement, вперед)

  3. "точка бросания"

  4. rlook_throw_begin (pinback, вперед)

  5. rlook_throw_end (pinback, вперед)

  6. "точка бросания"

  7. rlook_item (movement, назад)

  8. "исходная точка"

Для того, чтобы "исходная точка" после цепочки анимаций не изменялась нужно:

  • совместить положение кости body в первом кадре "rlook_throw_begin" и последнем кадре "rlook_throw_end"

  • в описании анимаций "rlook_throw_begin" и "rlook_throw_end" использовать ключевое слово {pinback 2}

Last updated