Быстрая анимация персонажа в 3d max

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


Важно Немного вводной информации о том, как модификатор кожи (Skin ) работает:


При добавлении костей к коже, модификатор смотрит на сетку к которой она применяется, и автоматически присваивает каждой вершине одной или нескольким костям на основе близости. Он также рассчитывает значение весов для каждой вершины, назначенной кости, чтобы указать степень, в которой перемещение костей влияет на вершину, и снова это основано на близости. Если вершина близка к одной кости, но относительно далека от любых других, он назначает вес со значением 1,0 , что означает 100% . Другими словами вершина реагирует на движение кости, и движется в том же направлении и расстоянии, как кость.


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


Значение веса для выделенной кости по умолчанию отображается на сетке как градиент: с красным представляющим больший вес, уменьшаясь до оранжевого, желтого, зеленого, синего, а затем до нулевых значений. Вершины используют ту же цветовую схему, и так как вы будете регулировать веса на уровне вершин, как правило, лучше для просмотра использовать режим окна просмотра Smooth + Highlights + Edged Faces (F4 ) или в каркасном режиме (F3 ).


Кстати, модификатор кожи еще предлагает настройку весов с помощью 3D-объемных капсул-форм (огибающих), которые можно изменять интерактивно, регулируя вершины на высоком уровне. Однако, вы должны лучше контролировать, регулируя значения весов отдельных вершин или групп вершин. Это более распространенная практика в профессиональной среде, таких как разработки игр в студии. Этот метод является немного более кропотливым, но может привести к оптимальным результатам достаточно быстро.


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


5 . Сохраните вашу работу под другим именем, таким как MyEmma3.max .


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

3Ds max, как полноценный 3Д-пакет, позволяет анимировать созданные объекты. В случае персонажной анимации, 3dmax предлагает несколько способов привязки модели к «скелету», хотя принцип настройки привязки у них похожий. Дальнейшие действия предполагают наличие уже готовой модели человека, потому вы можете моделировать его сами, либо скачайте бесплатную модель .

Создание скелета инструментом Bones (кости)

Открываем сцену с нашим персонажем, переходим на вкладку Create/Systems/Standard и выбираем инструмент Bones. Создаём основную кость, после чего продолжаем строить скелет ноги. Чтобы закончить построение, щёлкните правой кнопкой мыши. Чтобы продолжить построение второй ноги, нажмите кнопку Bones, после чего щёлкните по основной кости, с которой мы начинали построение скелета.

Таким же способом создаём остальные кости. Вот что должно получится:


Инструментами Move и Rotate ставим «скелет» в «тело» нашего персонажа, используя другие окна проекций.


Модификатор Skin

Выбираем модель персонажа и применяем модификатор Skin. В параметрах модификатора Bones нажимаем кнопку Add, после чего откроется окно, в котором выбираем все созданные кости.


После этих действий, если мы будем двигать любую из костей, часть тела персонажа будет тоже двигаться. Но теперь нужно правильно настроить зоны влияния костей на объект . Это мы сможем сделать, нажав на кнопку Edit Envelopes, и поставив галочку напротив Vertices в разделе Select.


Пролистываем параметры модификатора ниже, находим кнопку Weight Tool (значок гаечного ключа), и щёлкаем на неё. Перед нами открылось окно параметров, в котором мы будем менять значения силы привязки вершин к каждой кости. При выделении вершин активируются значения в окне параметров WeightTool, где:

  • 0 – отсутствие привязки;
  • 1 – максимальное значение привязки.

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

Кнопка Exclude Selected Verts исключает выделенные вершины из зоны влияния кости, Include Selected Verts включает выделенные вершины в зону влияния, а Select Excluded Verts выделяет исключённые ранее вершины.


Так же значения визуально различимы по цвету, где:

  • белый – 0;
  • синий – 0,1;
  • желтый и оранжевый – от 0,25 до 0,9;
  • красный – 1.

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

Инверсная кинематика

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

Рассмотрим технологию на примере ноги персонажа. Выделяем кость, которая отвечает за ступню персонажа. Идём в меню Animation/IKSolvers и щёлкаем на HISolver, после чего будет предложено выбрать кость для привязки.


Щёлкаем в активном окне проекции на кость бедра, как показано на картинке ниже.

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


Тоже самое мы можем проделать с другими частями тела.

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

Анимация человека

В 3Dmax для анимации всегда открыта панель внизу окна. На ней содержится временная шкала, кнопки переключения между автоматическим выставлением ключей анимации (AutoKey) и ручным (SetKey), кнопка добавления нового ключа анимации (SetKeys), настройки временной шкалы (TimeConfiguration), а также панель управления воспроизведением анимации.

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


После настройки временной шкалы мы можем приступить к созданию простой анимации нашего персонажа. Нажимаем кнопку SetKey, после чего наша шкала будет подсвечена красным цветом. Выбираем часть тела для анимации, нажимаем на кнопку SetKeys (на кнопке нарисован «+» и ключ), после чего на временной шкале появится квадратик над цифрой 0. Это и есть новый ключ. Теперь передвигаем верхний ползунок на временной шкале на нужное количество кадров, например, на 30. Затем передвигаем анимируемую часть тела в нужную позицию и снова жмём кнопку SetKeys. Можем сделать ещё несколько движений и для других частей тела тем же способом.

Теперь нажимаем Play Animation и наблюдаем, как персонаж выполняет движения тела.


  • Скачать оффлайн-версию: Oblivion-Basic Skeletal Character Animation in 3ds Max 2010_v2.01.7z

Введение

Интерфейс лидера рынка 3D - программы 3ds Max – в очередной раз изменился к 2010 году, а все простые уроки анимации в сети в основном рассчитаны на старые версии. Я исправлю эту несправедливость.

Для выполнения урока у вас уже должна быть загружена модель с выполненными ригом (скелетоном) и скином, и вы должны быть достаточно хорошо знакомы с программой. Я воспользовалась скелетоном от Bethesda Softworks в процессе моддинга к игре TES IV Oblivion , с привязанной моделью тела от Petrovich . А вы можете пользоваться любым доступным вам скелетоном и телом. Загружайте его в Макс и поехали.

Начало работы

  • Выставьте в свойствах оболочки галочку See through (Видеть насквозь ). Затем заморозьте ее.
  • Очень хорошо включить "Отображение траектории ", но я ею не пользовалась.

Перво-наперво определяем, сколько кадров и времени нам понадобится на анимацию. Средняя скорость нормального фильма или движка - в районе 30 кадров в секунду. Так как мы будем маленькую анимацию делать, буквально, какую попало, выставим 30 кадров.

КАК выставить линейку времени и кадров?

Чем меньше единиц на шкале времени, тем быстрее движение.

  • Жмем на иконку с часиками и выбираем End time .


  • Выставляем выбранное число:


  • Если нажать Auto Key , писать можно с любого кадра. Нулевой захватит вашу начальную позу автоматически. Пользуйтесь ЭТИМ режимом для написания анимации. Так вы ничего не потеряете.
  • Продвинутые товарищи могут включить режим Set Key и жать на кнопку с иконкой ключа в любом месте, где им нужен ключ. Это если вы уже точно знаете, где и что у вас будет. Но пока используйте режим Auto Key .

Запись анимации

Как начать записывать анимацию?

  • Нажимаем кнопку Auto Key . В РЕЖИМЕ Auto Key ЛЮБОЕ ДВИЖЕНИЕ В КАДРЕ автоматически СОЗДАСТ КЛЮЧ!!! Можно написать нулевую позу сразу, если она не соответствует позе загрузки, а можно не писать. Там все равно создастся ключик, и мы к нему еще вернемся.

  • Переходим в 10 -й кадр, для чего передвигаем бегунок на значение 10.
  • У меня будет смещение , поэтому я нахожу Bip01 (это точка, в которую сходится привязка всех костей, вершина "дерева привязки") и продвигаю все тело сразу вперед.
  • Если же вы делали классический риг для рендера внутри программы, найдите свой управляющий деревом элемент (обычно это большой сплайн).
  • Затем инструментом Вращение придадим костям позу.
  • Выделять весь скелет и создавать запись в ключе для каждой кости не надо, кости зависят друг от друга и эта зависимость сама поставит их так, как необходимо. Например, чтобы подвинуться вперед всем телом, достаточно записи положения Bip01 , даже если весь скелет не выделен.


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

  • Создаем первую , стартовую позу, для чего, НЕ отключая режим Auto Key , переводим бегунок в кадр 20 , - в результате предыдущая поза будет записана.
  • Создаем вторую позу:


  • Поднята уже вторая нога, при этом руки изменили положение.
  • Переходим в последний , 30 -й кадр.

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

