Первые шаги в Maya. Урок 5. Введение в анимацию
Базовые инструменты управления анимацией
Технология создания анимации на базе ключевых кадров
Создание анимации в режиме автоматической установки ключевых кадров
Создание анимации в режиме ручной установки ключевых кадров
Практические примеры создания простых анимаций
Открывающийся ящик
ак известно, такие преобразования объекта, как вращение и масштабирование, связаны с положением его опорной точки (Pivot point), которую для получения нужного эффекта (открывающаяся дверь, перелистывающаяся страница и т.п.) нередко приходится перемещать. Рассмотрим такую ситуацию на примере самооткрывающейся крышки ящика — роль ящика будет играть обычный куб, верхняя грань которого и станет крышкой (рис. 26). Создайте куб и, не снимая с него выделения, переключитесь в режим редактирования граней, нажав клавишу F11. Переключитесь в режим моделирования, нажав клавишу F3, выделите верхнюю грань куба и извлеките ее с помощью команды Edit Polygons=>Extract (Правка полигонов=>Извлечь). Попробуйте повращать грань — видно, что она будет вращаться вокруг собственного геометрического центра (рис. 27). По замыслу же (для создания иллюзии открывающейся крышки) она должна поворачиваться относительно ребра, что может быть достигнуто только в том случае, если опорная точка будет находиться в центре соответствующего ребра. Перейдите в проекцию Front, нажмите клавишу Insert для перехода в режим редактирования опорной точки, переместите опорную точку в центр ребра (рис. 28) и опять нажмите Insert для возврата в режим работы с объектами. Вернитесь в проекцию Perspective, выделите грань, повращайте ее и увидите, что теперь она вращается именно так, как было задумано (рис. 29).
Рис. 26. Куб с выделенной верхней гранью
Рис. 27. Вращение грани при исходном положении опорной точки
Рис. 28. Новое положение опорной точки
Рис. 29. Вращение грани при новом положении опорной точки
Перейдите в режим анимации с ручным созданием ключевых кадров, увеличьте общее число кадров до 72 и проверьте, чтобы был активирован 1-й кадр, а затем нажмите клавишу S для создания ключа (рис. 30). Переключитесь на 36-й кадр, выделите грань и поверните ее так, чтобы возникла иллюзия открытой крышки, создайте ключ (рис. 31). Активируйте 1-й кадр и скопируйте его ключ в буфер обмена командой Copy (Копировать) из контекстного меню слайдера времени. Перетащите ползунок по временной оси на последний кадр и вставьте скопированную информацию из буфера командой Paste=>Paste (Вставить=>Вставить). Сохраните сцену, просмотрите анимацию и при необходимости подкорректируйте угол поворота грани-крышки на 36-м кадре.
Рис. 30. 1-й кадр
Рис. 31. 36-й кадр
Катящийся торус
оздайте новую сцену и разместите на ней плоскость и стоящий на ребре торус (рис. 32). Попробуем заставить торус катиться по данной плоскости — это значит, что торус должен не просто перемещаться, но и параллельно с перемещением поворачиваться, чтобы создавалась иллюзия его качения. Вначале разберемся с перемещением. Включите режим создания анимации с ручным определением ключевых кадров, задайте общее число кадров в анимации равным 36 и проверьте, стоит ли ползунок таймера анимации на 1-м кадре. Выделите торус, разместите его в начале плоскости и нажмите клавишу S для создания ключа (рис. 33). Активируйте 36-й кадр, переместите торус в конец плоскости и создайте ключ (рис. 34). Если вы сейчас запустите анимацию, то перемещаться торус будет, а вот катиться нет, так как ключ для его вращения мы еще не создавали. Поэтому, по-прежнему находясь на последнем кадре, выделите торус и в окне Channel Box измените значение параметра Rotate Z с 0 на 360 (рис. 35) и нажмите клавишу S, что приведет к созданию ключа для вращения по оси Z. Попробуйте запустить анимацию и увидите, что теперь торус действительно катится по плоскости, правда очень быстро.
Рис. 32. Исходная сцена
Рис. 33. 1-й кадр
Рис. 34. 36-й кадр с ключом для операции Translate X
Рис. 35. 36-й кадр с ключом для операции Rotate Z
Попробуем уменьшить скорость качения, увеличив общее число кадров анимации. Это можно сделать разными способами, но самое простое — отодвинуть последний кадр дальше по временной шкале. Для этого введите в поле Playback End Time (Конец воспроизведения анимации) слайдера диапазона число 72 для удвоения числа кадров, затем активируйте 36-й кадр и из контекстного меню слайдера времени выберите команду Cut (Вырезать), затем перетащите ползунок таймера на 72-й кадр и вставьте из буфера ключи командой Paste=>Paste (Вставить=>Вставить) из контекстного меню. Теперь скорость качения торуса при воспроизведении анимации снизится вдвое и сразу станет видно, что торус катится не совсем естественно. При качении, когда скольжение отсутствует, торус должен один раз повернуться вокруг своей оси и одновременно пройти расстояние, равное длине его внешней окружности, — мы же ничего подобного не учитывали и просто повернули торус на 360º на последнем кадре. Попробуем исправить ошибку. В нашем случае радиус торуса равен 2, а следовательно, длина его окружности составит 2хRadiusх, или 12,56. Теперь оценим проходимое им расстояние. В 1-м кадре значение параметра Translate X равно 15,88, в 72-м — 23,986, а значит, общее расстояние составляет 39,866. Если поделить расстояние на длину внешней окружности торуса, то выяснится, что торус должен повернуться вокруг своей оси примерно три раза. Если умножить 360 на 3, то получим, что торус за все время движения должен повернуться на 1080º. Поэтому вновь активируйте последний кадр, введите только что вычисленное значение для параметра Rotate Z и нажмите клавишу S. Теперь качение торуса будет более естественным.
Прыгающая лампа
юбая сцена состоит из огромного числа объектов, каждый из которых представляет собой набор более простых элементов, которые при анимации должны двигаться согласованно. Для подобной согласованности объекты (или отдельные их элементы) должны быть связаны между собой в группы или между ними должны быть установлены взаимоотношения предок (Parent) — потомок (Child), где предок — старший элемент, а потомок — подчиненный элемент иерархического соотношения. Рассмотрим пример создания простой анимации для объекта «лампа», отдельные элементы которого представлены примитивами. По замыслу данная лампа должна подпрыгивать и одновременно сгибаться (максимальный сгиб ее корпуса должен приходиться на верхнюю точку прыжка), а затем разгибаться примерно так, как показано на рис. 36.
Рис. 36. Траектория перемещения лампы и особенности ее сгибания
Создайте новую сцену с требуемым для моделирования стилизованной лампы набором объектов в виде трех конусов, трех шаров и одного куба (рис. 37). Согласно замыслу лампа должна быть подвергнута двум видам анимационных преобразований: она должна прыгнуть (данное преобразование одинаково для всех подобъектов лампы) и согнуться (здесь отдельные элементы лампы должны преобразовываться по-разному). Поэтому создадим следующий вид группировки. Вначале выделите все объекты и объедините их в группу командой Edit=>Group (Правка=>Группировать). Затем выделите элементы верхней части лампы (у них должен быть один вид преобразований), представленные на рис. 38, и установите между ними связь предок — потомок, применив команду Edit=>Parent (Правка=>Сделать родителем), — для удобства обозначим ее Parent_1. Выделите нижние шар и конус, для которых при сгибе лампы должен выполняться другой вид преобразований, и точно таким же образом создайте связь предок — потомок Parent_2. В итоге если открыть окно Outliner (команда Window=>Outliner — Окно=>Структура), то объекты окажутся связаны между собой в следующую иерархическую структуру (рис. 39).
Рис. 37. Исходный вид сцены
Рис. 38. Выделение верхних подобъектов лампы
Рис. 39. Отображение иерархической структуры объектов в окне Outliner
Выделите в окне Outliner объекты, между которыми установлена связь Parent_2 (для этого нужно щелкнуть на соответствующей строке окна Outliner), и поверните их все вместе в положительном направлении по оси Z. Аналогичную операцию выполните в отношении объектов со связью Parent_1, только поворачивать их придется в противоположном направлении. Кроме того, данные объекты потребуется немного сдвинуть, чтобы иллюзия того, что все они представляют собой единый объект — лампу, — не нарушилась. Возможный вид лампы в проекции Front показан на рис. 40.
Рис. 40. Лампа
Включите режим создания анимации с ручным определением ключевых кадров и задайте диапазон анимации в 36 кадров. Проверьте, чтобы ползунок таймера анимации стоял на 1-м кадре, выделите в окне Outliner все объекты группы, определите для лампы исходную позицию для начала анимации и создайте ключ, нажав клавишу S (рис. 41). Передвиньте ползунок таймера на 18-й кадр, выделите группу и переместите лампу в верхнюю точку ее прыжка, создайте ключ (рис. 42). Активируйте 36-й кадр, выделите группу и установите лампу на нужную позицию, создайте ключ (рис. 43). Проиграйте анимацию и увидите, что лампа действительно прыгает, причем все ее элементы перемещаются согласованно, однако сгибания лампы на пике прыжка пока не происходит. Сохраните сцену.
Рис. 41. 1-й кадр
Рис. 42. 18-й кадр
Рис. 43. 36-й кадр
Установите ползунок таймера на 18-й кадр, выделите объекты со связью Parent_2 и в окне Channel Box увеличьте для них степень поворота по оси Z — в нашем случае если на 1-м кадре для элементов данной группы значение параметра Rotate Z было равно 15, то на 18-м кадре — 35. По окончании создайте ключ, щелкнув на клавише S. Точно так же выделите объекты со связью Parent_1 и отрегулируйте положение элементов данной группы так, чтобы возникла иллюзия сгибания корпуса лампы, создайте ключ (рис. 44). Просмотрите созданную анимацию и при необходимости скорректируйте нюансы преобразований объектов, а затем присвойте лампе подходящий материал и создайте вокруг нее какой-нибудь фон. Сохраните сцену и создайте анимационный ролик в формате AVI (рис. 45).
Рис. 44. 18-й кадр после добавления второго типа преобразования
Рис. 45. Один из кадров ролика «Прыгающая лампа»