Глава 6.1: Анимация персонажа. Теория

Материал из Blender3D.

Перейти к: навигация, поиск

Автор Роланд Хесс (Roland Hess)

Перевод GoG, Дмитрий Гриценко (aka AzoDeeps)

Содержание


Анимация персонажей - это огромный раздел, на освоение которого могут потребоваться годы. Эта глава не научит вас быть хорошим аниматором персонажей. Она даст вам базовое представление об инструментах персонажной анимации в Blender, достаточное для начала изучения этого раздела. Когда вы овладеете ими, советуем вам посмотреть несколько прекрасных работ в Blender Summer of Documentation - "Introduction to the Principles of Animation" от Willian Padovani Germano. Так же, как и рисование, персонажная анимация требует "выйти за рамки" Blender, чтобы улучшить процесс обучения.

Имея дело с персонажной анимацией, вы чаще всего будете работать с неким подобием скелета - арматурой. Кости арматуры могут быть связаны друг с другом разными способами, и если всё сделано правильно, могут составлять полностью контролируемый, интуитивно управляемый риг персонажа (о риггинге сказано в Главе 7). Каждая кость арматуры может быть изменена отдельно, как если бы арматура была составлена из меньших, связанных объектов.

Хотя определённые режимы отображения арматуры могут выглядеть совсем как меши персонажа, сами арматуры никогда не рендерятся. Арматуры должны быть связанными с мешем, поэтому анимация арматуры создаст соответствующее изменение меша. Покадровая арматурная анимация организована в Actions в Action Editor (Редактор Действий). Для более комплексных задач анимации, эти Actions можно комбинировать и манипулировать ими в NLA Editor (Редактор Нелинейной Анимации).

Создание поз и установка ключевых кадров

Ключевые кадры и трансформации костей задаются почти так же, как и у обычных объектов. Чтобы сделать позу и установить её в качестве ключевого кадра, арматура должна быть в Pose Mode (Режим Позы), который нужно выбрать из заголовка 3D-окна, или нажать Ctrl-Tab.

Pose Mode (Режим Позы) в заголовке 3D-окна
Увеличить
Pose Mode (Режим Позы) в заголовке 3D-окна


Примечание: Арматуры анимируются в Pose Mode (Режим Позы), доступной по нажатию Ctrl-Tab.


В Pose Mode кости выбираются по нажатию ПКМ, рамкой (кнопка В), или с помощью лассо (Ctrl-ЛКМ).

Если выбранная кость соединена с остальными в составе цепи, то её можно только вращать. Одиночные кости и кости-основания цепи можно и вращать, и перемещать.

Кости в середине руки могут только вращаться. Выделенная кость, управляющая движением глаз персонажа, не является частью цепи, и её можно вращать и перемещать
Увеличить
Кости в середине руки могут только вращаться. Выделенная кость, управляющая движением глаз персонажа, не является частью цепи, и её можно вращать и перемещать

Клавиши G, S и R также выполняют свои стандартные функции при работе с костями. Функция перемещения не доступна для средних костей, но по нажатию G такие кости могут вращаться, то есть G=R. Это сделано для вашего удобства.

Во время постановки позы костей с большой свободой вращения, например, головы, нажмите R дважды, чтобы войти в режим вращения "трэкбол" (Trackball). Такой способ вращения более интуитивен, чем стандартные.

Манипуляторы

Если вы не используете манипуляторы трансформации, моделируя в Blender, то в работе с персонажной анимацией они могут быть крайне полезны. Нажмите либо Ctrl-пробел, либо соответствующие кнопки в заголовке 3D-окна, чтобы вызвать их. Когда появятся манипуляторы, установите ориентацию (Transformation Orientation, Alt-Пробел) на Normal. Теперь при выборе кости манипулятор будет выравниваться по отношению к ней. Убедитесь, что центр трансформации установлен на центральной точке выделения (Median Point), а не на 3D-курсоре (Cursor), этого стоит избегать при работе с арматурой.