Как записать отдельный ключ?

Для этого:

  • Выделяем Весь скелет !
  • В режиме Auto Key в 30 -м кадре, не трогая костей, нажимаем Set Key (НЕ кнопку с такой надписью, а большую квадратную кнопку с иконкой ключа), при этом ключ запишется.
  • Передвигаем бегунок в 0 . Фигурка вернулась в исходное положение - руки в стороны.


  • Нас это не устраивает. Отпускаем ей руки. При этом ключ перепишется (мы все еще в режиме Auto Key , так что аккуратнее).
  • Выходим из режима Auto Key .
  • Передвигаем бегунок на 30 -й кадр. Тело принимает последнюю заданную позу.

Копирование позы

Как скопировать позу из другого ключа? Для этого:

  • Выделяем все кости.
  • Щелкаем правой кнопкой по бегунку.
  • Вы помните, что у нас был шаг вперед? Снимаем галочку Position , оставляем только Rotate и Scale .
  • В строчке Source пишем номер кадра, откуда хотим взять позу, в данном случае 0 , и жмем Enter .
  • Тело принимает позу из нулевого кадра. Если вы забудете о галочке Position , вас сдернет в те координаты! Аккуратно выбирайте, какой ключ хотите копировать.


  • Теперь можно разморозить тело, снять галочку See through (Видеть насквозь ) и проиграть анимацию.


Конечно, она будет смотреться ужасно. Почему?

КАК добиться правильной анимации?

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

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

КАК сменить скорость?

  • Добавим времени. Идем в самую первую иконку с часиками и ставим End time 60 .
  • Выделяем ключи двойным кликом и переразмещаем на линейке: 30 на 60, 20 на 40, а 10 на 20. Вы помните, что мы уже несколько абзацев НЕ находимся в режиме Auto Key ?

КАК работать с исправлениями?

Теперь покрутите бегунок... Совсем не то, что вы ожидали. В 30 -м кадре человек принимает позу, которую физически принять невозможно. Поэтому:

  • Переходим в 30 -й кадр, жмем Auto Key и далее жмем Set Key . Создался ключ.
  • Выходим из режима Auto Key .
  • Выделяем все кости и копируем позу из 0 -го кадра, как описано выше.


Вот теперь ноги она поднимает и опускает по очереди, и руками машет, как надо. Но вот в начале анимации происходит форменный кавардак! На самом деле, мах ногой начинается одновременно с движением вперед, и шага нет... Исправим это.

  • Переведем бегунок в 15 кадр.
  • Включим Auto Key и далее жмем Set Key . И создадим ключик.
  • Выйдем из режима Auto Key .
  • Выделим весь скелетон.
  • Копируем позу из 20 -го кадра, ТОЛЬКО Position .
  • А потом из нулевого - КРОМЕ Position . Тренировка прежде всего!

Проиграем. Смешно, она подплывает туда, как лич. Стоит убрать это перемещение. Зря мы писали 15-й кадр...

Убираем лишнее движение

КАК убрать лишнее движение?

  • Для этого cкопируйте в ключи значение Position из 0 , НЕ переписывая Rotation и Scale . Теперь дама только машет ногами, но зато возникла пауза в начале.
  • Если движения больше нет, удалите ключ из кадра 15 .

Удаление ненужного ключа

КАК удалить ненужный ключ?

  • Для этого два раза щелкните по нему левой кнопкой мыши.
  • Затем щелкните правой кнопкой и выберите Delete Selected Keys .
  • Ну а теперь просто расставьте оставшиеся ключи равномерно.

Но мы хотим, чтобы она потанцевала подольше, или вовсе не прекращала этого делать, пока мы ей не скажем…

Запись циклической анимации

