Покадровая анимация походки. Приближение анимации персонажа к реальности

По просьбе Оксаны, сделал небольшой урок по анимации. Сразу говорю что опыта создания уроков у меня практически нету, так что приму конструктивную критику Итак приступим. Будем рассматривать прямо ходячих персонажей. О четвероногих братьях наших можно создать отдельную тему...Походка персонажа определяет его характер и в первую очередь бросается в глаза зрителю. Многие считают анимацию походки сложным занятием, но на самом деле это не совсем так. Разумеется для каждого персонажа нужен свой подход. Малейшая ошибка в одном кадре испортит всю анимацию. Тем не менее следуя определённому алгоритму можно избежать этих ошибок.

Немного скучной теории В большинстве случаев походку можно представить в виде комбинации четырёх состояний: контакт, отрыв, проход и высшая точка. В каждом из этих состояний у персонажа меняется положение рук и ног, а так же изменяется высота персонажа. В состоянии "высшей точки" голова персонажа находится в наивысшем положении а в состоянии "отрыва" в самом низком. Говорят начинать рисовать цикл нужно с "контакта" иначе неизбежно появятся проблемы. Очевидно, что когда правая нога находится в заднем положении то левая рука выходит вперёд и наоборот. Такие положения называются conterpose. Отдельное название данной позе придумали не с проста. С её помощью в анимации походки достигается равновесие (обе стороны тела уравновешиваются). Любая анимация без равновесия выглядит неестественно. В состоянии "проход" видна только одна рука, расположенная почти параллельно туловищу. Анимация походки может быть выполнена двумя способами: когда персонаж марширует на месте, а сдвигается фон, и когда он смещается по экрану. Первый способ более универсальный, но бывает сложно подобрать скорость фона и вписать его в окружение. Теперь о анимации на слайдах. Обезьяны - это мой первый опыт покадровой анимации. Используя алгоритм, была получена не плохая анимация походки гориллы. С анимацией бега в моём случае получилось немного сложней. Во первых добавилось количество ключевых кадров с 8 до 22. Чем больше промежуточных кадров, тем плавнее анимация. И тут еще учитывались движения ушей и языка, дыхание и т. д. Ну а на самом деле, анимацию бега тоже можно уместить в 8 кадров. Бороздя просторы интернета я нарыл множество раскадровак анимации, которые с каждым днём пополняют мою коллекцию. Вот одна из них:

Чудесно не правда ли? Присоединив ту теорию к данным рисункам можно оживить своего персонажа и придать ему настроение. Когда я делал баннер с пандой у меня не было этой картинки. Я наблюдал за бегающими детьми во дворе, заставлял брата бегать туда-сюда, смотрел мультики И всё делал методом проб и ошибок (мой любимый метод). Об анимации походки можно ещё много рассказывать, например как быть когда нужно анимировать персонажа изображённого не в профиль и высветлять многие другие проблемы. Но зная те основы и добавив немного воображения и физики можно добиться неимоверных результатов.Надеюсь, что статья получилась не очень занудной. И так же надеюсь что у вас анимация получится лучше и плавнее, чем у меня. Если я упустил какой-то важный момент и у вас есть что добавить - милости просим. Все недочёты и промахи (если таковые найдутся) постараюсь исправить в следующем уроке посвящённом скроллингу фона во флеш с помощью as3.

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

Создание качественных скелетных 3D анимаций сегодня, пожалуй, самая труднодоступная для инди разработчиков задача. Вероятно поэтому так мало инди игр в 3D, и так много проектов в стилях пиксель арта или примитивизма, а также бродилок без персонажей в кадре. Но теперь это соотношение может измениться…

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

Примеры анимации Uncharted 4 (>40мб GIF)



Если физический рендеринг и создание качественно освещенных статичных сцен становятся доступны энтузиастам благодаря мощным бесплатным игровым движкам и инструментам 3D моделирования, то создание хорошей анимации требует оборудования для захвата движений и длительной кропотливой работы по их внедрению. Одна из самых доступных систем это костюм neuronmocap стоимостью порядка $1.5к без учета доставки.

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

Все это я вспоминаю для того, чтобы оценить по достоинству щедрый подарок от Mixamo . Он буквально открывает дверь на новый уровень для независимых разработчиков: компания Adobe купила Mixamo, и теперь 2.5 тысячи скелетных анимаций для персонажей они отдают совершенно бесплатно "for unlimited commercial or non commercial use ":
www.mixamo.com

Еще пол года назад можно было их получить только выложив порядка $36 000 (ну или спиратив в сети). Помимо анимаций компания также предлагает бесплатную версию инструмента для ригинга и скининга персонажей, инструмент для создания множественных уровней детализации с минимальными потерями качества (LOD), генератор персонажей и плагин для захвата лицевой анимации.

