Самой сложной частью работы при создании анимации является собственно анимация объектов. Добавление четвертого изменения — времени — приводит сцену в состояние, когда невозможно обойтись одним наброском или спланировать происходящее на основе единственной идеи. Создание анимации требует нового типа мышления. Вы должны помнить о движении персонажей и объектов, регулировке этого движения во времени и непрерывности действия. Можно сказать, что именно в этой области Maya в полной мере проявляет свои возможности как инструмент для трехмерного моделирования. Но, к сожалению, объем нашей книги ограничен, и мы остановимся на описании лишь основных аспектов анимации.
Иллюзию движения можно получить, быстро показав набор статичных изображений.
Соответственно, тем же способом, который использовался в предыдущих главах для визуализации одного кадра, можно создать последовательность изображений, в которых один или несколько параметров объекта или объектов будут изменяться во времени.
Слово «анимация» подразумевает не только перемещение объектов в пространстве. Практически любой параметр в Maya может быть анимирован. Можно превратить воду в дерево, изменить направление гравитационного поля и даже завязать объект в узел. Существует масса возможностей и, как следствие, масса трудностей. Мы проанализируем основные моменты создания и редактирования анимации. А именно:
Ключевые термины
Ключ (Key). Маркер, определяющий значения анимируемых параметров объекта в определенный момент времени.
Ключевой кадр (Keyframe). Кадр, содержащий ключ анимации.
Анимация на основе ключевых кадров (Keyframe-based animation). Результат использования ключей анимации для определения времени и места наступления определенного события. Обычно эти события представляют собой крайние положения объекта, например полностью вытянутая или полностью согнутая рука. При этом положение объекта в промежутках между крайними состояниями рассчитывает компьютер.
Касательная в месте расположения ключа анимации (Key tangent). Определяет скорость изменения параметров слева и справа от точки ключа анимации. Анимация объектов включает не только задание изменения положения объекта в пространстве, но и изменение скорости его движения.
Анимационная кривая (Animation curve). Визуальное представление состояния аними-рованного параметра между ключами анимации. Редактируется путем настройки положения касательных в окне диалога Graph Editor (Редактор анимационных кривых).
Автоматическая установка ключевых кадров (Auto keyframe). Функция, позволяющая автоматически создавать ключевой кадр при каждом изменении анимируемого параметра, после того как первый ключевой кадр задан вручную.
Анимация вдоль пути (Path animation). Соединение объекта с заданной траекторией движения.
Нелинейная анимация (Nonlinear animation). Усовершенствованный метод анимации, суть которого состоит в комбинации отдельных фрагментов анимационной последовательности. Например, можно скомбинировать анимацию, в которой персонаж идет по дороге, и анимацию, в которой он пьет воду. В итоге вы заставите его пить в процессе ходьбы.
Редактор анимационных кривых (Graph editor). Инструмент редактирования ключей анимации и формы анимационных кривых в Maya.
Частота кадров (Frame rate). Величина, определяющая число кадров, показанных за одну секунду.
Диапазон анимации (Playback range). Информация о начальном и конечном кадрах интервала анимации, который нужно воспроизвести.
Перед тем как приступить к созданию анимации, необходимо ознакомиться с инструментами, которые вам предстоит использовать. В расположенных ниже разделах вы найдете обзор необходимых элементов интерфейса.
Подготовка к анимации
Процесс создания анимации начинается с указания базовых настроек ползунка диапазона и ползунка таймера анимации. Чтобы убедиться, что указанные элементы видны, нажмите пробел, чтобы вызвать меню оперативного доступа, а затем нажмите правую кнопку мыши справа от команды Hotbox Controls (Элементы управления), чтобы открыть контекстное меню для элементов интерфейса, связанных с анимацией, как показано на рис. 10.1. Используйте это контекстное меню, чтобы сделать видимыми ползунок диапазона и ползунок таймера анимации.
Рис. 10.1. Используйте меню оперативного доступа, чтобы быстро сделать видимыми части пользовательского интерфейса
Ползунок диапазона и параметры анимации
На рис. 10.2 показан вид ползунка диапазона. Он используется для задания общей продолжительности анимации. Также с его помощью можно временно ограничить диапазон воспроизведения, указав начальный и конечный кадры интервала. На рисунке показано, что в данный момент рассматривается диапазон с кадра № 60 по кадр № 120. После того как указанный сегмент будет отредактирован, можно переместить ползунок диапазона на другую область или же растянуть его для показа всего диапазона.
Рис. 10.2. Ползунок диапазона используется для управления продолжительностью анимации и ограничения воспроизведения определенной областью
Альтернативным инструментом управления продолжительностью анимации является окно диалога Preferences (Параметры). Его можно открыть, щелкнув на кнопке Animation Preferences (Параметры анимации), расположенной справа от ползунка диапазона, как показано на рис. 10.2, или выбрав в меню оперативного доступа команду Window > Setting/Preferences > Preferences (Окно > Настройки/Параметры > Параметры). Перед тем как вносить какие-либо изменения, выберите команду Restore Default Settings (Восстановить заданные по умолчанию параметры) в меню Edit (Правка) появившегося окна диалога. Впоследствии можно скрыть элементы интерфейса Shelf (Полка) и Tool Box (Панель инструментов) для получения дополнительного рабочего пространства.
Выберите в расположенном слева списке Categories (Категории) вариант Timeline (Временная шкала), как показано на рис. 10.3. Теперь можно указать диапазон воспроизведения анимации и ее общую продолжительность. Кроме того, существует возможность изменить время воспроизведения анимации, размер ползунка таймера анимации и прочие параметры.
Рис. 10.3. На вкладке Timeline окна диалога Preferences можно указать общую продолжительность анимации и скорость ее воспроизведения в окне проекции
Частота кадров
Одним из основных параметров анимации является частота кадров. Он влияет на продолжительность и плавность воспроизведения. По умолчанию в Maya используется та же частота кадров, что и в обычном кино, равная 24 кадрам в секунду. Это значит, что за одну секунду будут показаны 24 кадра. Таким образом, анимация, занимающая несколько минут, требует визуализации тысяч кадров.
ПРИМЕЧАНИЕ
Также для анимации можно использовать стандарты телевизионного сигнала: NTSC и PAL. Первый используется в странах Америки и Японии и составляет 30 кадров в секунду. Стандарт PAL применяется в странах Европы и составляет 25 кадров в секунду. Имейте в виду, что эти стандарты имеют различное разрешение визуализации.
Определение диапазона анимации
Диапазон анимации определяет ее общую длину в кадрах. При его указании необходимо решить, сколько секунд будет длиться ваша анимация. Затем нужно умножить количество секунд на частоту кадров. Анимация, которую вам предстоит создать в этой главе, имеет продолжительность 20 секунд. Частота кадров будет равна 30 кадрам в секунду. Соответственно, диапазон анимации составит 30 кадров/с х 20 с = 600 кадров.
Ползунок таймера анимации
Ползунок таймера анимации, показанный на рис. 10.4, является существенным инструментов для работы с анимацией в Maya. Его можно использовать для просмотра анимации в действии, для перехода на определённый кадр, а также для размещения ключей анимации.
Рис. 10.4. Ползунок таймера анимации и элементы управления анимацией
Перемещая с помощью мыши ползунок таймера анимации, можно увидеть движение объектов в сцене. Черная вертикальная черта указывает номер текущего кадра. Если выделенному в данный момент объекту сцены соответствуют ключи анимации, они появятся на ползунке в виде красных вертикальных линий. Справа от него расположена группа кнопок, используемых для воспроизведения анимации и для перехода от одного ключевого кадра к другому.
Существует несколько различных способов анимации объектов сцены. Каждый из них имеет свои преимущества и недостатки, которые мы обсудим ниже. Это поможет вам впоследствии выбрать наиболее подходящий тип анимации.
Анимация вдоль пути
Первое представление об анимации вдоль пути вы получили в главе 4. Общая идея этого метода состоит в том, что вы создаете NURBS-кривую и соединяете ее с объектом, который начинает двигаться вдоль этой кривой. В главе 4 в качестве такого объекта фигурировала шлюпка. Имеется возможность указать, в каком месте кривой объект должен находиться в определенный момент время. Это позволяет смоделировать изменение направления движения, задержку в одной точке или колебание вокруг нее. Этот метод будет еще раз рассмотрен в главе 11, где вам предстоит заставить камеру двигаться вокруг дома.
Нелинейная анимация
Усовершенствованный вид анимации создается в Maya с помощью окна диалога Trax Editor (Редактор слоев). В отличие от анимации, построенной на основе ключевых кадров, нелинейная анимация не имеет зависимости от времени. Движение объектов моделируется путем комбинации отдельных слоев анимационной последовательности. Временная шкала позволяет использовать отдельные фрагменты анимации и объединять их различными способами. Кроме того, вы можете ускорять или замедлять воспроизведение участков анимации.
Этот метод также полезен для редактирования отдельных частей анимации, не затрагивая при этом уже полученные результаты. Например, если нужно, чтобы на каком-то участке персонаж бежал, а не шел, можно вырезать этот участок и изменить характер движения ног. При этом остальная часть анимации останется без изменений. Если вас устраивают полученные результаты, можно скомбинировать вырезанный участок с остальной частью анимации.
Анимация на основе ключевых кадров
Стандартным методом анимации является анимация на основе ключевых кадров, и именно его вы будете использовать в упражнениях этой главы. Суть метода состоит в создании ключей анимации для крайних положений объекта, позволив компьютеру рассчитывать состояние объекта в промежуточных положениях. Например, при моделировании процесса сгибания руки необходимо создать два ключа анимации — один для полностью вытянутой руки, а второй для руки в согнутом состоянии. Каждый ключ связан с определенным моментом времени. Когда ползунок таймера анимации попадает на определенный кадр, параметры объекта принимают значения, заданные с помощью ключа.
Первым шагом к созданию анимации является указание ее диапазона. Затем можно начать размещение ключей в определенных кадрах, используя окно каналов или клавиатурные комбинации.
Для создания ключей можно использовать метод автоматической установки ключевых кадров. Он начинает действовать после нажатия кнопки Auto keyframe (Автоматическая установка ключевых кадров), расположенной справа от ползунка Диапазона. Идея метода состоит в том, что после нажатия этой кнопки любое изменение параметров объекта приводит к созданию ключа анимации. Соответственно, вам остается только устанавливать ползунок таймера анимации на нужный кадр и затем менять параметры объекта или объектов. Однако необходимо вручную создать первый ключ анимации, чтобы инициировать процесс.
ПРИМЕЧАНИЕ
В Maya имеется возможность настроить изменение одного ключевого параметра в зависимости от состояния другого. Подробную информацию об этом вы найдете в главе 14. Например, можно связать движение скачущего шарика с интенсивностью падающего на него света. В итоге шарик будет освещен ярче всего в момент достижения максимальной высоты.
Упражнение. Анимация дома
Рассмотрим процесс создания анимации по методу ключевых кадров на примере. В этом упражнении вам предстоит создать ключи для параметров деформации изгиба. Соответствующий модификатор позволяет различным образом искажать форму домика, чтобы создать впечатление наличия в нем привидений. Загрузите файл ch10tut01start.mb. Сцена содержит дом, которому были назначены материалы, источники света, и опорную плоскость, формирующую окружающий пейзаж.
Окно диалога Graph Editor (Редактор анимационных кривых), показанное на рис. 10.5, используется для редактирования значений ключей анимации.
Оно содержит анимационные кривые — графики, иллюстрирующие характер и величину изменений ключевых параметров во времени. Анимационная кривая содержит ключи анимации. Помните о возможности изменять масштаб изображения в этом окне диалога и пользоваться прокруткой.
Редактор анимационных кривых можно использовать как в качестве плавающего окна диалога, так и в виде одного из окон проекции. В первом случае достаточно выбрать в меню оперативного доступа команду Window > Animation Editors > Graph Editor (Окно > Редакторы анимации > Редактор анимационных кривых). Если же требуется, чтобы оно фигурировало в виде окна проекции, вписавшись в текущую конфигурацию, выберите команду Panels > Saved Layouts > Persp/Outliner/ Graph (Панели > Варианты компоновки > Persp/Outliner/Graph). В процессе выполнения следующего упражнения попробуйте оба варианта и решите, какой из них вам удобнее использовать.
Рис. 10.5. Окно диалога Graph Editor дает возможность легко редактировать параметры ключей анимации
Итак, рассмотрим интерфейс окна диалога Graph Editor (Редактор анимационных
кривых):
Рис. 10.6. Выпадающие меню окна диалога Graph Editor, предназначенные для редактирования анимационных кривых, ключей анимации и касательных
Рис. 10.7. Панель инструментов дает быстрый доступ к часто используемым функциям
окна диалога Graph Editor
ПРИМЕЧАНИЕ
В Maya существует еще один редактор анимации Dope Sheet (Монтажный стол). Вместо анимационных кривых в нем в виде цветных прямоугольников показаны ключи анимации, перемещая которые можно корректировать время наступления события. Также с его помощью осуществляется синхронизация движения со звуковым файлом.
Упражнение. Редактирование ключей в окне Graph Editor
В этом упражнении вам предстоит детально ознакомиться с окном диалога Graph Editor (Редактор анимационных кривых). Вы можете продолжить работу над сценой из предыдущего упражнения или загрузить файл ch10tut01end.mb, чтобы иметь гарантию, что все было сделано правильно.
Рис. 10.8. Результат выделения анимационной кривой в окне просмотра
ПРИМЕЧАНИЕ
Если вы ожидали увидеть более радикальные изменения формы анимационной кривой в результате редактирования положения касательной, имейте в виду, что, несмотря на кажущуюся малость изменений, после запуска воспроизведения анимации эффект будет заметен очень хорошо. Существует несколько вариантов формы касательных. Самостоятельно поэкспериментируйте с каждым из них, чтобы посмотреть, как они действуют. Например, выбрав вариант Break Tangents (Разрыв касательных), вы получите возможность перемещать части касательной независимо друг от друга, чтобы создать разрыв анимационной кривой, что соответствует резкому скачку объекта.
СОВЕТ
Создать дополнительные ключи можно, нажав кнопку Insert Keys (Вставить ключи) на панели инструмента окна Graph Editor (Редактор анимационных кривых) и щелкая средней кнопкой мыши в нужных местах анимационной кривой.
Рис. 10.9. Результат перемещения ключей анимации
Воспроизведение анимации в окне проекции Perspective (Перспектива) дает примерное представление о том, как она будет выглядеть в итоге. Но даже самый мощный компьютер не сможет воспроизвести анимацию достаточно гладко при заданном значении частоты кадров. В некоторых случаях это можно компенсировать, скрыв лишние детали объекта или понизив качество картинки на экране. Однако иногда и этого бывает недостаточно и приходится создавать небольшой фильм, покадрово визуализируя анимацию. Но этот процесс может занять несколько часов. Поэтому для просмотра анимации в реальном времени в Maya используется особый модуль Playblast (Проигрыватель).
Упражнение. Использование проигрывателя
Принцип работы модуля Playbtast (Проигрыватель) состоит в создании моментальных снимков экрана, соответствующих каждому кадру анимации, с последующим показом полученного набора изображений. В результаты вы получаете представление о том, как будет выглядеть анимация после итоговой визуализации. Также это дает возможность определить области анимации, выходящие за границы временной шкалы. Если вы предпочитаете использовать наш вариант сцены, загрузите файл ch10tut02end.mb.
ВНИМАНИЕ
Обсчет изображений происходит с помощью видеокарты вашего компьютера. Если закрыть Maya другим окном в процессе подготовки к воспроизведению с помощью функции Playblast (Проигрыватель), ресурс видеокарты будет занят посторонним приложением и запись кадров в буфер производиться не будет.
ВНИМАНИЕ
Так как обсчет анимации занимает значительное количество времени, желательно не загружать сцену лишними деталями. Это можно осуществить, скрыв объекты, редактированием которых вы не занимаетесь в данный момент. Кроме того, существует возможность заменить объекты со сложной структурой более простыми, аппроксимирующими объектами. Другими словами, делайте все, что может ускорить реакцию программы на ваши действия. В этом случае вам, скорее всего, удастся оценить результат своей работы путем воспроизведения анимации в окне проекции, что позволяет сэкономить значительное количество времени.
Оживший домик выглядит забавно, но стоит сделать видимыми крыльцо и трубу, как впечатление тут же портится. Эти элементы остаются неподвижными, и движение дома происходит сквозь них. Используйте полученные в этой главе знания и навыки и попытайтесь самостоятельно анимировать трубу и крыльцо таким образом, чтобы они повторяли движения дома. Затем можно назначить им дополнительный изгиб или другую анимацию, чтобы сделать их более живыми. Если вы не уверены, что все делаете правильно, загрузите файл ch01tut03end.mb.
Анимация позволяет изменить положение и вид объекта во времени. Вы можете использовать динамические объекты (о которых мы расскажем вам в главе 13), анимацию вдоль пути или вручную создать набор ключей, позволив программе рассчитывать промежуточные положения объектов. Существует еще несколькоспособов анимации объектов. В этой главе вы получили представление об основных способах создания, редактирования и обсчета анимации в Maya: