Тема: Анимация с помощью каркасов (bones)

Система объектов Bones (кости) ориентированна на формирование связанных цепочек «костей», позволяющих имитировать скелет персонажа. Обычно систему костей создают для анимации персонажа, уже имеющего готовую телесную оболочку. В этом случае кости в процессе создания размещают внутри сетки тела персонажа.

 

 

Создание системы костей

 

Для начала научимся создавать простую систему костей. Щелкните на кнопке Systems(системы) командной панели Create(создать) и выберете инструмент Bone(кости) Рис.1.

Рис.1 (Расположение кнопки Bones)

 

Если Вы хотите изменить размеры и форму костей, принятые по умолчанию, настройте следующие параметры в свитке Bone Parametrs (параметры кости) Рис.2.

Рис.2 (Параметры объекта Bones(кости))

 

Width(ширина) – ширина кости

Height (высота) – высота кости

Taper (заострение) – степень заострения кости от ее начла к концу

Side Fins (боковые плавники), Front Fin(передний плавник), Back Fin(задний плавник) – флажки, установка которых ведет к появлению на создаваемой кости выступов по бокам, спереди и сзади. Эти выступы играют не только декоративную роль, но и помогают управлять оболочкой тела персонажа в ходе скелетных деформаций.

Size(размер), Start Taper(заострение в начале), End Taper(заострение в конце) – счетчики, задающие ширину соответствующих выступов, а также степень их заострения в начале и в конце.

 

Щелкните в точке окна проекции, где должна начинаться первая из костей, и переместите курсор до точки, где она должна закончиться, и еще раз нажмите левую кнопку мыши. Так можно создавать все новые и новые кости, которые автоматически связываются в иерархическую цепочку. В этой цепочки самым старшим объектом становится первая из созданных костей, а самым младшим – последняя из них. Для завершения создания цепочки костей щелкните правой кнопкой мыши. При этом на конце цепочки создается дополнительная маленькая «косточка» Рис.3.

 

Рис.3 (Создание системы костей)

 

 

Локальная система координат каждой кости автоматически помещается в месте ее сочленения с родительской костью Рис.4.

Обратите внимание, по умолчанию к костям назначена прямая кинематика.

 

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

 

 

Привязка костей к объекту

 

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

 

Рассмотрим принцип действия модификатора Skin(оболочка) на простейшем примере.

Создайте цилиндр с достаточным числом сегментов по высоте, например, 15  Рис.5.

 

Рис.5 (цилиндр с 15 сегментами по высоте)

 

Теперь создайте систему из двух объектов Bones(кости). Разместите кости точно вдоль вертикальной оси цилиндра Рис. 6

 

Рис.6 (кость размещается внутри цилиндра)

 

 

Выделите цилиндр, перейдите в командную панель Modify(изменить) и выберите модификатор Skin(оболочка). Щелкните на кнопке Add (добавить) свитка Parameters(параметры), чтобы добавить кости Рис.7.

 

Рис.7 (расположение кнопки добавление костей)

 

 

В появившемся окне Select Bones (выделение костей) выделите в списки кости Bone01 и Bone02 и щелкните на кнопке Select(выделить) Рис.8.

 

Рис.8 (окно Select Bones)

 

 

Имена выбранных костей появятся в списке свитка, расположенном под кнопкой Edit Envelopes(правка огибающих) Рис.9.

 

Рис.9 (список добавленных костей)

 

 

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

 

Рис.10 (зона влияния костей не охватывает полностью цилиндр)

 

 

Для настройки зоны влияния костей выделите в списке свитка Parameters(параметры) кость Bone01 и щелкните на кнопке Edit Envelopes(правка огибающих) Рис.11.

 

Рис.11 (расположение кнопки Edit Envelopes(правка огибающих))

 

 

В окнах проекций появится изображение зоны влияния кости в виде эллипсоидов: внутреннего (степень влияния на объект – 100%), красного цвета, и внешнего (область между эллипсоидами – область перехода от 100% к 0% влиянию кости на объект), коричневого цвета. Как видно, даже внешний эллипсоид не охватывает оболочку цилиндра Рис. 12.

 