Получить качественные и разнообразные анимационные клипы это только первая часть задачи.
Вторая часть заключается в том, чтобы корректно использовать полученные анимации при управлении персонажем. Для этого сначала нужно решить, как вообще сдвигать персонажа в сцене: на основании данных самой анимации (1), либо на основании каких-то иных соображений (например физики твердого тела) (2). То есть, либо анимация будет вычисляться исходя из произвольного (физического) движения объекта в пространстве (2), либо само смещение в пространстве будет исходить из записанной анимации, игнорируя иные вмешательства (1).

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

Одним из ярких примеров может быть игра Guild Wars 2 где анимация движений и графика уже достаточно хороши, но вот большой диапазон возможных скоростей и направлений движения персонажа не обеспечен столь же большим набором анимаций, и персонажи либо буксуют на месте, либо проскальзывают вперед как по льду. Та же проблема долгое время преследует и игры на движке Gamebryo (серия TES: Morrowind, Skyrim), да и многие другие.

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

Поэтому для достижения реализма нам в любом случае потребуется гигантский набор разнообразных клипов с движениями в различных направлениях, с различной скоростью, и т.п… Кроме того, анимационные клипы редко можно использовать изолированно, воспроизводя один за другим. Чаще всего в игре присутствует множество анимаций, между которыми не заготовлено специальных анимированных переходов. Поэтому для их симуляции применяется плавное смешивание через линейную интерполяцию поворотов костей. Для удобной настройки таких переходов используется т.н. конечный автомат или машина состояний (State machine). В UE и Unity для этого есть специальные инструменты: Persona и Mecanim . Каждый узел там это некоторое состояние скелетной модели (заготовленный анимационный клип или результат их смешения - Blend Tree). Когда выполнены некоторые заданные условия, осуществляется плавный переход из одного состояния в другое, во время которого оба оказывают пропорциональное времени влияние на повороты костей и смещение объекта. Таким образом достигается иллюзия непрерывности движения.

Состояние может быть не одиночным клипом, а смешанным по тому же принципу набором клипов (Blend Tree / Blend Space). Например из клипов движений персонажа в стороны можно выбрать несколько, смешав их пропорционально вектору желаемого движения, и получить движение под любым произвольным углом. Однако существуют такие анимации, для которых смешивание оборачивается некорректными позами. Например когда одна анимация двигает ноги персонажа вперед, а другая вбок, линейное смешивание может привести к пересечению ног друг с другом. Чтобы этого избежать нужно тщательно подбирать анимационные клипы, синхронизировать их фазу, длину и скорость, либо добавлять отдельный клип специально для данного вида движений. Все это сложная и кропотливая работа. И чем больше возможных состояний и переходов между ними, тем сложнее привести их в согласие друг с другом, и проследить за тем, чтобы все нужные переходы срабатывали когда это требуется.

1) Самым очевидным решением является захват движений реального актера при помощи Motion Capture и привязка смещения персонажа в игре к смещению «корневой кости» в самой анимации - принцип Root Motion. Тогда персонаж будет двигаться ровно так, как двигался актер во время записи.

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

Но этот подход несет в себе и очевидные проблемы.

Допустим, персонаж хочет подвинуться к краю обрыва: актер на записи наклоняется, поднимает ногу и делает смелый широкий шаг по сцене. А персонаж шагает прямо в пропасть… Чтобы этого избежать, нужно прервать шаг где-то посередине, но это не только выглядит неестественно, но и затрудняет игроку выбор нужного момента из-за нелинейности движения, в котором может быть долгая подготовка (наклон), а затем резкое уверенное движение (шаг). Можно записать несколько вариантов движений. Допустим: осторожные маленькие шаги, нормальные, и бег. А затем смешать их по параметру требуемой скорости, который можно увеличивать линейно и предсказуемо. Но что если нам нужны движения в стороны? Значит для каждого варианта ширины шага нам нужны еще три-четыре варианта (за вычетом зеркальных). А еще персонаж должен уметь поворачивать во время движения. Значит для каждого варианта нам нужны движения с поворотом. А если поворот может быть быстрым и медленным? Значит еще раз умножаем число необходимых клипов на два. А теперь нам нужно движение по наклонной поверхности! А потом нам захочется, чтобы персонаж умел делать тоже самое вприсяди. Итого - просто сотни и тысячи вариантов анимации которые нужно смешивать и следить за тем, чтобы это происходило корректно и приводило к движениям с нужной скоростью. И все равно, во многих случаях управление будет ощущаться как «ватное», поскольку инерция актера и наша невозможность предусмотреть все возможные человеческие маневры будет лишать игрока контроля над персонажем. Эту проблему, к слову, прочувствовали на себе игроки в The Witcher 3, поэтому в одном из крупных обновлений разработчики внедрили альтернативный вариант управления, где анимация быстрее отзывается на управление в ущерб реализму. В шутерах же проблема нелинейности движения обретает особенно выраженный характер: игроку часто приходится выглядывать из-за угла и быстро уходить обратно, и момент резкой смены направления может очень отличаться - игроку требуется как можно скорее вернуться обратно за укрытие, а у нас нет возможности предсказать заранее, какой ширины шаг он планировал и проиграть соответствующую анимацию. Игроку, в свою очередь, будет трудно привыкнуть к ширине шага, которую делает его персонаж, и к скорости этого шага, чтобы прервать его вовремя.