Манипулятор в режиме вращения, ориентация Normal. Манипулятор включен для нижней левой кости
Увеличить
Манипулятор в режиме вращения, ориентация Normal. Манипулятор включен для нижней левой кости

Преимущество манипуляторов при установке позы в том, что они позволяют вращать кости в один клик, а также отличное визуальное отображение производимых действий.

Вывод: Клавиши G, S и R, движения мышью, манипуляторы и стандартные методы выделения - всё так же работает и с костями.

Установка ключевых кадров

Когда вы перемещаете или вращаете кости для создания поз и их анимирования, вы должны устанавливать ключевые кадры. Нажатие I в 3D-окне работает так, как везде в Blender. Появится список ключей, позволяющий выбрать именно ту трансформацию, которую вам нужно зафиксировать. Хотя очень рекомендуется переключиться на автоматическую установку ключей при работе с арматурами. Иногда вам придётся тратить по нескольку минут на создание подходящей позы, и будет очень обидно потерять результат своего труда, нечаянно нажав на кнопку смены кадра.

Включите автоматическую установку ключевых кадров нажатием по кнопке Record (Запись) в окне Timeline.


Совет: Автоматическая установка ключевых кадров должна быть разрешена при анимации персонажей.


Шкала времени и кнопка Record (Запись)
Увеличить
Шкала времени и кнопка Record (Запись)

Создание позы с помощью ИК

ИК (IK) - сокращение от "Инверсной Кинематики" - способ просчёта позы. С ИК вы перемещаете конец цепи, например, ступню персонажа, а остальные части ноги следуют за ней. Хотя, по идее, ступня как часть ноги имеет только одну свободу трансформации - вращение, используя ИК, можно добавить ещё одну - перемещение. О настройке ИК-цепей вы можете узнать больше в Главе 7.

В риге с ИК нужно устанавливать ключ только для конечной кости, позиции остальных костей Blender просчитывает самостоятельно.

Увеличить
За перемещением ступни следует остальная часть ноги
Увеличить
За перемещением ступни следует остальная часть ноги

Автоматическая инверсная кинематика (AutoIK)

AutoIK - ещё один из способов создания поз. Если разрешить использование AutoIK в панели редактирования арматуры (F9), то любая выделенная кость становится конечной для временной ИК-цепи. Поэтому вы можете начать создавать позы для не ИК-частей арматуры, например, руки, используя удобство ИК, а потом поработать над позицией каждой кости индивидуально.

Кнопка AutoIK на панели управления арматурой
Увеличить
Кнопка AutoIK на панели управления арматурой

Так как AutoIK - это только лишь инструмент создания поз, перемещённые кости не сохранят своих позиций, пока каждой из них не будет задан ключевой кадр. Это прямо противоположно стандартной ИК-цепи, где ключевой кадр требуется только для конечной кости. Конечно, об этом можно не беспокоиться, если использовать автоматическую расстановку ключевых кадров (Automatic Keyframing), как было сказано ранее.

Редактор Действий (Action Editor)

Когда вы изучали анимацию отдельных объектов в Главе 3, вы работали с окном IPO-кривых, помогавшим понять, что происходит с анимацией. Конечно, работая с арматурой, вы будете выставлять ключи для нескольких костей в разных комбинациях на нескольких кадрах. А IPO позволяет показывать одновременно кривые и ключи только для одного объекта. Так как же быть?

Редактор Действий показывает детальную информацию об анимации объектов.

Редактор Действий и IPO для одной анимации
Увеличить
Редактор Действий и IPO для одной анимации

На иллюстрации выше показан Редактор Действий и IPO для одной и той же части анимации объекта. Заметьте, что каждому ромбику в Редакторе Действий соответствует ключ в окне IPO.

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

Редактор Действий показывает много каналов анимации костей
Увеличить
Редактор Действий показывает много каналов анимации костей