Рис.12 (изображения зоны влияния второй кости)

 

 

Задача состоит в том, чтобы увеличить область действия кости. Укажите курсором на один из маркеров внешнего эллипсоида и переместите его, увеличивая размер области влияния Рис. 13.

Красный цвет вершин указывает на то, что они оказались под 100-процентным влиянием выделенной кости.

Рис.13 (увеличение зоны влияния второй кости)

 

 

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

Рис.14 (распространение зоны влияния второй кости до низа цилиндра)

 

 

Теперь выключите режим настройки областей влияния, щелкнув на кнопке Edit Envelopes(правка огибающих) и поверните кость Bone02 Рис. 15.

Рис.15 (изображение изгиба кости)

 

 

Как видим, изгиб не очень хорош, попробуем его немного сгладить.

Используя настройку области влияния костей, действуя в интерактивном режиме и сразу наблюдая результат, постарайтесь достичь плавности изгиба Рис. 16.

 

Рис.16 (изображение изгиба после редактирования зон влияния)

 

 

Создание персонажа

 

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

 

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

 

Для начала создадим позвоночник, состоящий из трех костей Рис.17.

 

Рис.17 (3 кости формирующие позвоночник)

 

Теперь создадим ответвление от нижней кости, состоящее из трех костей, которое будет играть роль правой ноги. Для этого нажмите кнопку Bones(кости). Щелкните кнопкой мыши на нижнюю кость позвоночника и перемещайте курсор. От конца выбранной кости ответвится новая цепочка костей. Завершив построение новой цепочки, щелкните правой кнопкой мыши. Все кости новой цепочки становятся дочерними по отношению к той кости, от конца которой было выполнено ответвление Рис. 18.

 

Рис.18 (правая нога крепится к нижней кости позвоночника)

 

 

Аналогично создайте левую ногу, делая ответвление так же от последней кости позвоночника Рис. 19.

 

Рис.19 (левая нога ткаже ответвляется от нижней кости позвоночника)

 

 

Теперь создайте руки, состоящие из трех костей, выполняя ответвление от самой первой кости позвоночника Рис.20.

 

Рис.20 (изображение готового скелета)

 

 

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

IK solvers(IK решения) контроллер HI Solvers(HI решение) Рис. 21. Данный контроллер позволяет организовать действие интерактивной обратной кинематики только на определенном участке цепочки объектов.

 

Рис.21 (выбор контроллера анимации HI Solver(HI решение))

 

 

Далее от локальной системы координат выделенного объекта потянется пунктирная линия. Щелкните кнопкой мыши на последнюю кость правой ноги. Появится изображение цепи контроллера в виде белых линий и изображения объекта IK Chain(IK-цепочка) в виде перекрестья Рис.22.

 

Рис.22 (изображение объекта IK Chain(IK-цепочка))

 

 

Теперь для анимации правой ноги, на которую распространился метод интерактивной обратной кинематики, необходимо анимировать объект IK Chain(IK-цепочка) Рис. 23. Первая кость ноги является самой старшей, последняя соответственно самой младшей.

 

Рис.23 (перемещение объекта IK Chain(IK-цепочка))

 

Назначьте аналогичным образом данный контроллер рукам и левой ноге Рис.24.

 

Рис.24 (контроллер HI Solver(HI решение) назначин рукам и ногам)

 

 

Осталось создать тело для нашего скелета. Для этого, используя Line(линию), обведите скелет по периметру, не забывая ставить вершины в местах, где будет происходить сгиб костей. По завершению замкните сплайн Рис.25.

 

Рис.24 (контур будущего тела нашего персонажа)

 

Примените к сплайну модификатор Extrude(выдавливание) и выдавите на толщину, пропорциональную телу Рис. 25.

 

Рис.24 (готовый персонаж)

 

 

Теперь, используя полученные знания, примените скелет к персонажу и настройте области влияния. А теперь только осталось получать удовольствие от анимирования нашего первого персонажа Рис.26.

 

                     

Рис.24 (анимация персонажа)