КАК записать повторяющуюся анимацию?

  • Чтобы зациклить анимацию, выделите все косточки и перейдите в Curve Editor

    ЕСЛИ вы хотите создавать ПОХОДКУ или анимацию с перемещением, выберите правую кнопку под Relative Repeat (Относительным Повторением) . Почему? Да потому, что походка перемещает вас относительно начальной координаты. И если вы выберете петлю, вас швырнет в ноль после завершения анимации. А я выбрала петлю потому, что движок игры перерасcчитывает координату локально - 0-30, 0-30...

    Ну вот, красотка заправски машет ногами и руками, хоть сейчас в кремлевские курсанты.

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

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

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

    P.S. Если вы блаженно выставили начальную позу и вдруг увидели, что забыли включить Auto Key , не пугайтесь. Включите его и сдвиньте бегунок в другой кадр, и там пошевелите ручкой, ножкой или Set Key нажмите - первая поза запишется в нулевой ключ сама АВТОМАТИЧЕСКИ , независимо от сложности.



Привязка модели к скелету

В этом уроке мы создадим систему BIPED и привяжем ее к простой модели мальчика. Она имеет не очень много точек/полигонов и идеально подходит для обучающих целей.

1. Загрузите модель мальчика из файла Boy.max
В проекции FRONT вы увидите примерно следующее:

2. С правой стороны экрана выберите вкладку CREATE , а затем SYSTEMS .
Нажмите на кнопку Biped , в окне проекции FRONT нажмите левую кнопку мыши на пересечении черных линий и, удерживая кнопку, потащите курсор вверх чтуть выше головы мальчика. Шея должна заканчиваться примерно на уровне ушей модели.


3. Выберите мышкой любую часть новосозданной системы и перейдите на вкладку MOTION .

4. Нажмите на кнопку Figure Mode , чтобы перейти в режим редактирования позы персонажа. Откройте вкладку Structure и поменяйте имя системы на BoyBip. Также измените настройки системы в соответствии с приведенными на рисунке:

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

5. Выберите верхнюю часть правой ноги мальчика, а затем инструмент Select and Rotate . Видите три оси, появившиеся в самом верху выбранной ноги?


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

6. Во вкладке Display включите отображение костей нажав на кнопку Bones (самая левая кнопка):

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

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

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

8. Выберите инструмент Select and Non-Uniform Scale (нажимая и удерживая кнопку мыши на кнопке Select and Scale , а затем выбирая из выпадающего списка Select and Non-Uniform Scale ). Уменьшите ногу по оси X, чтобы сочленение оказалось примерно в районе колена модели. У вас должно получиться примерно следующее:


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

Вы можете временно выключать во вкладке Display обьекты системы (Objects ) для того, чтобы лучше видеть кости.

У вас должно получиться примерно следующее:


10. Теперь нам необходимо выбрать палец, но он находится внутри модели и его тяжело выбрать. Чтобы решить эту проблему, мы заморозим модель мальчика для избежания ее случайного выбора. Выберите модель, нажмите на ней правой кнопкой и в выпавшем меню выберите Properties ... В появившемся окне поставте галочку возле надписи Freeze.


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

Теперь выбираем палец на ноге и масштабируем его пока он не станет нужных нам размеров. Примерно так:


11. Теперь выберем все части ноги и нажимаем на кнопку Copy Posture во вкладке Keyframing, а затем Paste Opposite . Мы скопировали позу для одной ноги и вставили ее для другой. Так как модель симметрична, нам нет необходимости подправлять другую ногу.

12. В меню Edit выберите Hold, чтобы сохранить результаты своей работы во временный файл. В случае неисправимой ошибки или сбоя системы данные можно будет восстановить командой Edit / Fetch.

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


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

14. Промасштабируйте голову, чтобы она совпадала с головой модели.

15. Теперь займитесь руками. Подгоните верхнюю и нижнюю часть одной руки. Подправте кисть и палец. У вас должно получиться так:


Скопируйте состояние (выбрав предварительно те части, которые необходимо скопировать) командой Copy Posture и нажмите Paste Opposite , чтобы скопировать состояние на противоположную руку.

Итак, у нас есть подогнанная под модель мальчика система Biped:


16. Сохраните результаты своей работы в файл BoyBiped.max. Теперь можно немного передохнуть.

