Войти
АртСтатьи

Приближение анимации персонажа к реальности. (3 стр)

Автор:

«Динамичное» движение и метод анализа

Анализ, он, конечно, и в Африке анализ. Хотя можно довольно долго смотреть на бегающую собаку, так и не поняв, как потом всё это повторить на компьютере. Согласитесь, что в любом деле можно достигнуть горазда лучших результатов, если иметь план своей работы. Я же провожу анализ приблизительно в следующей последовательности:

1) общее исследование
a. на продолжительность анимации
b. степень участия частей тела в анимации
c. основные расстояния при перемещениях

2) первичные действия
a. я приступаю к анимированию начиная с тех частей тела, которые несут непосредственную смысловую нагрузку анимации. Чаще всего под подобную категорию попадают ноги и центр тяжести, за который я тягаю персонажа в пространстве
b. стараюсь как можно больше узнать о позах во время движения «основных» для данной анимации частей тела.

3) вторичные детали
a. вторичные детали чаще всего подчеркивают значимость первичных действий. Это могут быть содрогания, колебания, как следствие совершения того или иного действия. А если это, например, руки, то они часто являются вспомогательными элементами при движении.

Теперь я продемонстрирую метод анализа на примере анимаций ходьбы и бега персонажа.

Ходьба

Введение

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

Разделим анимацию на первичные и вторичные движения. Под первичными будем подразумевать основную часть анимации – движение тела в пространстве с перемещением ног, практически без участия рук, головы и позвоночника (руки желательно даже спрятать). Это задаст анимации черновой вариант, после которого можно будет перейти к вторичным движениям: покачиваниям плечами, управлением позвоночником и т.п. деталям, придающим движению персонажа больше реализма.

Анализ ходьбы я проведу на Biped скелете, олицетворяющем самого обычного «земного» человека.

Представлю сразу некоторые размерности, за которые можно было бы зацепиться при анимировании:

1) расстояние шага составляет примерно половину высоты персонажа

2) продолжительность выполнения двух шагов равняется примерно 30 кадрам или одной секунде.
заметьте, что я везде вставляю слово примерно, потому что значения не являются правилом, а всего лишь опорой.

Первичные движения

Обратите внимание на ключевые позы при движении ног:

Изображение
< Рисунок 1 >


Номер ключевого кадра
на рисунке 1  1  2  3  4  5  6 
Совершаемое действие  номер кадра во времени
перемещение левой ноги  2
касание левой ноги  8
поднятие правой ноги  11
перемещение правой ноги  17
касание правой ноги  23
поднятие левой ноги  26

Представленные выше 6 ключевых кадров для каждой ноги и плюс перемещение COM’а составляют в целом основу всей ходьбы. Однако, здесь возникает небольшая проблема, связанная с интерполяцией значений. Т.е. на моделировании анимации двух шагов дело может не закончиться, потому что последние ключевые кадры должны плавно перетекать в первые, анимация должна повторяться, сохраняя постоянство. Помощь в решении этой проблемы может оказать следующее:

- использование любого средства по микшированию, позволяющего выполнить повторение движения. Это может быть, например, Motion Flow.

- создание 6 шагов анимации ходьбы, из которых средние 2 шага могут полноценно уже использоваться для экспортирования в игру и т.д.


Заметки по движению ног:

1)  Помните, что вынесение левой ноги вперёд сопровождается вынесением вперёд правой руки и наоборот. Такое движение необходимо человеку, чтобы сохранять равновесие.

2)  Когда человек наступает на ногу, его тело немного опускается вниз, когда же он выносит ногу – поднимается вверх. Причём, покачивание должно происходить плавно и периодически, как будто вычерчивая график синусоиды.

3)  Не забывайте о ширине ног, потому что мужчины часто держат ноги широко (особенно если это касается воинов).

4)  Редко когда ходьба проходит с прямыми, как кирпичи, стопами. Нет, стопы желательно развернуть. Пусть даже он будет косолапым. Во всяком случае, не оставляйте ноги ровными шпалами, это нереалистично.

