Ограничения в Anime Studio Pro

wpid-AnimeStudioPro5_image458.png

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

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

Конечно, можно постараться и постоянно помнить об ограничениях, не позволяя костям в процессе создания анимации совершать недопустимые с точки зрения биомеханики перемещения. Но все-таки проще и надежнее заранее задать допустимые углы перемещений каждой кости. Для этой цели в программе Anime Studio Pro у каждой кости предусмотрено специальное свойство Angle constraints (Ограничения на углы поворота), которое находится в выпадающем списке Bone Constraints (Костные ограничения) на информационной панели инструмента Select Bone (Выбор кости) (рис. 5.20).

Рассмотрим применение ограничения Angle constraints (Ограничения на углы поворота), на примере правой бедренной кости нашего персонажа. Вначале инструментом Select Bone (Выбор кости) выделим правую бедренную кость (рис. 5.20). Затем откроем список Bone Constraints (Костные ограничения) и поставим флажок Angle constraints (Ограничения на углы поворота). По умолчанию вам будет предложен диапазон поворота кости от –70 до 70 градусов, который будет выведен в цифровом виде в числовых полях списка, а также в графическом виде в форме двух ограничивающих линий красного цвета у основания выделенной кости. Обязательно найдите эти ограничивающие линии. Это важно. На рис. 5.20 на них указывает стрелка.

Рис. 5.20. Применение ограничения на угол поворота

Примем эти ограничения и закроем список, щелкнув по кнопке Close (Закрыть). Проверим работу ограничения. Перейдем, например, в кадр 6, активизируем инструмент Manipulate Bones (Манипулирование костями) и повернем правую бедренную кость. Кость действительно будет поворачиваться только до ограничивающей линии, не дальше (рис. 5.21).

Рис. 5.21. Поворот кости на допустимый угол

Изменим числовые значения ограничений. Активизируйте инструмент Select Bone (Выбор кости), откройте список Bone Constraints (Костные ограничения), нажмите колесико мыши на числовом поле, где было –70. Вращая колесико, измените минимальное числовое значение (по умолчанию изменения производятся с шагом 5), сделав его равным –45, а максимальное 45. Вы, наверное, заметили, что синхронно с вращением колесика перемещалась соответствующая красная ограничивающая линия, находящаяся у основания правой бедренной кости.

Самостоятельно расставьте подобные ограничения для всех костей скелета.

Когда мы создавали костный скелет, то умышленно включили функцию автоматического именования костей (рис. 5.4). И теперь все кости скелета нашего персонажа имеют свои имена. Мы также выяснили, что эти имена числового типа и представляют собой порядковые номера костей. Если номера вам не нравятся, то можно именовать кости словами, вводя их в поле на информационной панели инструмента Select Bone (Выбор кости). Так или иначе, но имена нам понадобятся для дальнейшего применения ограничений.

Следующее ограничение из списка Bone Constraints (Костные ограничения) называется Angle control bone (Кость, управляющая углом поворота). С помощью этого ограничения можно сделать так, что одна кость будет управ-

лять углом поворота другой кости. То есть будет создана пара костей, из которых одна кость ведущая, а другая — ведомая. При этом для ведомой кости остаются в силе значения предельных углов поворота, заданные в свойстве Angle constraints (Ограничения на углы поворота).

Проверим это утверждение на любой паре костей. Свяжем, например, левую и правую берцовые кости. Левую кость сделаем ведущей, а правую — ведомой. Левое и правое определяется с точки зрения персонажа. Для левой кости установите значение предельных углов поворота от –70 до 70 градусов. Для правой кости установите от –30 до 25 градусов. В моем примере имя правой берцовой кости 10, а левой 12 (рис. 5.22).

Инструментом Select Bone (Выбор кости) выберите кость 10. Откройте список Bone Constraints (Костные ограничения) и выберите в списке Angle control bone (Кость, контролирующая угол поворота) номер, соответствующий левой берцовой кости. В моем примере это 12 (рис. 5.22). Вот и все. Теперь кости 10 и 12 являются связанными, причем кость 12 ведущая, а кость 10 ведомая.

Рис. 5.22. Настройка свойства Angle control bone

 