Во-вторых, Root Motion плохо годится для сетевых игр. Нелинейность движения не только затрудняет игроку предсказание скорости, но и лишает нас возможности интерполировать и экстраполировать движение чтобы компенсировать сетевую задержку, что является очень важным и сложным аспектом в быстрых сетевых играх. Если смещение персонажа задается только анимацией, то трудно аналитически подобрать нужные параметры машины состояний (смешивающей разные анимации), которые приведут к движению персонажа в точно нужном нам направлении и с точно нужной нам скоростью (выбранных для компенсации расхождения). Если же сделать наоборот, так, что анимация будет ориентироваться на фактическое движение, то при коррекции расхождения между сервером и клиентом легко можно будет подобрать наиболее подходящую анимацию, и даже если она будет чуточку несоответствовать фактическому смещению, этого почти никто не заметит.

Поэтому техника Root Motion используется часто в одиночных играх от третьего лица, где управление осуществляется контекстуально - в зависимости от наличия укрытия, препятствия, режима движения или других обстоятельств, и редко применяется в сетевом режиме и MMOG.

Из последних заметных проектов, использующих Root Motion, можно выделить The Witcher 3 . Трудно переоценить усилия, вложенные в производство всех его движений.

Пример анимации The Witcher 3 и ее съемки



2) Другое решение обратно принципу Root Motion - нужно приводить анимацию в наиболее точное соответствие с произошедшим или планируемым движением. Тогда многие описанные выше проблемы решаются - движение персонажа можно сделать равноускоренным и предсказуемым с возможностью сколь угодно быстрой смены направления. Но как привести нелинейную и инерционную анимацию в соответствие с таким движением? Интересный комплексный подход описали разработчики игры Paragon. Суть его заключается в том, чтобы находить и проигрывать только нужную серию кадров анимации для достижения требуемого смещения/поворота, пропуская лишние. И использовать инверсную кинематику для модификации ширины шага.

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

Но, к сожалению, этот метод довольно сильно нарушает привычный подход к анимированию, и поэтому я не смог найти простого способа реализовать его, например, с использованием стандартного анимационного компонента Unity. В Unreal Engine также пока нет необходимого функционала, однако разработчики обещают когда-нибудь перенести низкоуровневые наработки, сделанные для Paragon, в общедоступную версию движка. Основной сложностью является поиск и воспроизведение нужного кадра на основании данных о фактическом смещении и повороте. Для этого авторы предлагают делать пре-процессинг анимационных клипов и генерировать для каждого из них дополнительный блок данных: Distance Curve, в котором будут покадрово сохранены значения смещения и поворота корневой кости относительно начала или конца анимации. Затем, в ходе выборки, можно производить быстрый бинарный поиск нужного кадра, где достигнуты соответствующие параметры смещения и поворота, и воспроизводить его.

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

Теги:

  • unity3d
  • анимация
  • машина состояний
  • геймдев
Добавить метки

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

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

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

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

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

Ходьба

Введение

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

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

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

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

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

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

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

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

< Рисунок 1 >

Представленные выше 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 градусов

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


По моим видеоурокам вы можете научиться создавать 2d / 3d мультфильмы, персонажей и анимацию в любой стилизации. Начните изучение с первого урока:

Урок длится 41 минуту! За это время вы составите полное мнение обо мне и о программе, и примите дальнейшее решение, которое, возможно, изменит вашу дальнейшую жизнь, (даже если вы не будете потом смотреть мои уроки - сэкономит вам время!). Для себя вы ответите на следующие вопросы:

Получается ли у меня работать в программе?
- Понятен ли мне процесс прохождения картинки от подготовки в Adobe Photoshop до анимации и готового видеоролика?
- Понравилось ли мое объяснение или я буду искать что-то другое?
- Смогу ли я на этом заработать?
- Смогу ли я сам/сама создать свой мультфильм?, который может послужить, например, отличным подарком!