Каждый ромбик показывает ключевой кадр анимации кости, указанной в левой колонке. Какой вид ключа? Это может быть координата, вращение или изменение размера. Нет способа это уточнить без открытия окна IPO, но практика показывает, что это, обычно, не важно.

В Редакторе Действий вы можете следить, для каких костей и на каком кадре выставлены ключи.


Совет: Редактор Действий показывает ключевые кадры сразу для нескольких костей.


Команды и функции

Работа с ромбиками во многом схожа с работой с объектами в 3D-окне. Ключи можно выделять по нажатию ПКМ, или рамкой, по нажатию B. Ключи можно перемещать нажатием G. Если зажать Ctrl, перемещая ключ, он будет прилипать к каждому кадру или к части кадра. Если выбрано более одного ключа, используя S, можно увеличить промежутки между ними относительно текущего кадра.

Ключи могут быть скопированы по Shift-D. Дублированные ключи сразу переходят в режим перетаскивания и фиксируются по клику ЛКМ. Если вы хотите, чтобы кость сохраняла свою позицию некоторое время в середине анимации - дублируйте ключ этой позиции и переместите его на конечный кадр.

Ключ в середине - копия левого. Жёлтая полоска между ними показывает, что позиция "заморожена" в этих кадрах
Увеличить
Ключ в середине - копия левого. Жёлтая полоска между ними показывает, что позиция "заморожена" в этих кадрах

Иногда перемещение ключей происходит не точно на кадр, а где-то рядом. Довольно трудно поставить ключ на точную позицию, не используя привязку. Shift-S вызовет меню привязки, позволяющее выровнять ключи по ближайшим целым кадрам.


Совет: Ключи в Редакторе Действий управляются теми же командами, что и остальные объекты Blender. Shift-S вызывает меню привязки.

Выделение каналов и костей в Редакторе Действий

Если вы работаете с арматурой с дюжинами костей, бывает сложно найти и выделить нужную кость в 3D-окне. Кликнув на канале с именем нужной кости в Редакторе Действий, вы выделите не только этот канал, но и саму кость во вьюпорте.


Корректировка тайминга

Вот пример того, как Редактор Действий может улучшить работу над анимацией.

Рис.10
Увеличить
Рис.10
Рис.11
Увеличить
Рис.11
Рис.12 (Рис.10-12) 3 кадра ходьбы персонажа. Обратите внимание, как левая рука колеблется назад
Увеличить
Рис.12 (Рис.10-12) 3 кадра ходьбы персонажа. Обратите внимание, как левая рука колеблется назад

В Редакторе Действий показаны установленные 2 ключа для каждой выделенной кости левой руки.

Рис.13 В Редакторе Действий показаны установленные 2 ключа для каждой выделенной кости левой руки
Увеличить
Рис.13 В Редакторе Действий показаны установленные 2 ключа для каждой выделенной кости левой руки


Скажем, вы хотели бы, чтобы анимация протекала очень медленно в начале и резко ускорялась к концу. Вы бы отправились редактировать в IPO каждую кривую и хендлер, для каждой кости отдельно. Но можно поступить проще.

Поместите указатель кадра (зелёная полоска) посередине между двумя ключами, чей тайминг вы хотите изменить. Убедитесь, что кости, у которых есть ключи, выделены. Для внесения новых ключей нажмите I в 3D-окне и выберите Avail из всплывающего меню. Это установит ключи только для IPO, уже имеющих ключевые кадры.

Создание двух новых ключей в Редакторе Действий:

Рис.14 Новые ключи, которые изменяют позу в середине движения.
Увеличить
Рис.14 Новые ключи, которые изменяют позу в середине движения.


Новые ключи выделятся в Редакторе Действий. Перетащите их (G) очень близко к концу вашей анимации. Произойдёт "цепной эффект", и первая половина действия будет длиться долго, а вторая - очень быстро.

Похожая техника может добавить времени для удержания позиции. В данном случае установите ключи созданные слишком близко к концам анимации и передвиньте их к центру.