В числовом поле, расположенном справа от списка с именами костей, по умолчанию записана 1 (рис. 5.22). Эта единица означает отсутствие начального поворота ведомой кости. То есть стартовое взаимное расположение костей совпадает с их расположением в скелете. Если заменить единицу на какое-либо другое число, то ведомая кость повернется, и взаимное стартовое расположение костей будет уже иным, чем оно было в скелете. Чтобы понять, о чем идет речь, нажмите и вращайте колесико мыши в этом числовом поле. Значения коэффициента начального поворота будут меняться с шагом 0,25, а знак будет зависеть от направления вращения колесика. Назначьте коэффициенту начального поворота значение 6,75 (рис. 5.23). Это предельное значение, вызывающее поворот кости. Если вращать колесико дальше, числовое значение в поле будет расти, но вращение кости прекратится. Почему? Потому что остаются в силе ограничения на угол поворота кости, заданные в свойстве Angle constraints (Ограничения на углы поворота). А задано там было –30 градусов. Если вращать колесико в обратную сторону, то значение коэффициента начального поворота будет уменьшаться, перейдя в область отрицательных значений. Для заданного ограничивающего угла 25 градусов остановка кости произойдет при значении –5,50 (рис. 5.23). Верните для коэффициента начального поворота значение 1.

Рис. 5.23. Изменение коэффициента начального поворота

Проверим действие свойства Angle control bone (Кость, контролирующая угол поворота). Перейдите, например, в кадр 6. Щелкните по пиктограмме инструмента Manipulate Bones (Манипулирование костями) и подвигайте с помощью этого инструмента кость 12. Кость 10 будет поворачиваться следом за костью 12, но до определенного момента. Этот момент задан предельным углом в свойстве Angle constraints (Ограничения на углы поворота). Как бы высоко мы ни поворачивали кость 12, ограничения на угол предельного поворота кости 10 будут препятствовать ее дальнейшему вращению. Вращайте кости в другую сторону. Чтобы разорвать связь между костями, выберите в списке Angle control bone (Кость, контролирующая угол поворота) значение None (Никакая). Кости разъединятся.

Рис. 5.24. Работа костей, связанных углом поворота

Рассмотренный пример связывания берцовых костей можно применить, например, для анимации танцующего персонажа. Но это не лучшее применение свойства Angle control bone (Кость, контролирующая угол поворота). Значительно интереснее будет связать основную кость скелета, например локтевую, с дополнительной костью, добавленной в то место на форме, где у персонажа по идее должна располагаться мышца. При определенных движениях локтевой кости бицепс напрягается, увеличиваясь в объеме. Попытаемся смоделировать напряжение бицепса при сгибании руки.

Установим вертикальный указатель текущего кадра на нулевой кадр. На векторном слое нарисуем условно новый персонаж, преобразовав его в форму. Не стремитесь к реализму. Сейчас главное понять прием использования вспомогательной кости. Создадим костный слой. Расположим векторный слой с формой на уровень подслоя по отношению к костному слою. При активном костном слое, нарисуем костный скелет (рис. 5.25). Помимо стан-

дартных костей, добавим еще одну вспомогательную небольшую по размерам кость на предплечье в месте расположения бицепса (рис. 5.25). Эту вспомогательную кость, в моем примере под номером 6, свяжем с локтевой костью, под номером 5. Для вспомогательной кости 6 установим ограничения на угол поворота Angle constraints (Ограничения на углы поворота), как показано на рис. 5.25. Диапазон углов от –15 до 5 градусов определен экспериментально. При других углах в моем примере получается сильный провал в месте расположения бицепса при разгибе руки. У вас может быть подругому.

Рис. 5.25. Моделирование напряжения бицепса при сгибании руки

Установите ограничения для локтевой кости на угол ее поворота, исходя из здравого смысла (рис. 5.26).

На рис. 5.27 приведена структура иерархических связей костей скелета.

Все это мы делали, напомню, находясь в нулевом кадре. Теперь перейдем, например, в кадр 6. Сделаем активным костный слой. Щелкнем по пиктограмме инструмента Manipulate Bones (Манипулирование костями) и повернем локтевую кость 5 в сторону разгибания (рис. 5.28, слева). Теперь повернем локтевую кость в сторону сгибания (рис. 5.28, справа). Эффект от имитации работы бицепса заметен.

Рис. 5.26. Ограничения Angle constraints для локтевой кости

Рис. 5.27. Структура иерархических связей костей скелета

Рис. 5.28. Использование вспомогательной кости, имитирующей работу бицепса

