Выберите его и обратите внимание на параметр attenuation, который определяет характер затухания силы воздействия поля по мере удаления от центра поля. Лучше всего визуально представлять и редактировать радиус действия (maxDistance) и затухание (attenuation) при помощи манипулятора, который можно включить, либо выбрав в Toolbox инструмент Show Manipulator Tool, либо с помощью горячей клавиши «t».

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

Кривая, на которой визуально находится слайдер, для attenuation отображает график затухания силы в зависимости от расстояния. Если attenuation=0, то сила поля не затухает и одинакова во всей зоне влияния поля, определяемой атрибутом maxDistance. Если значение attenuation равно единице, то сила поля затухает линейно, а если больше единицы, то экспоненциально и очень быстро.

Задайте attenuation=0 для radialFieldl, a maxDistance=100, чтобы объекты притягивались к центру одинаково внутри сферы с радиусом 100.

А для vortexFieldl задайте maxDistance=10.

Теперь траектории объектов напоминают движения планет (напомню, что radialFieldl. magnitude=-5, a vortexFieldl ,magnitude=5).

Разогнав «планеты» по кругу, вы можете выключить «раскрутку», установив vortexFieldl. magnitude=0. (Например, поставив два ключа на magnitude).

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

Выберите все объекты и создайте поле сопротивления среды: Field=>Drag.

Его сила по умолчанию весьма невелика.

Увеличьте magnitude до 0.9.

Теперь объекты немного тормозятся и раскручиваются не так быстро.

Поиграйте с большими значениями magnitude (3-5), посмотрите как объекты чувствуют себя помещенными в воду или другую вязкую жидкость.

Сохраните файл (gameLife.ma).

Дальнейшую игру можно продолжать бесконечно. Можно комбинировать поля в любом количестве, независимо устанавливая для каждого из них силу и зону влияния, можно анимировать их атрибуты, временно выключая (magnitude=0) и включая действие полей, можно перемещать сами поля в пространстве, припарентивать их к объектам - в общем анимировать их как любые другие объекты в MAYA.

На этом этапе можно сделать следующий вывод, обобщающий принципы работы с динамикой твердых тел.

Вывод. В сцене может быть некоторое количество твердых тел и некоторое количество полей. На различные тела независимо могут воздействовать разные поля. Поля можно анимировать так же, как обычные объекты,их можно объединять в группы и иерархии, а также связывать с другими объектами с помощью констрейнов или Set Driven Key.

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

Конструктивные констрейны для твердых тел Как мы уже обсудили выше, активные твердые тела могут двигаться под влиянием полей и соударений о другие тела. Однако неплохо бы уметь ставить и более интеллектуальные ограничения на движение активных тел для конструирования целых динамических механизмов. Такие ограничения традиционно называются констрейнами, и для твердых тел существует целый набор таких механических элементов. (Не путайте их с анимационными констрейнами из меню Constrain, предназначенными для связывания движений объектов, не относящихся к динамике!) Например, чтобы сделать простейший маятник, достаточно создать для активного твердого тела в поле гравитации констрейн типа Nail и переместить его в первом кадре в нужную точку подвеса маятника.


⇐ вернуться назад | | далее ⇒