Управление Действиями

Арматура может иметь множество Действий (Actions). Действия создаются, выбираются и удаляются в заголовке Action Editor, используя стандартные инструменты редактирования датаблоков.

Рис.18: Блок управления Действий в Редакторе Действий
Увеличить
Рис.18: Блок управления Действий в Редакторе Действий


Окно Редактора Действий управляется точно так же, как окно IPO или любое другое 2D-окно. Всё доступное содержимое может быть увидено по нажатию Home. Масштабировать вид можно колесом мыши, а C выравнивает вид относительно текущего кадра.

Редактор Нелинейной Анимации (NLA Editor)

Что такое NLA (Not-Linear Animation - Нелинейная анимация), и когда её нужно использовать?

Редактор NLA позволяет комбинировать и соединять в одну часть анимации ключи, созданные вами ранее в Редакторе Действий. Редактор Действий позволяет производить манипуляции с отдельным ключом, а Редактор NLA позволяет манипулировать несколькими ключами, как единым целым.

Рис.19: Редактор NLA.
Увеличить
Рис.19: Редактор NLA.

Имена объектов, которые могут использовать NLA, появятся в левой колонке окна. Как и в редакторе действий, клик на любом из этих имён выделит соответствующий объект в 3D-окне. Информация об NLA будет показываться только для объектов, расположенных на видимых слоях. Так что, если вы уверены, что использовали NLA для какого-то объекта, но его имя не появляется в окне, то он, скорее всего, расположен на невидимом слое. Но иногда объекты, вроде арматуры, которые по идее должны использовать NLA, даже если на видимом слое, не появляются в NLA-окне. Это легко исправляется выделением объекта в 3D-окне и нажатием Shift-A->Object->Insert Keyframe(или просто I - прим.пер.) для добавления Действия в Редактор NLA.

Ниже и справа от объектов находятся разные дорожки, показывающие Действия. Они называются Дорожками Действий (Action Strips). Дорожки для отдельного объекта могут быть показаны или скрыты по нажатию на треугольник слева от имени объекта.

При использовании NLA, Blender генерирует анимацию основанную на том, где на временной шкале в NLA находятся полоски действий. Если у вас есть действие для приветствия с ключами на кадрах с 1 по 25, но хотите чтобы ваш персонаж на самом деле приветствовал с 65 кадра по 89, вы можете выбрать все маркеры ключевых кадров в редакторе действий и перенести их на 64 кадра вперед. Тогда любой персонаж, который использует действия, должен будет использовать тот же диапазон кадров.

Однако, если бы вы использовали NLA, вы могли бы просто сдвинуть полоску действия приветствие на 64 кадра вперед по времени, и NLA будет производить анимацию как вы хотели, оставив действие в его первоначальном состоянии для удобства повторного использования.

Помимо просто изменения времени, NLA может быть использован для убыстрения или замедления действий. Увеличение полосок действий Strip, позволяет охватить большую часть времени, в результате чего первоначальное действие воспроизводится более медленно. Уменьшение полоски позволяет воспроизводить действие более быстрыми темпами.

Добавление и удаление полосок NLA

Полоски действий добавляются в NLA редактор, путем выбора объекта в 3D окне или левой колонке редактора и нажатия Shift-A. При этом появляется меню отображающее все действия, которые можно добавить к выбранному объекту. Полоски действий добавляются с первого кадра в текущий кадр, установленный в счетчике кадров в редакторе.

Выделенные полоски действий могут быть удалены с помощью клавиши X.

Преобразование полосок действий

Мы уже говорили о том, что полоски действий можно перемещать и изменять их размер. Стандартные Blender методы работают в NLA редакторе, также как и везде. Нажатие клавиши G переключает в режим захвата и перемещения, поэтому вы можете перемещать отдельные полосы вдоль временной шкалы. Полоски могут быть расширены или уменьшены с помощью клавиши S. Подобно набору ключевых маркеров в редакторе действий, масштабирование происходит относительно текущего кадра во временной шкале.