Настроим вспомогательную кость. Во-первых, она слишком длинная и дает, как следствие, слишком большое вздутие бицепса. Вернемся в нулевой кадр, сделаем активным инструмент Translate Bone (Перемещение кости) и изменим на информационной панели значение параметра Length (Длина). Вращая колесико мыши, уменьшим длину вспомогательной кости с 0,2513 на 0,1513 (рис. 5.29). Укоротив кость, передвинем ее левее примерно на середину плечевой кости (рис. 5.29). Снова перейдем, например, в кадр 6, согнем локтевую кость. На этот раз вздутие бицепса получилось реалистичнее. Подумайте, какие еще пары кость-мышца можно составить в рамках анатомии человека. Одна пара очевидна: кость бедра — четырехглавая мышца бедра. Четырехглавая мышца бедра напрягается (увеличивается в объеме), когда человек приседает, то есть когда кость бедра перемещается вниз. Вмонтируйте вспомогательную кость в то место бедра, где располагается четырехглавая мышца, задайте соответствующую связь в свойстве Angle Control Bone (Кость, контролирующая угол поворота) и создайте анимацию вздутия четырехглавой мышцы при повороте бедренной кости. Для вспомогательной и бедренной костей можете задать ограничение углов в свойстве Angle constraints (Ограничения на углы поворота).

Рис. 5.29. Изменение параметров вспомогательной кости

И последнее замечание. Одна кость может управлять поворотом многих вспомогательных костей. Посмотрите анатомический атлас мышц бедра. Посмотрите на свою ногу в районе поверхности бедра в момент приседания. В каких местах вы видите увеличение объема мышц при приседании? Чтобы получить более реалистическую анимацию движения персонажа, надо во всех этих точках разместить вспомогательные кости, которые поворачивались бы, имитируя вздутие мышц при повороте бедренной кости. В этом случае надо посредством свойства Angle control bone (Кость, контролирующая угол поворота) подсоединить каждую вспомогательную кость к одной и той же бедренной кости, задав для каждой вспомогательной кости свои ограничения на угол поворота в свойстве Angle constraints (Ограничения на углы поворота). Значения ограничений на углы поворота выбираются исходя из характера создаваемого вами персонажа. Если это спортсмен, то мускулатура должна быть развита и вспомогательные кости могут поворачиваться на большие углы, деформируя линию контура формы бедра. Для хилого персонажа углы поворота вспомогательной кости должны быть небольшими, лишь слегка намечая сокращение неразвитых мышц. Выполните это задание самостоятельно.

Следующее ограничение Position control bone (Кость, контролирующая положение) так же позволяет создавать связанные костные структуры, в которой одна кость управляет другой или другими костями. Но в этом случае связь устанавливается на основе линейного перемещения ведущей кости. Рассмотрим пример.

Установите вертикальный указатель текущего кадра на нулевой кадр. Проверьте включение функции автоматического присваивания имен создаваемым костям (рис. 5.4). Кости должны иметь имена, иначе ограничений не установить. Создайте костный слой. Инструментом Add Bone (Добавить кость) создайте две кости. У них будут имена, соответственно, 1 и 2. Распределим роли следующим образом. Пусть кость 2 будет ведомой, а кость 1 ведущей. Инструментом Select Bone (Выбрать кость) выделим кость 2. Ее имя будет выведено в поле имен на информационной панели инструмента Select Bone (Выбрать кость) (рис. 5.30). Откроем список Bone Constraints (Костные ограничения). В списке Position control bone (Кость, контролирующая положение) выберите имя кости 1 (рис. 5.30). Это означает, что теперь кость 2 нельзя будет сдвинуть с места инструментами Translate Bone (Перемещение кости) и Manipulate Bones (Манипулирование костями). Кость 2 можно будет теперь сдвинуть только, если применить эти инструменты к кости 1. Остальные инструменты, такие как Scale Bone (Масштабирование кости) и Rotate Bone (Вращение кости), к кости 2 применимы. Проверьте это.

В двух числовых полях, расположенных справа от списка, устанавливаются числовые значения приращения координат кости 2. В первом поле устанавливается приращение по координате X (горизонтальная ось), во втором поле — приращение по координате Y (вертикальная ось). Если установить в обоих полях нули (рис. 5.30), то кость 2 будет просто следовать за линейным пере-