5)  Перед тем как вынести ногу, человек наступает на носок и с него уже двигается дальше. Добавьте эту деталь, чтобы показать наличие пальцев у персонажа. Даже обувь прогибается в носке при ходьбе. Как можно увидеть из кадров на рисунке 1, человек наступает на ногу с пятки.

Есть проблема, связанная с выворачиванием бёдер в CStudio. И проблема заключается в том, что их можно опустить или поднять, но повернуть вперёд назад вовсе нельзя. Я говорю о манипуляциях с костью таза (Pelvis). Разрешить подобный конфликт можно через вращение в одно направление COM’а (ноги должны быть «привязаны» к земле) и в противоположное направление позвонков. Последнее необходимо для того, чтобы верхняя часть тела «смотрела» вперёд.

Вторичные детали

Заметки по поводу движения верхней части туловища:

1)  Одна рука должна быть впереди, в то время как персонаж наступает на пятку. Затем начинается её движение назад, однако она сгибается в локте и за счёт этого остаётся ещё какое-то время впереди. Не забывайте, что рука вращается при ходьбе не только в плечевом суставе, но и в локтевом тоже.

2)  При опоре на ногу соответствующее плечо должно опускаться. Вслед за ним и искривляется позвоночник по дуге. Подобный процесс можно отобразить в следующей последовательности. Нога выноситься вперёд, плечо медленно опускается. Противоположная рука также выноситься вперёд, вслед за ней немного разворачиваются и плечи. Затем вес переноситься на ногу (персонаж наступает на неё) и плечо резко опускается пониже. В это же время, если смотреть сверху, плечи уравниваются.

3)  Очень эффектно можно приукрасить внешний вид анимации через покачивание головы во время ходьбы. Когда одна нога «весит в воздухе» на уровне другой – голова смотрит прямо. Затем начинается незначительно движение головы вверх и вперёд. Когда человек ступает на пятку – голова на своей исходной позиции.

«Ходьба»

Теперь, после всех перечисленных заметок, осталось только реализовать данное движение на практике.

Загрузите сцену из файла «walk_start». Ничего особенного вы не найдёте в этой сцене, за исключением обычного скелета Biped, которого мы и будем анимировать.

Создайте 9 шагов при Walk Footstep равным 18 и Double Support равным 3. Каждый полученный шаг разверните на 10 градусов по оси Z (носки врозь).

Итак, CStudio сгенерировало нам наброски ходьбы, и ключевые опорные кадры мы уже имеем, осталось только всё настроить подобающим образом, добавить немного реализма.

Переходим к настройке анимации ног (включите режим «Авто ключа»):

1.  Бедро (Pelvis) в каждом её кадре нужно развернуть на 10 градусов в таком направлении, чтобы нога, на которой скелет Biped стоит в данном кадре, выпрямилась.

2.  Редактируем положение отрыва ноги от земли (lift). Чтобы легче «выловить» нужное состояние ноги, включите режим показа этого самого состояния  Изображение. Во всех найденных для обеих ног кадрах разверните верхние фаланги пальцев на 30 градусов по оси Z. Как удобно выделить сразу все фаланги? Достаточно выделить стопу (Feet) и перевести это выделение на потомков нажатием кнопки «PageDown» на клавиатуре. Теперь можете разворачивать их. В итоге пальцы должны плотно прилегать к поверхности (воображаемая поверхность, по которой ходит персонаж), а пятка висеть «в воздухе».

Следующий перечень ключей для редактирования – это положение ноги в перемещении (move), а именно — положение, аналогичное 1-му и 4-му кадру рисунка № 1. В подобном кадре ногу нужно немного поднять вверх (2 единицы) и опустить чуть-чуть стопу (поворот 20 градусов по оси Z) В каждом таком кадре и после него трёх последующих значение натяжения (tension) для ключа нужно установить в 25 (проще для этого обратиться к утилите «Normal Tension»). Для быстрого перемещения по ключевым кадрам удобно воспользоваться «режимом ключа», который активируется соответствующей кнопкой Изображение.

3.  Добавляем новый слой, в котором редактируем нулевой кадр:
- Calf – кости ноги разворачиваем друг от друга на 10 градусов (ось X).
- Опустите ноги вниз до их полного выпрямления (хватайте за пятки и тяните вниз), а затем поднимите центр тяжести так, чтобы ноги оказались примерно на той же высоте, что и были раньше (удобно равнять по линии оси сетки в виде сбоку).