17. Теперь мы привяжем модель мальчика к системе костей, чтобы при движении костей двигалась оболочка модели. Но для начала нам необходимо убрать Freeze с модели мальчика, чтобы мы могли ее выбрать. На панели справа выбираем Display , потом разворачиваем вкладку Freeze и нажимаем на UnFreeze All:

Нажимаем ОК и в появившихся свойствах модификатора нажимаем на кнопку Attach to Node . Physique переходит в режим выбора системы костей для оболочки модели (сетки). Нам необходимо выбрать пояс (Pelvis) системы Biped. Для облегчения процесса можно нажать в верхней панели на кнопку Select by Name (либо нажать на клавиатуре "H") и в открывшемся диалоге найти и два раза кликнуть на BoyBip Pelvis:

Появился диалог Physique Initialization. Оставим настройки по умолчанию и нажмем Initialize. После того как пропадет курсор в форме чашки кофе выберите любую часть системы Biped и перейдите на панель Motion . Отключите режим Figure Mode .

19. Попробуйте повращать различные части системы, чтобы посмотреть, как двигается модель вслед за изменением положения костей. Вы заметите, что большие пальцы на руках и ногах странно деформируются, частично оставаясь на месте, частично следуя за костью. Для исправления таких ошибок и настройки влияния костей на оболочку служит Envelope Editor модуля Physique. Выберите оболочку, перейдите на панель Modify и нажмите на кнопку Sub-Object в свойствах модификатора Physique. В выпадающем меню выберите Envelope:

Если вы очень сильно изменили положение частей тела системы и хотите отредактировать параметры модификатора Physique в той позе, в которой оболочка присоединялась к скелету, поставте галочку возле опции Initial Skeletal Pose.

21. Нас сейчас интересует параметр Child Overlap. Этот параметр увеличивает влияние родительской кости (кости находящейся выше по иерархии) на дочернюю кость. Влияние дочерней кости на родительскую зависит от параметра Parent Overlap. Радиус влияния зависит от параметра Radial Scale.

Сделайте значение параметра Child Overlap равным 0,5. Область влияние увеличится в сторону пальцев ноги, хотя у нашего пальца нет костей стоящих ниже его по иерархии. В таких ситуациях Physique просто увеличивает влияние в противоположную родительской кости сторону:


Сделайте аналогичную операцию на пальце другой ноги.

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

Влияние можно изменять для внутренней, внешней области и для обоих одновременно. Для выбора текущего режима служат кнопки-переключатели Inner (внутренняя зона), Outer (внешняя зона) и Both (обе зоны):

22. Теперь нам необходимо уменьшить влияние кистей рук на пальцы и увеличить радиус влияния внешней области кистей рук для захвата больших пальцев на руках. Выберите кисть, выберите режим редактирования внешней области (нажатием на кнопку-переключатель Outer) и измените параметры Child Overlap на 0,2 и Radial Scale на 3,0. Повторите операцию для противоположной руки.

23. Далее мы настроим голову и шею. Переключитесь в режим редактирования обейх зон влияния (Both). Выберите шейную кость и измените параметры Radial Scale на 2,5 и Parent Overlap на 0,0. Если вы сейчас выйдете из режима редактирования Envelopes и повращаете головой, вы заметите, что голова при повороте комично деформируется:


Это происходит потому, что кость головы сейчас находится в режиме деформирования. Нужно переключить ее в режим жесткости (Rigid). В режиме редактирования Envelopes выберите кость головы и поставте галочку возле параметра Rigid, убрав при этом галочку возле Deformable:

Переключитесь в режим Outer. Подправте параметр Parent Overlap до значения 0,3.

В режиме Both измените значения параметра Radial Scale на 0,42 у двух костей указанных на рисунке:


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

Теперь мы готовы к следующему этапу.

24. Выберите все элементы в сцене и уберите из выделения оболочку модели (CTRL+click). Перейдите на панель Motion и нажмите на Copy Posture . Этим мы скопировали позу персонажа для того, чтобы позже вставить ее на место. Теперь придайте персонажу какую-нибудь позу, вроде той что на картинке:


Вернитесь на панель Modify , войдите в режим Sub-Object и выберите Link из выпадающего списка. Откроется панель редактирования сочленений:

Нас больше всего интересуют группы параметров Bend (сгиб) и Sliding (скольжение). Попробуйте поэкспериментировать с параметрами этих групп, выбрав, к примеру, верхнюю часть руки. Tension означает "натяжение", Bias - "смещение", Inside - "внутреннее", Outside - "внешнее" и FallOff означает "затухание". Попробуйте эти параметры на других сочленениях. Не забывайте возвращать все параметры в первоначальное состояние.

25. Выберите оба плеча и предплечья:


Установите параметры Bend/Tension в 0,3 и Sliding/Outside в 1,0.

26. Выберите две тазовые кости:


Установите параметры Sliding/Inside в 1,0 и Sliding/Outside в 0,6.

27. Выберите две бедренные кости:


Установите параметр Sliding/Outside в 0,29.

28. Сохраните данные в файл BoyPhysique.max . Наш персонаж готов к анимации.

Создание персонажной анимации - одна из самых сложных задач трехмерной компьютерной графики.

Несмотря на это, она привлекает многих начинающих пользователей, которые, однако, часто не в силах ее освоить.

В этом уроке создадим простейшую анимацию с участием трехмерного персонажа. В качестве оболочки будем использовать стандартные примитивы 3ds max 7.

Очевидно, что созданный таким образом персонаж не претендует на реалистичность. Цель урока другая - продемонстрировать на примере основы работы с модулем Character Studio .

Перейдите на вкладку Create (Создание) командной панели, в свитке Object Type (Тип объекта) категории Systems (Дополнительные инструменты) нажмите кнопку Biped (Двуногий). Создайте объект в окне проекции (рис. 4.59).

Рис. 4.59. Объект Biped (Двуногий) в окне проекции

Создайте в окне проекции стандартный примитив Cylinder (Цилиндр) (рис. 4.60). Выровняйте его положение относительно ноги объекта и подберите параметры примитива таким образом, чтобы Cylinder (Цилиндр) охватывал кости ноги персонажа (рис. 4.61). Значение параметра Height Segments (Количество сегментов по высоте) установите равным 13.

Рис. 4.60. Объект Cylinder (Цилиндр) в сцене

Рис. 4.61. Расположение объекта Cylinder (Цилиндр) на персонаже

Клонируйте Cylinder (Цилиндр) и разместите полученный объект таким образом, чтобы он совпадал со второй ногой скелета. Аналогичным образом создайте цилиндры для рук персонажа и совместите их со скелетом (рис. 4.62). Совмещать объекты со скелетом персонажа нужно с максимальной точностью.

Рис. 4.62. Объекты Cylinder (Цилиндр) размещены на руках и ногах скелета

Теперь необходимо присоединить оболочку к скелету. Делать это лучше не со всей оболочкой сразу, а с ее отдельными частями. Выделите первый цилиндр (например, правой ноги), перейдите на вкладку Modify (Изменение) командной панели и выберите из списка Modifier List (Список модификаторов) модификатор Physique (Телосложение). Напомним, что он применяется к внешней оболочке будущего персонажа Character Studio , которую в нашем примере формируют примитивы.

В свитке Physique (Телосложение) настроек одноименного модификатора нажмите кнопку Attach to Node (Присоединить к оболочке) (рис. 4.63) и выберите элемент скелета, главный в той группе костей, на которую надевается внешняя оболочка.

На экране появится окно Physique Initialization (Условия составления телосложения) (рис. 4.64).

Рис. 4.63. Кнопка Attach to Node(Присоединить к оболочке) в настройках модификатора Physique (Телосложение)

Рис. 4.64. Окно Physique Initialization (Условия составления телосложения)

Данное окно содержит несколько свитков с параметрами, которые определяют начальные настройки огибающей поверхности. Нажмите кнопку Imtiahze (Составить) Теперь выделенный элемент будет присоединен к системе костей персонажа, и при изменении положения костей оболочка будет деформироваться. Чтобы убедиться в этом, выделите объект Bip01 при помощи окна Select Objects (Выбор объектов) (рис 4.65), которое вызывается клавишей Н . Перейдите на вкладку Motion (Движение) командной панели и при помощи кнопки Load File (Загрузить файл) (рис. 4.66) в свитке настроек Biped (Двуногий) загрузите файл walk_start.bip (рис. 4.67). В этом файле хранится информация о движении скелета.

