Далее для выбранной кривой строим поверхность вращения: Surfaces=>Revolve (ось вращения, очевидно, Z).

Отредактируйте немного вашего Гада за контрольные вершины, чтобы было понятно, где верх и низ, где брюхо, а где глаза.

Удалите исходную кривую.

Обратите внимание на расположение локальных осей внутри гада: ось Z смотрит вперед, ось Y - вверх. Отметьте также, что пивот находится в начале координат. Скоро мы об этом вспомним. Отмасштабируйте кривую, чтобы ее длина равнялась примерно пяти единицам. Нарисуйте путь для Гада. Это может быть абсолютно произвольная кривая. В качестве эксперимента можете ставить точки неравномерно. Перед «запуском» Гада по пути, задайте диапазон проигрывания анимации от нуля до двухсот кадров.

Выберите сначала Гада, затем кривую (путь всегда выбирается последним). Выполните операцию Animate=>Motion Paths=>Attach to Motion Path. Проиграйте анимацию.

Гад довольно весело едет по пути, однако совершенно не так, как нужно.

Есть подозрение, что при выполнении последней операции можно было бы открыть Option Box и указать массу параметров. Однако по доброй майской традиции все настройки можно произвести после выполнения операции, отредактировав нужные атрибуты соответствующей ноды.

Если Гад выбран, откройте Attribute Editor и разыщите там закладку motionPathl, отвечающую за прикрепление объекта к пути.

Соответствующая нода появляется и в Channel Box в разделе INPUTS, однако для редактирования нужных нам атрибутов необходим Attribute Editor.

Прежде всего, следует отметить, что по умолчанию включен атрибут Follow, отвечающий за повороты объекта вдоль пути. Однако мы не определили, каким «боком» наш Гад должен смотреть вдоль пути. Очевидно, что он должен двигаться «носом вперед», однако MAYA ничего не знает о том, где у нашего мутанта «нос». По умолчанию объект движется по пути, разворачиваясь своей локальной осью X по ходу движения. Это следует из значения атрибута Front Axis=X. Установите Front Axis=Z, припоминая о том, что локальная ось Z у нашего пресмыкателя направлена вперед. Анимация сразу примет более благопристойный вид.

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

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

В нашем случае установка по умолчанию Up Axis=Y задает подходящую для нас ориентацию Гада «глазами вверх», так как локальная ось Y объекта направлена вверх.

Кроме того, в атрибутах motionPathl заданы значения World Up Type=Vector и World Up Vec-tor=(0,1,0). Это означает, что локальная ось объекта, заданная с помощью UpAxis, будет стремиться развернуться в направлении конкретного вектора (World Up Туре), координаты которого заданы как (0,1,0), то есть вертикально вверх.


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