Переключение между NLA режимом и режимом редактора действий

Иконка слева от имени объектов в NLA редакторе фактически переключающаяся кнопка, изменяющая состояние при нажатии ЛКМ на нее. Эти два состояния на рисунках:

Рисунок CAD.21: NLA режим.
Увеличить
Рисунок CAD.21: NLA режим.
Рисунок CAD.22: Режим действия.
Увеличить
Рисунок CAD.22: Режим действия.

Когда вы в NLA режиме, анимация арматуры задается полосками и параметры настраиваются в NLA редакторе. В режиме действий, NLA игнорируется, и анимация задается действиями в редакторе действий. Если ваш персонаж игнорирует ваши настройки NLA, это, скорее всего, из-за этой кнопки.

Слои и смешивание полосок действий

По мере добавления новых полосок действий объекта, новые появляются ниже существующих полосок. Полоски, которые появляются ниже NLA стека имеют преимущество по сравнению с полосками, которые находятся выше в стеке. Если полоска для ходьбы содержит анимацию ключей для ног, ступней, рук и ладоней, а нижняя полоска содержит ключи для анимации рук и ладоней, то ключи для рук и ладоней нижней полоски будут использоваться вместо ключей верхней полоски.

Это метод которым смешивается NLA анимация.

Если стек полосок в NLA редакторе, не работает как вы хотите, он может быть изменен путем выбора полоски и нажатия Ctrl+PageUp и Ctrl+PageDown, для смещения полоски вверх и вниз, соответственно.

Свойства полоски

Полоски действий могут сделать больше для вашей анимации, чем просто изменение местонахождения действий вдоль временной шкалы и изменения его скорости. Используя клавишу N для панели Transform Properties, NLA редактор позволяет устанавливать дополнительные опции.

Рисунок CAD.20: Панель Transform Properties, NLA редактора.
Увеличить
Рисунок CAD.20: Панель Transform Properties, NLA редактора.

Strip Start/Strip End: Местоположение полоски на временной шкале и размеры могут быть скорректированы на панели Transform Properties с помощью органов управления Strip Start и Strip End. Используя панель, вы можете ввести значения непосредственно для начала и конца выбранной полоски на временной шкале, что позволяет полностью синхронизировать действия с другими событиями.

Repeat: Действия могут быть настроены так, чтобы повторяться за счет увеличения значения Repeat кратное 1.0. Полоски действий, для которых значение Repeat превышает 1.0 отображает небольшие вертикальные линии, показывающие места повторений на временной шкале. Имейте в виду, что использование Repeat не будет автоматически приводить к сглаженному повторению действий. Если действие не было создано с одинаковой начальной и конечной позой, вы будете видеть "пропуски" вашей арматуры, при начале каждого повторения.

Blendin/Blendout: Если у вас слой нескольких полосок действий наложенных по времени, вы увидите, что анимация на одной полоске начинается и заканчивается мгновенно и полностью в начале и конце полоски. Это может привести к перепрыгиванию ключей костей на местах перехода.

Рисунок CAD.24: Нулевые значения Blendin/Blendout, на нижней полоске.
Увеличить
Рисунок CAD.24: Нулевые значения Blendin/Blendout, на нижней полоске.

Чтобы это исправить, вы можете установить значения Blendin/Blendout, чтобы сказать NLA за сколько кадров смешивать анимацию. На втором рисунке, анимация начала и конца нижней полоски влияет более постепенно, следуя уклонам, отображенным на концах полоски. Более низкие значения создают быстрые переходы, в то время как более высокие значения займут больше времени.

Рисунок CAD.23: Были установлены значения Blendin/Blendout.
Увеличить
Рисунок CAD.23: Были установлены значения Blendin/Blendout.

С инструментами позиционирования и установки ключевых кадров, редактором действий и NLA редактором, вы будете заняты в течении долгого времени, обучаясь оживлению своих персонажей.

Личные инструменты