Рис. 4.65. Окно Select Objects (Выбор объектов)

Рис. 4.66. Кнопка Load File (Загрузить файл) в свитке настроек Biped (Двуногий)

Рис. 4.67. Выбор файла walk_start.bip

После загрузки файла вы увидите, что скелет и присоединенная к нему оболочка изменят свое положение в сцене.

Вернуть скелет с присоединенной оболочкой на прежнее место можно, выделив объект Bip01 , и в свитке Biped (Двуногий) на вкладке Motion (Движение) командной панели включить режим Figure Mode (Режим фигуры) (см. рис. 4.25). Если щелкнуть на плюсике в нижней части свитка Biped (Двуногий), то появятся дополнительные настройки. Нажав кнопку In Place Mode (Режим «на месте»), можно заставить скелет двигаться на месте в той точке, в которой он находился до загрузки файла walk_start. bip (рис. 4.68). Теперь можно проиграть анимацию, нажав кнопку Play Animation (Воспроизведение анимации). Вы увидите, что персонаж будет идти реалистичной походкой (рис. 4.69). При выделенном объекте Bip01 на шкале анимации будут обозначены ключевые кадры, по которым создается реалистичная ходьба персонажа (рис. 4.70). Они были созданы с использованием технологии Motion Capture .

Рис. 4.68. Кнопка In Place Mode (Режим «на месте») в дополнительных настройках свитка Biped (Двуногий)

ПРИМЕЧАНИЕ

Вы также можете воспроизвести анимацию персонажа при помощи кнопки Biped Playback (Воспроизведение движений), которая находится в свитке Biped (Двуногий) вкладки Motion (Движение). Однако в этом случае двигаться будет только схематично нарисованный персонаж, в то время как при нажатии кнопки Play Animation (Воспроизведение анимации) видна вся анимация без упрощения.


Рис. 4.69. Движение персонажа в окне проекции


Рис. 4.70. Обозначение ключевых кадров на шкале анимации в нижней части окна 3ds max 7

Теперь, когда мы убедились, что скелет совмещен с частью оболочки, можно повторить операцию присоединения для всех частей оболочки. Убедитесь, что режим Figure Mode (Режим фигуры) включен.

Выделите следующий цилиндр (например, вторую ногу), перейдите на вкладку Modify (Изменение) командной панели и выберите из списка Modifier List (Список модификаторов) модификатор Physique (Телосложение). В свитке Physique (Телосложение) настроек одноименного модификатора нажмите кнопку Attach to Node (Присоединить к оболочке) и выберите элемент скелета, главный в той группе костей, на которую надевается внешняя оболочка.

ПРИМЕЧАНИЕ

Чтобы увидеть, какой элемент скелета является основным в группе, в окне Select Objects (Выбор объектов) установите флажок Displace Subtree (Отображать иерархию) (рис. 4.71).

Рис.4.71.Окно Select Objects (Выбор объектов) c включенным режимом Display Subtree (Отображать иерархию)

На экране возникнет окно Physique Initialization (Условия составления телосложения) (см.рис. 4.64). Нажмите кнопку Initialize (Составить). Теперь выделенный элемент будет присоединен к системе костей персонажа, и при изменении положения костей оболочка будет деформироваться. Выключив режим Figure Mode (Режим фигуры) и просмотрев анимацию, можно увидеть, насколько удачно вы совместили оболочку со скелетом. Есть большая вероятность того, что некоторые вершины не попадут под действие огибающей поверхности, поэтому на экране форма оболочки сильно исказится (рис. 4.72). Такое неправильное смещение вершин происходит из-за того, что в процессе присоединения оболочки персонажа к системе костей возникли неправильные связи.

Рис. 4.72. Искажение формы оболочки

Чтобы исправить этот недостаток, выделите оболочку, которую необходимо отредактировать, перейдите на вкладку Modify (Изменение) командной панели и щелкните на значке плюса возле названия модификатора Physique (Телосложение). Переключитесь в режим редактирования подобъектов Vertex (Вершина). При этом на ноге отобразятся все вершины оболочки (рис. 4.73).