мещением кости 1, не опережая и не отставая от нее. Проверим это. Перейдите, например, в кадр 6. Выберите инструмент Translate Bone (Перемещение кости) и переместите кость 1 вправо, влево, вверх и вниз. Кость 2 следует за костью 1 как тень. Слово "тень" дает подсказку относительно использования такого соединения костей.

Рис. 5.30. Установка параметров ограничения Position control bone

 

Если мы хотим, чтобы ведомая кость 2 следовала с опережением кости 1 по координате X (горизонтальная ось), то в числовое поле, соответствующее координате X, надо ввести положительное число. Вернитесь в нулевой кадр, щелкните по пиктограмме инструмента Select Bone (Выбрать кость), выделите кость 2 и откройте список Bone Constraints (Костные ограничения). В первом слева поле надавите и покрутите колесико мыши (в направлении от себя), пока не наберется 1 (по умолчанию шаг 0,25) (рис. 5.31). Закройте список Bone Constraints (Костные ограничения), щелкнув по кнопке Close (Закрыть). Перейдите, например, в кадр 6. Инструментом Translate Bone (Перемещение кости) переместите кость 1 в горизонтальном направлении (c прижатой клавишей <Shift> вы будете двигаться строго по горизонтали), например, вправо. Вы заметите, что кость 2 опережает кость 1. Это сказывается шаг, равный 1, который прибавляется к координате кости 1 по оси X. Если перемещать кость 1 в вертикальном направлении (не забудьте про кла-

вишу <Shift>), то кость 2 будет следовать строго параллельно кости 1, не опережая и не запаздывая. Это происходит потому, что приращение по оси Y (вертикальная ось) равно 0.

Рис. 5.31. Положительное приращение по оси X кости 2

Вернитесь в нулевой кадр, щелкните по пиктограмме инструмента Select Bone (Выбрать кость), выберите кость 2 и откройте список Bone Constraints (Костные ограничения). Задайте теперь отрицательное приращение по оси X для кости 2, например, –0,25. Перейдите, например, в кадр 6 и инструментом Translate Bone (Перемещение кости) подвигайте кость 1. Теперь кость 2 отстает от кости 1. Самостоятельно исследуйте вертикальное перемещение с положительными и отрицательными значениями приращений по оси Y. Предельные значения шага не оговорены. Допустимо вести, например, число 1000000, но работать с таким большим шагом не рекомендую в силу его полной практической бесполезности.

В качестве примера применения ограничения Position control bone (Кость, контролирующая положение) рассмотрим анимацию взаимодействия движений зрачка и век. Задача в том, чтобы при движении зрачка изменялось положение контура глазного яблока, имитируя движение век. Например, при движении зрачка вправо, верхнее веко поднимается, а нижнее веко опускается. Это движение надо анимировать с помощью связывания костей ограниче-

нием Position control bone (Кость, контролирующая положение). Ведущей костью будет кость, расположенная в зрачке (звучит неприятно). А ведомые кости расположены в верхнем и нижнем веке. Ведущая кость будет двигаться по горизонтали, а ведомые кости по вертикали. Исходные формы и кости для нашей сцены представлены на рис. 5.32.

Рис. 5.32. Исходные элементы

На векторном слое Layer 1 созданы две формы на основе двух овалов (рис. 5.32). Овал зрачка расположен поверх овала глазного яблока. Чтобы это сделать, (при активном слое Layer 1) инструментом Select Shape (Выбрать форму) выделите форму, изображающую зрачок, и щелкните по пиктограмме инструмента Raise Shape (Поднять форму).

На костном слое Layer 2 нарисовано три кости (рис. 5.32). Кости имеют имена. По середине на зрачке кость 1. Вверху (на верхнем веке) кость 2. Внизу (на нижнем веке) кость 3. Иерархические связи между костями разорваны. Чтобы это сделать (при активном слое Layer 2), выделите инструментом Se- lect Bone (Выделить кость) одну кость, например, кость 2. Вызовите инструментом Reparent Bone (Изменение иерархических связей костей) схему иерархических связей и щелкните левой кнопкой мыши по красной стрелочке, указывающую на родительскую кость. Стрелочка исчезнет, а вместе с ней исчезнет и иерархическая связь. Аналогичную операцию повторите для кости 3. Если что-то не получилось, еще раз внимательно прочитайте материал этой главы, где мы подробно разбирали подобные операции.

Теперь займемся формами. Для формы, изображающей зрачок, надо привязать все ее узлы к кости 1, разорвав при этом связь этих узлов с костями 2 и 3.

