Анимирование объекта placement
О том, как создавать анимации, которые меняют положение объекта (placement)
Подготовка объекта к movement анимации:
Для movement анимаций placement необходимо прилинковать к кости basis. Если placement будет прилинкован к body, то не сможет давать полноценное движение вперёд, а только шевеление вокруг body
ЦЕНТР объекта определяется по вертикальной проекции позиции кости placement.
Направление ВПЕРЕД определяется по вертикальной проекции оси X кости placement.
Крайне желательно, чтобы данные полученные из placement совпадали с реальными.
В игре положение объекта можно посмотреть через консольную команду showAxes 1.
Отображение костей можно включить командой v_showbonesnames "placement" "basis" "foresight"
Отображение выключается по консольной команде "showbonesnames 0" Отображение направления осей в кости включается по нажатию "Alt+S" или по консольной команде "v_showbones 1"
Правило №1 (для анимаций, которые меняют положение объекта)
В НУЛЕВОМ кадре анимации ориентация и позиция placement должны ТОЧНО совпадать с basis в ВЕРТИКАЛЬНОЙ ПРОЕКЦИИ. В ПЕРВОМ кадре анимации ориентацию и позицию placement нужно установить на нужное для анимации место. Например, совместить его с body. В противном случае:
анимация будет в нулевом кадре перекидывать объект в другое место
нельзя будет вызывать анимации циклически, т.к. объект начнёт дрейфовать по карте
В описании анимации нужно прописать блок {movement}, например:
Правило №2 (для анимаций, у которых placement в первом кадре был уже смещён)
Для того, чтобы не было разрывов, в описании анимации нужно прописать блок {pinback N}, например:
{pinback 1} ; работает по placement
{pinback 2} ; работает по body
{pinback} ; тоже, что и {pinback 1}
Правило №3 (для цепочек анимаций, в которых есть анимации и с movement и c pinback)
Для анимаций кидания гранаты из-за угла и других, где есть похожая цепочка анимаций
"исходная точка"
rlook_item (movement, вперед)
"точка бросания"
rlook_throw_begin (pinback, вперед)
rlook_throw_end (pinback, вперед)
"точка бросания"
rlook_item (movement, назад)
"исходная точка"
Для того, чтобы "исходная точка" после цепочки анимаций не изменялась нужно:
совместить положение кости body в первом кадре "rlook_throw_begin" и последнем кадре "rlook_throw_end"
в описании анимаций "rlook_throw_begin" и "rlook_throw_end" использовать ключевое слово {pinback 2}
Last updated