Первые шаги в Maya. Урок 5. Введение в анимацию
Базовые инструменты управления анимацией
Технология создания анимации на базе ключевых кадров
Создание анимации в режиме автоматической установки ключевых кадров
Создание анимации в режиме ручной установки ключевых кадров
Практические примеры создания простых анимаций
В предыдущих уроках мы ознакомились с некоторыми простыми приемами моделирования объектов, назначения им материалов и визуализации сцены. В дальнейшем мы вернемся ко всем этим этапам работы с трехмерной графикой, но на более высоком уровне, а в данном уроке в общих чертах рассмотрим создание анимации.
Анимация характеризуется изменением сцены во времени, и в простейшем случае под анимацией можно понимать автоматизированный процесс визуализации некоторой последовательности изображений, каждое из которых фиксирует определенные изменения состояния сцены. Данные изменения могут касаться положений объектов, их формы, свойств материалов объектов (цвет, блеск, прозрачность и пр.), состояния внешней среды и многих других компонентов сцены, допускающих анимацию. В целом каждый кадр анимации ничем не отличается от рассматриваемых ранее визуализированных изображений, а имитация движения создается за счет воспроизведения визуализированной последовательности кадров с определенной скоростью (по умолчанию 24 кадра в секунду), что и обеспечивает иллюзию плавного движения. В итоге создание анимации заключается в многократном автоматическом проведении визуализации сцены с учетом предусмотренных в сцене преобразований. Получается, что анимация — это не что иное, как многократный рендеринг.
Базовые инструменты управления анимацией
нимации в Maya создаются в режиме Animation (Анимация) — его можно выбрать из раскрывающегося списка, расположенного в левой верхней части окна программы, или нажатием клавиши F2. При открытии данного режима в динамически меняющемся (в зависимости от выбранного режима) командном меню появляются команды для установки ключевых кадров, создания связей, анимации пути и пр.
Для управления параметрами анимации предназначены специальные слайдеры, расположенные в нижней части программного окна, — слайдер времени Time Slider и слайдер диапазона Range Slider (рис. 1). За открытие/скрытие названных слайдеров отвечает строка меню UI Elements (Универсальные элементы) из меню Display. Кроме того, любой слайдер можно скрыть, щелкнув на треугольнике в его левом верхнем углу.
Рис. 1. Time Slider и Range Slider
Слайдер времени содержит временную шкалу с ползунком и кнопки для управления воспроизведением и остановкой анимации и перемоткой кадров. Временная шкала позволяет перейти на нужный кадр и задать ключевые кадры анимации — перемещая с помощью мыши ползунок таймера анимации, можно увидеть движение объектов в сцене, а запустив проигрывание анимации — по положению ползунка слайдера контролировать ее этапы. Текущий кадр анимации (соответствующий единичному отрезку времени) выделяется щелчком по нему левой кнопкой мыши, и его номер отмечается черным цветом. При необходимости выделения нескольких последовательно расположенных кадров следует удерживать нажатой клавишу Shift — группа выделенных кадров отмечается красным цветом. В отношении выделенных кадров допустимы некоторые операции (копирование, вырезание, удаление и т.д.) — нужная операция выбирается из контекстного меню, вызываемого щелчком правой кнопкой мыши в главной области Time Slider. Если выделенному объекту сцены соответствуют ключи анимации, они отображаются на временной шкале в виде красных вертикальных линий (рис. 2).
Рис. 2. Временная шкала Time Slider с ключами анимации
Range Slider отвечает за управление дополнительными параметрами анимации. Он позволяет указать диапазон воспроизведения анимации и ее общую продолжительность. С его помощью также можно временно (например, на момент отладки) ограничить диапазон воспроизведения, указав начальный и конечный кадры интервала — например на рис. 3 в анимации фигурирует 240 кадров (с 1-го по 240-й), однако отображаемыми на данный момент являются только кадры с 50-го по 100-й. После окончания редактирования соответствующего фрагмента анимации можно будет переместить ползунок диапазона на другую область или же растянуть его для отображения всего диапазона. Кнопки в правой части слайдера Range Slider позволяют включить/выключить режим автоматической установки ключевых кадров (кнопка Auto Keyframe toggle) и вызвать окно параметров изменения анимации (кнопка Animation Preferences).
Рис. 3. Фрагмент слайдера Range Slider с ограниченным диапазоном воспроизведения кадров
Альтернативным вариантом вызова окна параметров является команда Window=>Setting/Preferences=>Preferences (Окно=>Настройки/Параметры=>Параметры). В окне параметров анимации (как и на слайдере Range Slider) можно определить диапазон воспроизведения анимации и ее продолжительность, а также скорость воспроизведения и частоту кадров. Частота кадров является одним из основных параметров анимации, так как от нее напрямую зависит продолжительность и плавность воспроизведения. По умолчанию в Maya (как и в обычном кино) частота воспроизведения равна 24 кадрам в секунду — это означает, что каждую секунду демонстрируются 24 кадра. При желании возможно использование американского (NTSC, 30 кадров в секунду) или европейского (PAL, 25 кадров в секунду) стандарта телевизионного сигнала. Диапазон анимации определяет общее количество входящих в нее кадров и вычисляется в зависимости от того, сколько секунд должна длиться анимация, при этом число секунд нужно умножить на частоту кадров. Например, если анимация должна длиться 10 с, а частота кадров равна 24 кадрам в секунду, то диапазон анимации должен включать 240 кадров (рис. 4).
Рис. 4. Определение диапазона воспроизведения анимации
Более тонкая настройка анимации осуществляется в редакторе функциональных кривых Graph Editor, который открывается из меню Window=>Animation Editors=>Graph Editor (Окно=>Редакторы анимации=>Редактор функциональных кривых) и отображает ключевую анимацию в виде так называемых анимационных кривых (animation curves) — рис. 5. Редактор Graph Editor может открываться не только в отдельном окне, но и постоянно отображаться в виде окна проекции. Для подобного варианта его открытия следует воспользоваться командами Panels=>Saved Layouts=>Persp/Graph (Панели=>Варианты компоновки=>Persp/Graph), Panels=>Saved Layouts=>Persp/Outliner/Graph (Панели=>Варианты компоновки=>Persp/Outliner/Graph) и т.п., вызвав нужную команду из собственного командного меню окна проекции.
Рис. 5. Возможный вид окна Graph Editor с анимационными кривыми
Технология создания анимации на базе ключевых кадров
уществует несколько различных способов анимации объектов сцены. Наиболее распространенным методом является создание анимации путем определения последовательности ключевых кадров. Под ключевыми кадрами понимаются моменты времени, в которых наблюдаются какие-либо события анимации, отображающие начало неких преобразований объекта. Например, на рис. 6 представлена условная схема движения объекта по криволинейной траектории с отображением ключевых и промежуточных позиций объекта. С каждым событием анимации связан свой ключ анимации, а потому кадры можно считать ключевыми, если в них созданы ключи анимации. Данная технология получения анимации предполагает, что нужно задать, как должен выглядеть объект в том или ином кадре, то есть связать с определенным моментом времени событие анимации. А затем определить данные кадры как ключевые (keyframes), что приведет к созданию для объекта ключей анимации, в которых будут зафиксированы особенности его отображения в определенные моменты времени. Помимо ключевых кадров в анимации будут присутствовать промежуточные кадры (in-betweens), которые формируются программой автоматически и определяют изменение объекта между ключевыми позициями.
Рис. 6. Условная схема перемещения объекта (позиции объекта, соответствующие ключевым кадрам, выделены красным цветом)
Суть технологии анимации на основе ключевых кадров заключается в том, что нужно создать ключи анимации для крайних положений объекта (каждый ключ связан с определенным моментом времени), предоставив программе возможность самостоятельно рассчитать состояние объекта в промежуточных положениях. Рассмотрим это на примере простой анимации изменения масштаба обычного шара: вначале шар будет увеличиваться в размерах до некой максимальной величины, а затем так же плавно уменьшаться. Обратим также внимание на особенности создания анимации в режимах автоматической и ручной установки ключевых кадров.
Создание анимации в режиме автоматической установки ключевых кадров
оздайте новую пустую сцену с шаром в центре и установите режим Animation, нажав клавишу F2. На слайдере Range Slider укажите диапазон анимации, введя требуемые значения в полях Start Time (Начало анимации) и End Time (Конец анимации), — для примера будем считать, что анимация должна длиться 3 с, а частота кадров равна 24 кадрам в секунду, поэтому в создаваемой анимации должно быть 72 кадра (рис. 7). Проверьте, что частота кадров действительно равна 24 кадрам в секунду (как установлено по умолчанию). Для этого щелкните на кнопке Animation Preferences (Параметры анимации) и обратите внимание на раскрывающийся список Playback Speed (Скорость воспроизведения) в категории Timeline (Временная шкала) — при необходимости смените установленный в нем вариант воспроизведения на Real-Time (24 fps) (В реальном времени (24 кадров/с)) — рис. 8. В случае изменений сохраните их, щелкнув на кнопке Save (Сохранить).
Рис. 7. Определение диапазона анимации
Рис. 8. Корректировка частоты кадров воспроизведения
Попробуем в данном примере работать в режиме автоматической установки ключевых кадров, в котором любое изменение параметров объекта автоматически приводит к созданию ключа анимации. Для активации данного режима щелкните на кнопке Auto keyframe (Автоматическая установка ключевых кадров), находящейся в правой части слайдера Range Slider. Выделите шар и при необходимости переместите ползунок таймера анимации на первый кадр. Теперь нужно вручную создать первый ключ анимации (без данной операции следующие ключевые кадры не будут создаваться автоматически) — для этого воспользуйтесь командой Animate=>Set Key (Анимация=>Создать ключ) или, что быстрее, нажмите клавишу S. В результате на первом кадре слайдера Time Slider появится метка в виде красной вертикальной линии, говорящая о том, что ключ создан (рис. 9).
Рис. 9. Метка первого ключа
Перетащите ползунок слайдера Time Slider вправо на 31 кадр — при перетаскивании следите за тем, как в окне Current Time (Текущий кадр) меняется номер текущего кадра, и в нужный момент отпустите кнопку мыши. Увеличьте масштаб шара, воспользовавшись инструментом Scale Tool, и вы увидите, что на слайдере времени появится метка второго ключа, который вручную вам уже создавать не пришлось. Переместите ползунок Time Slider на последний кадр и уменьшите масштаб шара до первоначального, что можно сделать и непосредственно в окне Channel Box, введя нужные размеры. Нажмите на слайдере времени кнопку Play (Проиграть) или воспользуйтесь комбинацией клавиш Alt+V для того, чтобы проиграть анимацию — обратите внимание, что эта кнопка тут же превратится в Stop Animation (Остановить анимацию). Вдоволь налюбовавшись на созданную анимацию, остановите ее, щелкнув на кнопке Stop Animation или вновь воспользовавшись комбинацией Alt+V.
Подобное воспроизведение анимации в окне проекции Perspective (Перспектива) дает лишь примерное представление о том, как она будет демонстрироваться в действительности. Дело в том, что Maya всякий раз просчитывает каждое изображение перед его показом, а программа воспроизведения анимации проигрывает уже готовые изображения, а значит, скорость воспроизведения (в зависимости от сцены и характеристик компьютера) может немного или даже существенно отличаться от действительной. Для просмотра анимации в реальном времени в Maya предназначен специальный модуль Playblast (Проигрыватель), вызываемый из меню Window (Окно). Он обеспечивает создание множества моментальных снимков экрана (для каждого кадра формируется свой снимок) с последующей их демонстрацией в окне установленного по умолчанию в Windows проигрывателя. Попробуйте применить команду Window=>Playblast (Окно=>Проигрыватель) и увидите, что вначале анимация вновь будет воспроизведена в окне Perspective (только на этот раз процесс воспроизведения будет сопровождаться созданием снимков), а затем откроется окно проигрывателя, где можно будет увидеть результат (рис. 10). Имейте в виду, что подобный просчет анимации требует немало времени, поэтому на стадии отладки ролика разумнее не загружать сцену лишними деталями — нужно скрыть те объекты, которые для анимации не имеют значения, заменить объекты со сложной структурой на более простые и т.п.
Рис. 10. Демонстрация анимации в окне Windows-проигрывателя
Полученную анимацию несложно сохранить. Откройте окно настройки параметров визуализации, щелкнув на кнопке Render Globals (Общие параметры визуализации) в правом верхнем углу экрана или последовательно применив команды Window=>Rendering Editors=>Render View (Окно=>Редакторы визуализации=>Просмотр визуализации) и Options=>Render Globals (Параметры=>Общие параметры визуализации). Настройте параметры рендеринга в соответствии с рис. 11, указав имя файла (в данном случае — animation01), формат расширения (AVI), введя номера первого и последнего кадров и проконтролировав, чтобы визуализировалось изображение в проекции Perspective. Закройте окно диалога Render Globals (Общие параметры визуализации). Для визуализации всех кадров анимации перейдите в режим Rendering (для этого нужно нажать клавишу F5) и воспользуйтесь командой Render=>Batch Render (Визуализация=>Пакетная визуализация), что и приведет к формированию AVI-файла, который по умолчанию будет помещен в папку Мои документы\maya\projects\default\images\.
Рис. 11. Настройка параметров визуализации