Для узлов формы, изображающей глазное яблоко, надо вначале разорвать связь этих узлов со всеми костями, а затем привязать верхний узел к кости 2, а нижний узел — к кости 3. Звучит несколько запутанно, но преследует ясную цель: верхнее веко должно перемещаться за один узел костью 2, а нижнее должно перемещаться за один узел костью 3. Зрачок должен перемещаться только костью 1.

Рассмотрим подробно отсоединение и присоединение узлов формы к костям. Отсоединим все узлы обеих форм. Начнем с формы, изображающей зрачок. Установите вертикальный указатель текущего кадра на нулевой кадр. Сделайте активным векторный слой Layer 1. Инструментом Select Points (Выделить узлы) выделите все 4 узла овала зрачка. Можете выделить один узел, а затем выполнить команду главного меню Edit (Редактировать) | Select Connected (Выделить связанные). Когда все узлы будут выделены, выполните другую команду главного меню Bone (Кость) | Release Points (Освободить узлы) (рис. 5.33). В результате этой команды зрачок будет оставаться неподвижным при перемещении любой из трех костей. Проверьте это, перейдя, например, в кадр 6, и используя инструмент Translate Bone (Перемещение кости). Аналогичным образом отсоедините узлы формы, изображающей глазное яблоко.

Рис. 5.33. Команда Release Points для узлов формы зрачка

Теперь будем привязывать нужные узлы к нужным костям. Начнем с привязывания к кости 1 узлов формы, изображающей зрачок. Находясь в нулевом кадре, сделайте активным костный слой Layer 2 и инструментом Select Bone (Выделить кость) выделите кость 1. Ее каркас должен окраситься в красный цвет. Затем щелкните по ярлыку векторного слоя Layer 1, чтобы сделать его активным, и инструментом Select Points (Выделить узлы) снова выделите все 4 узла формы зрачка. Щелкните по пиктограмме инструмента Bind Points

(Привязать узлы), а затем нажмите на клавиатуре клавишу <Пробел>. Здесь важно выполнить в точной последовательности перечисленные действия, иначе узлы не присоединятся к кости.

Перейдите, например, в кадр 6 и с помощью инструмента Translate Bone (Перемещение кости) подвигайте костью 1. Кроме кости 1 должен перемещаться только зрачок. Овал, изображающий глазное яблоко, должен оставаться на месте. Если сразу это не получилось, сделайте привязку узлов заново, начав с операции отсоединения узлов Bone (Кость) | Release Points (Освободить узлы) (рис. 5.33). Тренируйтесь (повторяйте) до тех пор, пока эти действия не будут получаться у вас легко, не вызывая ни малейшего сомнения.

Снова сделаем активным костный слой Layer 2 и вернемся в нулевой кадр. Инструментом Select Bone (Выделить кость) выделим верхнюю кость 2. Сделаем активным векторный слой Layer 1 и инструментом Select Points (Выделить узлы) выделим верхний узел формы глазного яблока (рис. 5.34). Щелкнем по пиктограмме инструмента Bind Points (Привязать узлы), а затем нажмем на клавиатуре клавишу <Пробел>.

Рис. 5.34. Привязывание верхнего узла формы глазного яблока к кости 2

Перейдите в кадр 6 и инструментом Translate Bone (Перемещение кости) подвигайте костью 2. Должен перемещаться только верхний узел, все остальные узлы формы должны оставаться неподвижными. У меня получилось (рис. 5.35). А у вас?

Рис. 5.35. Перемещение верхнего узла формы костью 2

Рис. 5.36. Перемещение нижнего узла формы костью 3

Аналогичную операцию проделаем с нижним узлом формы глазного яблока, привязав его к кости 3. Проверьте, как "сросся" узел с костью (рис. 5.36).

Теперь, когда все узлы обеих форм привязаны к нужным костям, осталось наложить на их вольную жизнь ограничение Position control bone (Кость, контролирующая положение). Начнем с кости 2. Перейдем в нулевой кадр и сделаем активным костный слой Layer 2. Инструментом Select Bone (Выделить кость) выделим верхнюю кость 2. Откроем список Bone Constraints (Костные ограничения) и для ограничения Position control bone (Кость, контролирующая положение) выберем кость 1. Заметьте, что выделяем ведомую кость (кость 2), а в списке выбираем ведущую (кость 1) (рис. 5.37). В полях приращений координат я ввел 1 по горизонтальной оси (ось Х) и 3 по вертикальной оси (ось Y).