Давайте теперь посмотрим на полученный результат. Для этого зайдите в диалог конфигурации времени (Time Configuration) и укажите начальное время (Start time) равное 67-ми, а продолжительность (length) – 30-ти. Теперь активируйте режим движения на месте  Изображение (In place mode) и проиграйте анимацию. Скелет будет идти на месте до тех пор, пока вы не остановите воспроизведение анимации (или пока свет не выключат :) ).

Верните конфигурацию времени к своему первоначальному диапазону, а именно к начальному времени (Start time) 0 и продолжительности (length) 138.

Настройка верхней части тела:

1.  Если вы спрятали руки скелета, то теперь их самое время показать. Не знаю, как CStudio рассчитал вам ключи, однако у меня появляется небольшой казус. Он заключается в том, что правая рука качается при ходьбе значительно меньше левой, как будто у них разные траектории. Такого рода недочёт стал возникать у меня только в новых версиях CStudio, но, в любом случае, с ним легко справиться. Если вашего Biped’а также немного «перекосило», то давайте это подправим.

Убедитесь, что вы находитесь на уровне слоя-оригинала. Выделите всю левую руку (все кости руки) и скопируйте её траекторию (Track), затем перенесите выделение на кости правой руки и вставьте только что скопированный путь. В итоге, руки будут одинаково двигаться. Выделите все анимационные ключи правой руки (кроме первого) и сдвиньте их на 15 кадров влево. Вот и всё, что требовалось для исправления.

2.  Перейдите к первому слою, который мы уже использовали для коррекции позы ног, теперь будем его использовать для коррекции позы позвоночника, рук и головы. Если режим «Авто ключа» выключен, то вновь активируйте его.
Голову опустите на 15 градусов (ось Z), а позвонки поверните по оси Z следующим образом:

- spine на 5 градусов
- spine1 на -10 градусов
- spine2 на 15 градусов

Изображение

Теперь относительно рук. Согласитесь, что идеально выпрямленные кисти рук никак не подходят «живому» скелету Biped’у (мы же его оживляем), поэтому их надо либо немного подогнуть в фалангах пальцев, либо совсем согнуть в кулак. В данном случае удобно два раза кликнуть по кисти и начать вращение, тогда ладонь с пальцами начнёт или раскрываться или закрываться, в зависимости от того, в каком направлении производиться вращение. Подобным способом можно быстро и легко согнуть руку в кулак. Если, к примеру, необходимо отдельно повертеть большой палец руки, тогда выделите все его фаланги и вращайте.

На всякий случай напомню (а вдруг кто не знает), что нажатием на кнопку «Z» на клавиатуре можно поместить выделение во всё видовое окно. Это может оказаться удобным для работы, например, с отдельной кистью. Когда же вы завершили её преобразования, то для экономии сил, скопируйте позу на другую руку.

3.  Движение позвоночника.

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

- установите анимационные ключи для позвоночника в кадрах 40, 54, 69, 84, 99, 115.

- Добавим поворот позвоночника вслед за выносом руки. Включите режим тянущихся связей  Изображение (Bend Links Mode) для объединения позвонков в целостную связанную структуру.  В кадрах 45, 75, 105 разверните верхний позвонок на 5 градусов по оси X, а в кадрах 60 и 90 - на –5 градусов по той же оси.

- выключите режим тянущихся связей. В кадрах 54, 84, 115 поверните верхний позвонок на –3 градуса по оси Y и средний позвонок (их всего три) на 1 градус по оси Y. В кадрах 69 и 99 разверните верхний позвонок на 3 градуса по оси Y и средний позвонок на –1 градус по той же самой оси.

4.  Добавим ещё и покачивание головы. В кадрах 31, 45, 60, 75, 90, 106 поверните голову на –5 градусов по оси Z (небольшой подъём).

Переключитесь на слой № 1, чтобы снова вернуться к корректировке позы и установите в диалоге конфигурации времени начальное время равное 67-ми, а продолжительность равную 30-ти. Вот ходьба и готова. Результат описанных действий находиться в файле «walk_end». Советую вам попрактиковаться и попробовать добавить какие-нибудь новые детали, а возможно и подправить старые.

«Движение назад»

В качестве ходьбы я рассматривал только движение вперёд, а теперь попробуйте сами выполнить движение назад. Могу подсказать, что такое удобно сделать через опорные следы, при создании которых следует указать в группе первого шага (First Step) в параметре длины шага (Actual Stride Length) отрицательное значение (подставьте знак минуса перед числом и оно уже отрицательно), тогда CStudio сгенерирует следы для ходьбы назад, а дальше немного настройки плюс ваше воображение и всё готово.

В файле «backpedal» сохранена данная анимация.

Бег

Введение

После ходьбы, бег – один из основных действий персонажа. В компьютерных играх бег на первом месте, т.к. в основном именно к этому сводятся все передвижения. В крайнем случае, если герой устал, он может перейти на бег трусцой (как, например, в GTA3), но это уже совсем другая история (или другая статья).

Теперь некоторые размерности:
- длина шага составляет примерно 0,75 от высоты тела
- на выполнение двух шагов приходиться примерно 28 кадров
- амплитуда вертикального подскакивания не превышает половины высоты головы

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

Первичные движения


Положение COM’a
(вверху – в и внизу - н) в в н в н в
номер кадра
0
4
10
18
23
28

Изображение
< Рисунок 2 >


Номер
ключевого
кадра  1  2  3  4  5  6 
Совершаемое действие  номер кадра
опора правой ногой  0 и 28
состояние «полёта»  4
касание левой ногой  9
опора левой ногой  11
состояние «полёта»  18
касание правой ногой  23

Представленные на рисунке 2 кадры являются ключевыми моментами движения для левой ноги.

Заметки по движению ног:

1) атлетическому бегу свойственно придерживаться при становлении ног одной линии, однако массивные персонажи не обязательно должны следовать именно такому стилю. Они могут держать ноги, например, на уровне плеч.

2) касание ногой пола начинается с пятки и с внешней стороны стопы, затем переходит на всю стопу (насколько это возможно для персонажа). Когда нога отрывается от пола, она изгибается в пальцах (как при ходьбе) и разворачивается внешней стороной вниз.

3) при опоре на ногу бедро под ней прогибается, толчковая нога должна быть прямой.

Вторичные детали

При беге немалую роль играет движение позвоночника и рук. Давайте теперь разберём это немного поподробнее:

1)  Стиль бега во многом зависит от веса персонажа. Легкие «тела» будут больше подаваться вперёд и прогибать позвоночник по дуге, в то время как тяжелые – сохраняют почти горизонтальное положение туловища.

2)  Позвоночник и руки движутся в единой системе.


Ключевые
кадры 0, 14 и 28  5 и 9  19 и 23 
Совершаемое действие
«равновесие», левая и правая сторона уравниваются во всех осях
правая сторона впереди, левая сзади
левая сторона впереди, правая сзади

Изображение
< Рисунок 3 >

На рисунке 3 отображен момент выхода вперёд левой стороны. Подобное «искривление» можно достигнуть через вращение верхних двух позвонков.

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

«Бег»

Выполнение анимации бега я возлагаю на ваши плечи, потому что предложенный выше анализ, по-моему, достаточно подробно расписан для того, чтобы построить бег самостоятельно. В подобном варианте исполнения есть и ещё один плюс. Когда вы начнёте сами разбираться, что в какую сторону повернуть, то перейдёте на новый уровень (прям, новое звание получите :) ), позволяющий вам закрепить знания и набраться новых умений. Это куда лучше, чем пошагово выполнять очередной урок (из-за того, что пошаговое выполнение урока происходит часто бездумно). Если возникнут проблемы, то обратитесь к готовому варианту из файла «run» и сравните свой результат. Созданная мной анимация далеко не идеальна, и я уверен, что у вас получится куда лучше.

Напоследок хотелось бы высказать несколько советов, они в основном ориентированы на пользователей 3dsMax, но, может, пригодятся и остальным.

Страницы: 1 2 3 4 Следующая »

#3D Studio MAX, #анимация, #персонажи

29 сентября 2004 (Обновление: 3 дек 2017)

Комментарии [21]