Документация Blender'а Том I - Руководство Пользователя |
||
---|---|---|
Анимация персонажей |
Автор: Claudio 'Malefico' Andaur
Относится к Blender v2.31
В этом учебнике мы создадим цикл ходьбы и используем его с опцией «Path» в редакторе нелинейной анимации. Для того чтобы понимать текст, вы должны иметь базовые знания об инструментах анимации; также для успешного результата стоит запастись терпением. Настоятельно рекомендуем прочесть предыдущие разделы документации, относящиеся к нелинейной анимации.
Мы создадим персонажа вроде того, что описан в главе «Анимация конечностей», у которого косточки ступни отделены от остальной ноги и используется дополнительная кость для привязки привода ИК. Более подробно об этом можно прочитать в той самой главе.
Когда персонаж готов и настроен, нужно создать для него следующие действия: "WALKCYCLE" (ходьба), "WAVE_HAND" (движения рук) и "STAND_STILL" (неподвижный). В действиях «ходьба» и «неподвижный» ключевые кадры будут заданы почти для всех косточек, а в «движении рук» - только ключевые кадры для костей рук. Это позволит нашему персонажу размахивать руками при ходьбе.
Для этого удобно отработать каждое движение по отдельности, а затем объединить все в редакторе нелинейной анимации.
Существует два основных способа анимации ходьбы: либо действительно перемещать персонаж, меняя позы, либо заставить персонаж «ходить» на месте, не перемещая его.
Последний вариант, несмотря на то, что он несколько сложен в реализации, лучше всего подходит для компьютерной анимации; его мы и будем изучать ниже.
Весь цикл ходьбы будет задан действием для арматуры, поэтому мы создадим новое действие и переключимся в режим позирования, для создания самой первой позы – т.н. «касание» (Рис. 71).
Рис. 71. Несколько основных поз при ходьбе.
|
При настройке арматуры для ходьбы нужно помнить несколько вещей. Задание имен звеньям арматуры по правилам, перечисленным в главе «Арматурный объект» позволит вставлять отраженные позы. Кроме того, перед тем, как сделать объект потомком арматуры, нужно убедиться, что локальные оси объекта совпадают с глобальными осями, выделив объект и нажав CTRL-SHIFT-A. |
Чтобы заставить модель «ходить», достаточно анимировать всего несколько основных косточек. В данном случае для анимации ноги достаточно анимировать движение ступни, все остальные кости будет двигать система обратной кинематики; она сделает это лучше нас. Обеспечить перемещение на фиксированные значения позволяет опция «Grab Grid» в окне настроек Блендера, при этом, если необходимо, можно изменить шаг сетки.
Кости, для которых не задаются ключевые кадры, лучше скрыть (командой H в режиме позы или кнопкой Hide в режиме редактирования). Это позволит лучше видеть модель во время анимации и облегчит задачу.
Обычно ходьба состоит из четырех поз, известных как «касание», «отдача», «проход» и «высшая точка» (соответственно «Contact», «Recoil», «Passing» и «High point» на Рис. 71).
Наиболее важна поза касания. Большинство аниматоров считают, что анимацию ходьбы следует начинать с правильной установки этой позы. Здесь персонаж накрывает самую широкую за весь цикл ходьбы область. В позе отдачи персонаж в самой низкой точке, весь его вес перенесен на одну ногу. В позе «высшей точки» персонаж находится в самой высокой позиции, хотя и наклоняется, падая вперед. Поза «проход» - промежуточная между отдачей и высшей точкой.
Порядок работы примерно такой:
В первом кадре установим модель в позу касания.
Вставим ключевые кадры для управляющих косточек арматуры (те, что мы перемещаем вручную, как правило это приводы ИК).
Не снимая с них выделения, жмем кнопку "Copy Pose" («копировать позу»). Теперь вся информация о положении костей хранится в памяти.
Переходим на несколько кадров вперед и жмем "Paste Flip Pose" («вставить отраженную позу»). Будет вставлена отраженная поза, то есть если в начальной позе впереди была левая нога, то сейчас впереди будет правая, и наоборот.
Теперь снова выделяем управляющие кости и вставляем для них ключевые кадры.
Снова переходим на несколько кадров вперед (рекомендуется использовать одно и то же количество кадров каждый раз, например 10) и нажимаем "Paste Pose" («вставить позу»), при этом вставится первоначальная поза, которая и завершит цикл. Так мы получим ходьбу в стиле Майкла Джексона, то есть наш персонаж не будет отрывать ног от земли.
Для того, чтобы это исправить, перейдем в промежуточную позицию между первой и второй позами, и установим ступню в позу отдачи («Recoil» на Рис. 71), при этом туловище персонажа будет в самом низком положении.
Вставить ключевые кадры и скопировать позу.
Перейдем в промежуточную позицию между двумя последними позами и вставим отраженную позу. Вставим ключевые кадры и на этом закончим.
|
Если, вопреки ожиданиям, меш оказался искажен, не паникуйте. Перейдите в режим редактирования арматуры, выделите все кости и нажмите CTRL-N. При этом будут повторно будут пересчитаны направления поворотов костей, вызывающих скручивание меша. |
Следует повторить описанную последовательность действий для всех поз, которые будут использованы в цикле ходьбы. Обычно я использую позы касания, отдачи и высшей точки, позволяя Блендеру самому вычислить позу прохождения.
Рис. 72. Для облегчения работы используем кнопки копирования, вставки и отраженной вставки.
Теперь, если нажать ALT-A, мы увидим, что персонаж шагает вполне натурально.
Будет очень полезно сосчитать (по клеткам, между ногами персонажа в позе 1), сколько единиц Блендера занимает каждый шаг. Назовем эту величину «ШАГ», она нам потребуется чуть позже в окне нелинейной анимации.
Теперь заставим персонажа перемещаться по сцене.
Вначале отключим от арматуры действие с ходьбой, так, чтобы ничего не перемещалось при нажатии ALT-A. Для этого достаточно нажать маленькую кнопку с крестиком напротив имени действия в окне действий.
Затем создадим объект «PATH» (путь), лежащий на плоскости, стараясь не делать его слишком кривым (чем прямее, тем лучше), и затем сделаем арматуру персонажа его потомком (используя обычное наследование, а не «Follow Path»!). Если все сделано правильно, то при нажатии ALT-A персонаж будет «ехать» вдоль пути.
Теперь перейдем в окно нелинейной анимации и добавим в канал действие ходьбы как полосу нелинейной анимации. Выделив эту полосу, нажмем N и затем кнопку «Use Path».
|
Вставлять действия в окно НЛА удобно, когда ни одно действие не активно для данной арматуры, иначе вместо полосы нелинейной анимации мы увидим индивидуальные ключевые кадры данного действия в канале арматуры, которые перекроют собой все ранее добавленные полосы. Если действие было добавлено именно так, его можно преобразовать в полосу НЛА, нажав C. |
Рис. 73. Приятная прогулка
Если теперь запустить анимацию, может произойти кое-что забавное, из-за того, что мы не установили параметр Stride.
Это значение, измеряемое в единицах Блендера, и равное расстоянию, которое персонаж покрывает за один шаг; важно определить его как можно точнее. Вычисленное значение нужно ввести в поле Stride, которое появляется при нажатии N в окне НЛА, для выделенной полосы.
Если все значения подобраны правильно, то наш персонаж не должен «проскальзывать», идя вдоль пути.
Один из способов определить это значение – посчитать клетки между носками ног персонажа в позе 1. Это значение нужно умножить на 2 и на масштаб сетки (обычно 1 клетка равна одной единице Блендера, но не обязательно; так, в этом примере единица равна двум клеткам).
В этом примере 7,5 квадратиков, так как масштаб клетки равен единице, то: STRIDE = 7.5 x 1.0 x 2 = 15
Рис. 74. Оценка параметра «STRIDE» (шаг). При необходимости можно «подогнать» сетку.
Скорее всего, мы захотим, чтобы наш персонаж шагал быстрее, медленнее, или совсем остановился. Это можно сделать, отредактировав кривую скорости пути.
Выделим путь и откроем окно IPO. Там мы увидим кривую скорости (Speed), лежащую в диапазоне от 0 до 1 по вертикали (ось Y) и от первого кадра до последнего по оси X. Координата Y обозначает относительное положение дочерних объектов на пути, а наклон кривой – их скорость. Добавим в режиме редактирования две точки с одинаковой высотой. Полученный ровный участок означает, что между кадрами 40 и 60 (на рисунке) движение будет приостановлено.
При этом возникнет проблема, связанная с остановкой персонажа: он «застынет» в некоторой позе, с одной ногой на земле, а другой – в воздухе.
Рис. 75. Остановка для отдыха
Для решения проблемы используем окно НЛА. Все, что нужно сделать – это добавить действие "STAND_STILL" (неподвижность), которое описывает то, как персонаж стоит. Я задал это действие при помощи всего одного ключевого кадра, удалив все перемещения и повороты костей (см. раздел «Режим позирования»), и затем сдвинув пару косточек, чтобы получилась поза «отдыха».
Так как пауза длится между кадрами 78 и 112, мы должны вставить действие «отдыха» точно в этот диапазон. Чтобы не возникало резкого перехода между действиями, нужно использовать опции BlendIn и BlendOut (при помощи N-диалога), устанавливающие число кадров, в течение которых действия будут смешиваться, плавно перетекая из одного в другое, придавая движению естественность. При этом действие нужно начинать на BlendIn кадров раньше, а заканчивать на BlendOut позже, так как во время изменения позы персонаж должен еще двигаться.
Таким же способом можно комбинировать различные виды ходьбы, например чтобы переключить персонаж с ходьбы на бег на «быстром» участке пути.
Во всех этих ситуациях мы должны помнить, что эффекты от более новой полосы накладываются на предыдущие, поэтому действия ходьбы и остановки должны следовать одно за другим.
Для вставки действия нужно в окне НЛА поместить курсор мыши над каналом арматуры и нажать SHIFT-A. При этом появится меню со списком всех доступных действий. Если не поместить курсор мыши над каналом арматуры, то вместо меню возникнет сообщение об ошибке: «ERROR: Not an armature» («Ошибка: не указана арматура»)
Следуя сказанному, поместим указатель над полоской арматуры, нажмем SHIFT-A и добавим действие "WAVE_HAND" («движения руками»).
Так, как это действие означает всего лишь взмах руки в какой-то момент ходьбы, мы не будем использовать для него опцию "Use Path", а просто сдвинем во времени так, чтобы перекрыть им ключевые кадры движения рук из действия ходьбы. Поместим указатель над полосой и нажмем N, или просто перетащим и растянем полосу так как необходимо.
Рис. 76. Привет, ребята!
Так, как это действие вычисляется в последнюю очередь (помните, что Блендер выполняет действия из окна НЛА сверху вниз), оно перекроет собой все ключевые кадры, определенные раньше для костей, участвующих в нем.
Кажется, рассказать о НЛА и арматуре больше нечего. Пришло время экспериментировать и затем показать всему миру то, что у вас получилось. Дам последний совет: ключевые кадры можно редактировать в окне НЛА. Можно дублировать кадры (SHIFT-D), двигать их (G) и удалять (X), но при удалении следует быть осторожным, так как удаленные ключевые кадры навсегда пропадут из текущего выделенного действия. Поэтому перед тем, как что-то удалить, лучше преобразовать это в полосу нелинейной анимации.
Арматура для механизмов |
Рендеринг |