Проверим, как работает наше ограничение. Перейдем в кадр 6 и инструментом Translate Bone (Перемещение кости) передвинем вправо кость 1. Передвигайте не строго горизонтально, а с небольшим отклонением вверх. Контур, изображающий верхнее веко, переместится в соответствие с заданными приращениями координат, то есть вправо и вверх. На рис. 5.38 слева показан результат для начальной позиции, а справа для конечной. Внизу приведены визуализированные изображения, на которых, как вы знаете, кости не видны.

Рис. 5.37. Настройка ограничения Position control bone на кость 2

Рис. 5.38. Перемещение зрачка вправо

Рис. 5.39. Работа костей 1, 2, 3

Аналогичным образом создайте ограничение Position control bone (Кость, контролирующая положение) для кости 3. Настройки ограничения показаны на рис. 5.39. Там же приведено изображение, полученное в результате перемещения зрачка вправо и несколько верх. Если при данных настройках перемещать зрачок вправо и несколько вниз, то веки сузятся. Перенастройте самостоятельно кости 2 и 3, чтобы веки сужались при движении зрачка вправо и немного верх.

Создайте два анимационных ролика (по 72 кадров). В первой анимации используйте рассмотренное выше ограничение. Во втором ролике анимируйте движение век без костей и, следовательно, без ограничения, просто перемещая соответствующие узлы инструментом Translate Points (Переместить узлы) и создавая ключевые кадры. Просмотрите обе анимации и оцените их качество. Также решите для себя, как вам удобнее анимировать, используя связанные кости или без них, просто перемещая узлы. Но должен поделиться опытом и предостеречь от слишком большого количества анимируемых узлов в случае, если вы не используете кости. Ситуация может еще более усугубиться, если вы задаете сложные перекрещивающиеся траектории перемещения отдельных узлов, ведущих к перекручиванию контурных линий форм. В этом случае при недостаточной мощности компьютера, он может зависнуть, не справившись с пересчетом координат. Когда вы применяете кости, то, при том же количестве узлов, этого не происходит. Кость можно рассматривать как промежуточное средство объединения узлов в группы, экономящее ресурсы компьютера. Если узлы не объединены, то на расчет каждого узла отводится больше ресурсов, чем на расчет узлов, организованных в группу с помощью кости. Получаемая в результате костная анимация движений персонажей выглядит координированной и плавной, чего можно не добиться при узловой анимации.

Применение ограничения Position control bone (Кость, контролирующая положение) диктуется исключительно характером решаемой творческой задачи. Если можно что-то анимировать иначе, анимируйте иначе. Здесь законов нет, есть только инструменты и вам решать, где и какой инструмент применить. Ограничение Position control bone (Кость, контролирующая положение) прекрасно подходит для анимации сцен "догонялок-убегалок", где один объект догоняет другой объект или не может его догнать, потому что тот убегает быстрее, чем этот догоняет.

Для самостоятельной практики, возьмите, например, наш персонаж со скелетом (рис. 5.40). Добавим ему мяч "с костью внутри". Используя ограничение Position control bone (Кость, контролирующая положение), создайте различные пары костей по схеме "ведущая — ведомая кости". В качестве ведомой кости будет выступать кость мяча, а какая кость будет ведущей, решите сами.

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

Рис. 5.40. Персонаж с мячом

Пока вы будете анимировать персонажа с мячом, я пойду дальше. Следующее ограничение касается масштабирования и называется Scale control bone (Кость, управляющая масштабом). Вы, наверное, заметили, что ограничения касаются трех основных операций с объектом: углового перемещения, линейного перемещения и масштабирования. Два из них мы уже рассмотрели. Теперь рассмотрим третье, масштабирование.

Сделаем анимацию процесса роста дерева. Основную кость нарисуем в стволе. Остальные кости в ветвях. Рост дерева будем имитировать увеличением масштаба кости в стволе. Чтобы ветки росли пропорционально стволу, надо с помощью ограничения Scale control bone (Кость, управляющая масштабом) связать кость каждой ветки с костью ствола. Тогда при увеличении масштаба кости ствола будут соответственно увеличиваться и масштабы костей в ветвях.