Этот урок посвящен анимации векторного персонажа, а именно созданию анимации походки (ходьбы) персонажа, по стилизации похожего на персонажа из известных анимационных проектов, таких как Мульт Консервы, Цианид и Счастье (Cyanide & Happiness) и т.д в программе Anime Studio Pro 11 (Moho Pro).

Мой проект (социальная сеть) посвящен обучению создания 2d мультфильмов, персонажей, 2d/3d анимации, рисованной анимации, созданию 2d игр на языке javascript и flash, видеомонтажу, звучанию, постобработке видео и т.д. посредством публикации моих видео уроков на сайте моей социальной сети , в группе ВКонтакте: https://vk.com/mult_uroki и канале Youtube: https://www.youtube.com/c/Mult-urokiRu по программам 2d / 3d анимации и моделирования объектов анимации, местности и фонов в: Anime Studio Pro (Moho Pro) (ASP) (асп) (аниме студио про), Autodesk Maya 2013, Adobe After Effects CS6, Adobe Premier Pro, Adobe Photoshop, Adobe Audition, Adobe Flash, Toon Boom Animation, Cinema 4D, Blender и Poser Pro. По моим урокам вы узнаете как создаются мультфильмы и анимация, как делают липсинг персонажам и озвучание мультфильмов, какие бывают законы анимации и монтажа, как бывают виды планов и как их правильно чередовать, как создается раскадровка и аниматик, какие мультфильмы сделаны в программе Anime Studio Pro (Moho Pro) и какая программа лучше (проще) и что выбрать для создания своего первого 2д мультфильма в домашних условиях Anime Studio Pro (Moho Pro) или Adobe flash? Video tutorials: Creating of bone characters and 2d animation in Anime Studio Pro (Moho Pro 12) program. How to create and draw characters in Anime Studio Pro (Moho Pro)? how to make a 2d cartoon?

Взято с сайта: http://www.idleworm.com/
Перевод: muxacko

4. Рисуем позу отрыва.

(Не забывайте про то, о чем я говорил в прошлой части). Положите на стол чистую страницу, поставьте на ней №2, радом с номером напишите букву "R" и нарисуйте, как нога персонажа достигает земли. Сейчас персонаж находится в самой низкой точке всего цикла. Не надо сдвигать голову и туловище слишком далеко, иначе по невнимательности вы можете создать себе проблемы в будущем, которые будут связаны с неверным заданием направляющих дуг.

Я заметил (и это очень ценной наблюдение), что тело обычно опускается на расстояние равное? - 1 размеру головы. Этого вполне достаточно для того, чтобы сделать походку упругой. (Самая распространенная ошибка новичков состоит в том, что с первого до последнего кадра, высота фигуры остается неизменной).

Запомните: поза отрыва будет повторяться практически не меняясь в ходе всего движения персонажа:

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

Теперь небольшое замечание о раскадровке походки.

Цикл (два шага - левой и правой ногой) занимает примерно секунду. Это означает, что персонаж делает один шаг за полсекунды. Для описания подобного механизма используется такой термин, как "ударный ритм", и к счастью, два удара в секунду являются стандартным музыкальным шаблоном (по крайней мере, я так считаю). Мы анимируем сцену, используя 12 кадров в секунду, следовательно, вся последовательность дальнейших рисунков будет выглядеть примерно следующим образом:

#01:контакт #02:отрыв #03: #04: #05: #06: #07:контакт (очень похож на №1, но происходит реверс ног и рук). #08:отрыв #09: #10: #11: #12: #13:контакт (копия №1, только немного правей).

Как вы можете видеть, полный цикл длится с кадра №1 по №12, начиная повторяться в №13. Я поместил отрыв сразу после контакта без промежуточных кадров, потому что из-за них походка могла бы выглядеть слишком мягкой. Контакт обычно должен переходить сразу в отрыв, без дополнительных кадров.

Как вы можете видеть, я не подписал кадр, соответствующий высшей точке. Я мог бы привязать его к №4, №5 или №6. Здесь все зависит от особенностей персонажа. Попытаюсь объяснить почему.

Если №4 будет верхней точкой, то походка станет похожей на следующее:

Как вы можете видеть выше, это делает персонажа "отпрыгивающим" от земли очень быстро, что придает легкости его походке.

Если верхняя точка будет соответствовать кадру №6, то походка будет выглядеть так:

Данная раскадровка делает подъем персонажа более медленным, из-за чего он кажется более тяжелым.

