Ускорение вычислений с помощью дополнительных решателей  Maya

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

Чтобы увидеть,  как  это работает, необходимо несколько изменить  сцену с  деформи­ рованной сферой,  созданную  в   предыдущем  примере. (Если  та  сцена  не  сохранилась, создайте шар  и   плоскость,  преобразуйте шар  в  активное   твердое  тело,  а  плоскость — в пассивное  твердое тело. Затем создайте гравитационное  поле и  запустите  воспроизве­ дение анимации, чтобы убедиться в том, что шар отскакивает от плоскости.)

Теперь создайте второй решатель твердого тела и  свяжите его с шаром.

1.    Выберите пункт меню Solvers => Creat e rigi d Body Solver (Решатели => Создать реша­ тель  твердого тела),  чтобы  создать  новый решатель,   который  будет  называться rigidSolver l  (номер может быть другим, в  зависимости  от количества других ре­ шателей).

2.    Чтобы  сделать новый решатель используемым по умолчанию (все новые  объекты, преобразуемые в  твердые тела, будут связаны с этим решателем),  выберите   в меню Solvers  (Решатели)  пункты  Current  rigi d Solver  => rigidSolverХ  (Текущий  решатель твердого тела => решатель твердого тела номер X), где rigidSolverХ — решатель, кото­ рый необходимо сделать используемым по умолчанию.

Поскольку  оба твердых тела уже созданы с  использованием  одинакового  решателя, одно из двух  тел (шар) необходимо связать с новым решателем — rigidSolverl. К со­ жалению, для этого не существует какой-либо кнопки, но  можно быстро создать сцена­ рий встроенного  языка MEL.

3.     Выделите сферу в  окне сцены, а затем в командной строке введите следующее:

rigidBody -edit -solver rigidSolverl;

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

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

Если  необходимо  изменить параметры нового решателя твердого тела, сначала  следу­ ет убедиться,  что он выбран  (с помощью команды меню Solvers => Current rigi d Solver (Решатели   =>  Текущий решатель  твердого тела)),  а  затем  выбрать   в   меню  Solvers  (Решатели)  пункт rigi d  Body Solver Attributes (Атрибуты  решателя твердого  тела). По­ сле этого откроется окно редактора атрибутов с выделенным решателем rigidSolverl.

Наконец, при выделенном решателе rigidSolver l создайте новую  плоскость (или другой объект), преобразуйте ее в  пассивное  твердое тело и  запустите  воспроизведение анимации. Поскольку шар и  новая плоскость связаны с  одним и  тем же решателем, их взаимодействия  будут правильными.

Источник: Кундерт-Гиббс, Джон,  Ларкинс, Майк,  Деракшани, Дариус, Кунзендорф, Эрик,  и др., Освоение Maya  8.5.:  Пер.  с англ.  – М.:  ООО  «И.Д.  Вильямс», 2007.  – 928  с.:  ил.

По теме:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

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