Находясь в нулевом кадре, создайте на векторном слое Layer 1 форму, условно изображающую дерево или куст (рис. 5.41). Важно, чтобы был основной ствол и ветки. Нарисуйте эту сцену инструментом Freehand (Рисунок от руки) и отредактируйте инструментами Translate Points (Переместить узлы) и Add Point (Добавить узел).

Добавьте костный слой Layer 2 и разместите векторный слой Layer 1 на уровень подслоя (рис. 5.41). Нарисуйте кости, как показано на рис. 5.41. Проверьте, чтобы у костей были имена. Стволовая кость имеет имя 1. Разорвите иерархические связи между костями. Настройте зоны влияния костей так, чтобы они не перекрывали друг друга.

Рис. 5.41. Применение ограничения Scale control bone

 

 

Рис. 5.42. Назначение ограничения Scale control bone для кости 2

Инструментом Select Bone (Выбрать кость) выделите кость 2. Откройте список Bone Constraints (Костные ограничения) и в ограничении Scale control bone (Кость, управляющая масштабом) назначьте кость 1 (рис. 5.42). Коэффициент масштабирования задан равным 4, то есть изменение масштаба кости 2 будет в 4 раза больше изменения масштаба кости 1.

Аналогичные ограничения выставите для остальных костей. Коэффициенты масштабирования для костей установите произвольно. При активном костном слое Layer 2, перейдите в кадр 6 и, пользуясь инструментом Scale Bone (Масштабирование кости), измените масштаб кости 1. На рис. 5.43 слева приведено визуализированное изображение дерева в исходном состоянии до изменения масштаба кости 1. В центре масштаб кости 1 увеличен до 1.2. Справа масштаб кости 1 уменьшен до 0,75.

Рис. 5.43. Визуализированные изображения различных фаз роста дерева

Для большей наглядности сделаем еще один пример. Создадим анимацию неодинаковой скорости роста нескольких одинаковых предметов, например, шести овалов, которые можно замаскировать под куриные яйца. Находясь в нулевом кадре, с активным векторным слоем Layer 1 нарисуем инструментом Oval (Овал) овал, преобразуем его в форму, 5 раз скопируем и вставим, сдвигая копии вправо. В результате должно получиться 6 овалов одинакового размера, как показано на рис. 5.44. Добавим костный слой Layer 2 и разместим векторный слой Layer 1 на уровень подслоя (рис. 5.44). При активном костном слое Layer 2 добавим в каждый овал по кости. Все кости должны быть поименованы. Разорвем иерархические связи между костями.

Пусть ведущей костью будет кость 1. Настроим для каждой кости ограничение Scale control bone (Кость, управляющая масштабом) таким образом, чтобы за равный промежуток времени яйца выросли в порядке возрастания их номеров. Это означает, что яйца, расположенные левее, будут мельче, а расположенные правее будут крупнее. Это можно достичь, задав значения мас-

штабирующего коэффициента в порядке возрастания слева направо. Инструментом Select Bone (Выбрать кость) выделите кость 2, откройте список Bone Constraints (Костные ограничения). В ограничении Scale control bone (Кость, управляющая масштабом) назначьте кость 1, а коэффициент масштаба задайте равным 2 (рис. 5.45). То же повторите для костей 3, 4, 5 и 6, назна-

чая им следующие коэффициенты масштаба: 3, 4, 5, 6. Для удобства значения масштабирующих коэффициентов совпадают с именами костей.

Рис. 5.44. 6 овалов, снабженных костями

Рис. 5.45. Настройка ограничения Scale control bone

 

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

Если у вас контурные линии овалов не так отчетливы, как на рисунках, поставьте флажок Antialiasing (Сглаживание), который находится в списке Display Quality (Качество отображения) (рис. 5.47).

Рис. 5.46. Результат применения ограничения Scale control bone

 

 

Рис. 5.47. Флажок Antialiasing

 

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

майте о других возможных применениях ограничения Scale control bone

(Кость, управляющая масштабом).

Переходим к изучению последнего ограничения Bone dynamics (Динамические характеристики кости). Ограничение имеет три свойства. Поставьте флажок Bone dynamics (Динамические характеристики кости), и динамические свойства станут доступны (рис. 5.48).

Рис. 5.48. Структура ограничения Bone dynamics

 

Динамические свойства моделируют три силы, которые прикладываются к кости или которыми наделяется кость: Torque force (Сила скручивания), Spring force (Сила упругости) и Damping force (Сила торможения). Рассмотрим на примере действие силы упругости и силы торможения.