В свитке Link-Assignment (Назначение связи) настроек режима редактирования подобъектов Vertex (Вершина) нажмите кнопку Select (Выбрать) и выделите в сцене неудачные вершины (рис. 4.74).

Нажмите кнопку Assign to Link (Назначить связь) и укажите, на какой кости будут закреплены выбранные вершины. Вы увидите, что вершины изменили свое положение (рис. 4.75).

Теперь можно проиграть анимацию, нажав кнопку Play Animation (Воспроизведение анимации). При этом проследите, не осталось ли вершин, которые необходимо присоединить к той или иной кости. Если все в порядке (рис. 4.76), можно переходить к присоединению рук.


Рис. 4.73. Вид оболочки при переходе в режим редактирования подобъектов Vertex (Вершина) модификатора Physique (Телосложение)

Рис. 4.74. Выделение неправильно расположенных вершин


Рис. 4.75. Вершины изменили положение

Рис. 4.76. При движении персонажа в окне проекции нет выступающих вершин

Включите режим Figure Mode (Режим фигуры) и повторите описанную выше операцию присоединения объектов к скелету поочередно для каждого цилиндра. Если выключить режим Figure Mode (Режим фигуры) и просмотреть анимацию, то будет видно, насколько удачно вы совместили оболочку со скелетом. Может возникнуть проблема, когда потребуется удалить связи, установленные между оболочкой и костями. Чтобы исправить этот недостаток, выделите оболочку, которую необходимо отредактировать, перейдите на вкладку Modify (Изменение) командной панели и щелкните на значке «плюс» возле названия модификатора Physique (Телосложение). Переключитесь в режим редактирования подобъектов Vertex (Вершина). При этом на ноге отобразятся все вершины оболочки. В свитке Link-Assignment (Назначение связи) настроек режима редактирования подобъектов Vertex (Вершина) нажмите кнопку Select (Выбрать) и выделите в сцене неудачные вершины. Нажмите кнопку Remove from Link (Удалить связь) (рис. 4.77) и укажите элемент скелета, с которым необходимо удалить связи. Вы увидите, что вершины изменили свое положение.

Рис. 4.77. Кнопка Remove from Link (Удалить связь) в свитке Link-Assignment (Назначение связи)

Когда присоединение оболочки к скелету будет завершено, можно скрыть скелет. Для этого поочередно выделите каждый элемент оболочки, к которым был применен модификатор Physique (Телосложение). Перейдите на вкладку Modify (Изменение) командной панели и в свитке Physique Level of Detail (Уровень детализации) настроек модификатора установите флажок Hide Attached Nodes (Скрыть присоединенные вершины).

При анимировании оболочек персонажа, содержащих большое количество полигонов, бывает очень трудно управлять вершинами оболочки. По этой причине те вершины, в положении которых вы уверены, можно спрятать. Для этого нажмите кнопку Select (Выбрать) в свитке Link-Assignment (Назначение связи) настроек режима редактирования Vertex (вершина) и щелкните на кнопке Hide (Спрятать). Если вам снова понадобится увидеть все вершины, нажмите кнопку Unhide All (Показать все).

Попробуйте, взяв за основу этот урок, создать голову и туловище персонажа. В качестве оболочки для головы можно, например, использовать стандартный примитив Teapot (Чайник), а в качестве оболочки для туловища- цилиндр с большим радиусом, чем тот, на основе которого были смоделированы ноги и руки. Готовый персонаж может выглядеть так, как показано на рис. 4.78.

Рис. 4.78. Готовый персонаж, полученный в результате присоединения скелета к частям оболочки

Подведем итоги урока - выполнив его, вы научились:

  • создавать скелет персонажа;
  • совмещать оболочку со скелетом;
  • присоединять оболочку к скелету;
  • использовать модификатор Physique (Телосложение);
  • воспроизводить несложную анимацию персонажа;
  • вручную присоединять к костям скелета те вершины оболочки, которые не были корректно присоединены;
  • вручную отсоединять от костей скелета те вершины оболочки, которые не были корректно присоединены;
  • скрывать скелет при воспроизведении анимации.