Я выберу нечто среднее и сделаю верхней точкой кадр №5:

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

#01:контакт #02:отрыв #03: #04: #05:верхняя точка. #06: #07:контакт (очень похож на №1, но происходит реверс ног и рук). #08:отрыв (похож на №2, происходит реверс рук и ног). #09: #10: #11:верхняя точка. (похож на №05, реверс рук и ног). #12: #13: контакт (копия №1, только немного правей).

Теперь у нас есть 3 основных ключевых кадра: №1, №2 и №5 и их близнецы: №7, №8 и №11. Все пустые места в последовательности будут промежуточными. Не будем больше о них беспокоиться. Теперь мы сосредоточимся на кадрах с №1 по №7, завершающих один шаг.

5. Рисуем верхнюю точку.

Положите чистую страницу. Как объяснялось ранее, это будет рисунок №5. Поставьте номер в верхнем правом углу листа. Обведите его. Повыше напишите маленькую букву "H". Теперь начнем рисовать.

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

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

6. Добавляем временную диаграмму.

Перед тем, как идти дальше, вы должны добавить временную диаграмму для того, чтобы правильно задать расположение промежуточных кадров. Рисунки, которые мы закончили следующие: #01:контакт #02:отрыв #03: #04: #05:верхняя точка. #06 #07:контакт (с реверсом)

Временная диаграмма должна быть добавлена для кадров с №2 по №5. Временная диаграмма на №2 будет описывать позиции №3 и №4, как они переходят в №5. Диаграмма на №5 будет описывать положение в №6.

Положите №2 на стол. Под номером кадра в верхнем правом углу страницы вы добавьте диаграмму. Вот как она будет выглядеть:

Как можно увидеть, №4 - основной промежуточный кадр, который располагается посередине между двумя ключевыми кадрами. №3 это простой промежуточный кадр, который предназначен только для смягчения движения.

Следующая временная диаграмма рисуется на кадре №5. Положите его на стол и нарисуйте диаграмму под номером в углу. Она должны получиться примерно такой:

Здесь показано, что №6 будет единственным промежуточным кадром между №5 и №7. Теперь пришло время рисовать промежуточные кадры.

7. Рисуем основной промежуточный кадр (№4).

Проверьте, что направляющие линии лежат на столе. Над ними закрепите кадр №2. Поверх него №5. Сверху положите чистый лист. Включите подсветку. Теперь вы должны нарисовать кадр №4 (еще он известен, как позиция прохода (passing)). Некоторые считают его ключевым, но для простоты я воспринимаю его, как промежуточный. Я не разу не сталкивался с тем, что поза прохода была настолько же важна, как позы контакта, отрыва и верхней точки.

Вы должны попереключаться (пощелкать) между №4 и двумя ключевыми кадрами под ним (мы это делали при анимации мяча).

Напоминаю еще раз: следите за тем, чтобы во время ходьбы ваш персонаж следовал направляющим дугам. Когда вы закончите рисунок, расположите кадры №2,№4 и №5 друг за другом. Теперь вы можете прокрутить их, что бы увидеть, что они двигаются правильно (как это делать, объясняется в уроке про мяч).

Если на вашем промежуточном кадре вы видите ошибку, тогда надо снова закрепить рисунки в порядке №2, №5 и №4. Теперь вы можете переключать их снова, исправляя любые ошибки, которые могли возникнуть. Это утомительно, но является единственным возможным способом.

8. Рисуем оставшиеся промежуточные кадры.

Повторяем 7-й шаг для кадров с №3 по №6. Если вы сделаете их правильно, то получите первую половину цикла походки. Я надеюсь, что вы получили удовольствие, хотя и сомневаюсь в этом.

Теперь у вас есть стопка листов бумаги, пронумерованных от №1 до №7. Если вы закрепите их, то сможете прокрутить и, если что-то не так, увидеть допущенный ошибки. В случае возникновения ошибки, вам придется вернуться назад и повторять процесс, описанный на шаге 7 до тех пор, пока результат не удовлетворит вас.

9. Дорисовываем цикл (или иначе).

Повторите предыдущие шаги для завершения цикла. Вы должны будете нарисовать №13 (третья поза контакта). Просто нарисуйте №1 вместо №13, только правее. Длина одного шага равна 2м дюймам, следовательно, кадр №13 будет на расстоянии 4х дюймов от исходной точки.

Я надеюсь, это очевидно.

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

10. Основное замечание касательно дуг.

Каждый сустав тела двигается по своей дуге. Поэтому, было бы хорошо следить за этим. Теперь попробуем разобраться с тем, как это делать.

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

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

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

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

Руки