Установим нулевой кадр. На векторном слое Layer 1 инструментом Oval (Овал) нарисуем овал и преобразуем его в форму. Создадим костный слой Layer 2 и разместим векторный слой Layer 1 на уровень подслоя по отношению к костному слою (рис. 5.49). При активном костном слое Layer 2, нарисуем в овале кость. Выделим кость инструментом Select Bone (Выбрать кость), откроем список Bone Constraints (Костные ограничения), поставим флажок Bone dynamics (Динамические характеристики кости) и установим числовые значения для свойств, как показано на рис. 5.49. То есть у нас будет работать только сила упругости Spring force (Сила упругости).

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

Рис. 5.49. Настройка ограничения Bone dynamics

 

Рис. 5.50. Создание ключевого кадра 6

Просмотрите анимацию, которая должна длиться по умолчанию 72 кадра. На протяжении всех 72 кадров кость вместе с формой совершает одинаковые незатухающие колебания. На Земле так не бывает. На Земле действуют силы трения. Со временем колебание должно затухнуть. Чтобы смоделировать этот физический процесс, вернитесь в нулевой кадр и задайте коэффициент затухания Damping force (Сила торможения), равным 1 (рис. 5.51, указан стрелкой). Увеличьте продолжительность анимации, например, до 180 кадров, чтобы увидеть момент прекращения колебаний кости с формой. Для изменения длительности анимации выполните команду главного меню File (Файл) | Project Settings (Настройки проекта). В поле End frame (Последний кадр) задайте 180 (рис. 5.51, указан стрелкой). Либо при нажатой клавише <Alt> щелкните левой кнопкой мыши по номеру кадра на временной шкале.

Рис. 5.51. Установка длительности анимации и коэффициента Damping force

 

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

Рис. 5.52. Цепочка костей для исследования свойства Torque force

 

Чтобы увидеть, как работает свойство Torque force (Сила скручивания), надо составить цепочку костей (рис. 5.52).

Перейдя в нулевой кадр, установим значения ограничений Bone dynamics (Динамические характеристики кости), как показано на рис. 5.52, вначале для кости 1, самой нижней на рисунке. Перейдем в кадр 6 и повернем кость 1 инструментом Manipulate Bones (Манипулирование костями). Просмотрите созданную анимацию. Кость 1 совершает колебания, но кости 2 и 3 одеревенело мертвы. Вернемся в нулевой кадр и назначим кости 2 ограничение Bone dynamics (Динамические характеристики кости) с теми же настройками, что мы установили для кости 1 (рис. 5.52). Запустите анимацию. Не правда ли, смотрится значительно живее, динамичнее. Чтобы почувствовать характер влияния свойства Torque force (Сила скручивания) на динамику, задайте для кости 2 значение Torque force (Сила скручивания) равное 10 и снова просмотрите анимацию. Кость 2 будет очень сильно вращаться вокруг оси Z (ось перпендикулярна экрану) у точки основания. Верните свойству Torque force (Сила скручивания) значение по умолчанию, равное 2.

Вернитесь в нулевой кадр и настройте ограничение Bone dynamics (Динамические характеристики кости) для кости 3 с настройками свойств по умолча-

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

До сих пор в наших исследованиях ограничения Bone dynamics (Динамические характеристики кости) мы использовали только инструмент Manipulate Bones (Манипулирование костями). Рассмотрим, какие эффекты можно получить, применяя другие инструменты работы с костями.

Находясь в нулевом кадре, нарисуем овал и снабдим его костью. Я уже не упоминаю о векторном и костном слоях, считая это очевидным. Назначим кости ограничение Bone dynamics (Динамические характеристики кости) с настройками по умолчанию. Перейдем в кадр 6 и инструментом Translate Bone (Переместить кость) переместим кость, а вместе с ней и овал, вниз до какой-либо точки (рис. 5.53). Просмотрим анимацию. Овал (шар) как будто упал и покачивается, перед тем как полностью остановиться. Так и происходит в реальном физическом мире для упругих тел.

Рис. 5.53. Падение шара

Источник: Зеньковский В. А., Anime Studio Pro 5.6/6.0. Создание анимационных фильмов на примерах. — СПб.: БХВ-Петербург, 2010. — 592 с.: ил. + Видеокурс (на DVD)

По теме:

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Оставить комментарий