В кадре № 100 восстановлены исходные значения упомянутых параметров.
Думаю, разбор этих простеньких анимаций разбудит вашу фантазию и наведет на мысли о возможных вариантах создания собственных «оживших» сцен, в качестве основы для которых можно свободно использовать представленные на прилагающемся к книге компакт-диске заготовки.
5. Далее необходимо указать, для каких параметров объектов, входящих в именованный набор, следует создавать ключи анимации. С этой целью щелкните на кнопке
10. Сохраните сцену под заданным в начале упражнения именем Letiasshiy shard .max.
10. Теперь выполните анимацию мишени камеры, чтобы обеспечить показ панорамы интерьера кафе. Сделайте текущим кадр № 60 и переместите мишень камеры в район точки (75 см; 55 см; 140 см), чтобы сделать видимой правую часть кафе, как показано на рис. 16.35. Щелкните на кнопке Set Keys (Задать ключи), создав ключи для камеры и ее мишени.
11. Наконец, установите в качестве текущего кадр № 100 и в окне вида сверху переместите мишень влево, в точку с примерными координатами (-65 см; -260 см; 140 см). Это должно создать впечатление, что посетитель выбрал для себя кресло и нацелился войти и сесть на него, как показано на рис. 16.36. Щелкните на кнопке Set Keys (Задать ключи), создав ключи. Выключите режим анимации щелчком на кнопке Set Key (Задать ключ).
12. Воспроизведите анимацию в окне проекции Perspective (Перспектива), включив режим каркасного отображения. Вы увидите, как камера наезжает на раскрывающуюся дверь кафе, далее ее взгляд проникает внутрь и скользит по внутреннему убранству помещения слева направо, а затем обратно. Сохраните сцену в файле под именем MAX-kafe (naezd kameroy).max, заданным в начале упражнения. Файл сцены с таким же именем, реализующей данную анимацию, имеется в папке Scenes\Glava_16 компакт-диска, прилагающегося к книге.
Итак, вы приобрели определенные навыки создания анимаций. Однако до сих пор мы просматривали анимации только в окнах проекций. На самом деле цель создания анимации состоит в том, чтобы сохранить ее в виде файла, который можно просматривать уже независимо от программы max 7.5, стандартными средствами системы Windows. В виде таких файлов формата avi, часто называемых видеоклипами, можно сохранять как анимации, визуализированные с итоговым чистовым качеством, так и эскизы анимаций.
5. Введите в счетчик End Time (Время окончания) раздела New (Новое) число 300, чтобы увеличить продолжительность анимации в 3 раза. Одновременно должны сдвинуться в 3 раза вправо по шкале времени и все ключи. Двери, которые открывались к тридцатому кадру, теперь будут открываться к кадру № 90. В три раза должны замедлиться также движения камеры и ее мишени. Щелкните на кнопке ОК в окне Re-Scale Time (Смена масштаба времени), а затем — в окне Time Configuration (Настройка временных интервалов). Обратите внимание на то, что в строке треков на шкале времени теперь отмечается наличие 300 кадров анимации. Чтобы убедиться в правильном масштабировании ключей, выделите одну из створок дверей. Ключи анимации этой створки должны находиться в нулевом кадре и кадре № 90. Выделив камеру, вы обнаружите, что она имеет ключи анимации в кадрах № 0, 90, 180 и 300. Итак, масштабирование выполнено, и теперь все временные процессы в нашей анимации должны замедлиться ровно в три раза.
6. Перед тем как повторять визуализацию эскиза, переименуйте его, назначив имя MAX-kafe (naezd kameroy).avi. При необходимости вы можете найти готовый эскиз такой анимации в папке Animations\Glava_16 компакт-диска, сопровождающего книгу, в файле под именем MAX-kafe (naezd kameroy).avi.
7. Выполните повторную визуализацию анимации. Просмотрите эскиз и убедитесь, что теперь видеоклип выглядит гораздо приятнее. Переименуйте эскиз, назвав его, скажем, MAX-kafe (naezd kameroy)01.avi. При необходимости вы можете найти готовый эскиз такой анимации под аналогичным именем в папке Animations\Glava_16 компакт-диска, сопровождающего книгу. В заключение, сохраните файл сцены под измененным в начале упражнения именем MAX-kafe (naezd kameroy)01.max.
В верхней части меню расположен список объектов, которые имеют ключи анимации в текущей позиции временной шкалы, и всех ключей этих объектов. Например, на рис. 16.43 в меню входят четыре ключа объекта Sphere01 (Сфера01): три ключа анимации положения отдельно по каждой из осей, X Position (Положение по X), Y Position (Положение по Y) и Z Position (Положение по Z), и ключ анимации такого свойства материала, как Specular Level (Сила блеска). Выбор любого из элементов этого списка вызывает появление окна диалога Key Info (Справка о ключах), рассматриваемого ниже.
Помимо списка ключей, меню содержит следующие команды:
Delete Key (Удалить ключ) — команда вызова подменю, содержащего список ключей для выборочного удаления, аналогичный списку в верхней части меню, а также команду All (Все), позволяющую удалить сразу все ключи в текущей позиции временной шкалы;
Delete selected keys (Удалить выделенные ключи) — команда удаления всех ключей, выделенных на строке треков;
Filter (Фильтр) — команда вызова подменю, содержащего перечень режимов выборочного отображения ключей в строке треков:
All Keys (Все ключи) — отображение всех ключей, этот режим выбирается по умолчанию;
All Transform Keys (Все ключи преобразований) — отображение только ключей преобразований положения, поворота или масштаба;
Current Transform (Текущее преобразование) — отображение только ключей того преобразования, инструмент которого выбран на главной панели;
Object (Объект) — отображение ключей модификаторов объекта;
Material (Материал) — отображение ключей материала объекта;
Configure (Конфигурировать) — команда вызова подменю, содержащего дополнительные команды конфигурирования строки треков:
Show Frame Numbers (Показывать номера кадров) — включает/выключает отображение номеров кадров на шкале строки треков;
Show Selection Range (Показывать выделенный диапазон) — включает/выключает отображение под шкалой строки треков диапазона действия анимации в виде черной линии с белыми маркерами на концах (рис. 16.44), такой же, как в окне диалога Track View — Dope Sheet (Просмотр треков — Диаграмма ключей). Линия выделенного диапазона отображается, если в строке треков выделено хотя бы два ключа. Если выделено несколько ключей, линия выделенного диапазона отображается между крайними из них;
Show Sound Track (Показывать звуковую дорожку) — включает/выключает отображение звуковой дорожки между шкалой строки треков и строкой диапазонов действия, если для озвучивания анимации применяется звукозапись, как показано на рис. 16.45. Это особенно удобно при согласовании анимируемых движений губ персонажа с записью его речи;
Snap to Frames (Привязка к кадрам) — включает/выключает режим привязки положений перемещаемых ключей анимации на временной шкале к моментам времени, соответствующим границам кадров анимации. Режим по умолчанию включен; если его выключить, то ключи можно размещать в произвольных точках шкалы времени. Значки таких ключей имеют вид узких прямоугольников;
Go to Time (Перейти к текущему времени) — заставляет ползунок таймера анимации переместиться к точке шкалы, соответствующей моменту времени выбранного ключа анимации.
Данное окно называют окном Key Info (Справка о ключах), хотя его заголовок образуется из названия объекта, которому принадлежит ключ анимации, и указанного через двоеточие наименования анимируемого параметра, например Sphere01: X Position (Сфера01: Положение по X). Такое название окна связано с названиями двух свитков командной панели Motion (Движение), полностью аналогичных данному окну по составу параметров: Key Info (Basic) (Справка о ключах (Базовая)) и Key Info (Advanced) (Справка о ключах (Дополнительная)), показанных на рис. 16.47.
Для редактирования свойств ключа анимации с помощью элементов управления окна диалога Key Info (Справка о ключах) действуйте следующим образом:
1. Выберите нужный ключ анимации по его номеру, используя две кнопки с черными стрелками в левом верхнем углу свитка для перехода к следующему или предыдущему ключу. Номер текущего ключа отображается в текстовом поле справа от кнопок (см. рис. 16.46). Щелчок на кнопке со стрелкой, указывающей вправо, вызывает загрузку в окно диалога свойств следующего ключа анимации выбранного параметра объекта, а на кнопке со стрелкой, указывающей влево, — предыдущего ключа.
2. Для изменения момента времени наступления (номера кадра) текущего ключа анимации используйте счетчик Time (Время). Меняя значение в этом счетчике, можно перемещать текущий ключ вместе с его пара-Метрами вдоль трека анимации (из кадра в кадр). Например, раскройте поочередно окна справки о ключах анимации «Летящий шар», управляющих положением объекта по осям X, Y и Z и расположенных в кадре № 25, и измените для каждого из них номер кадра на 0. Ключи переместятся в начало строки треков. Если щелкнуть на кнопке с буквой L (Lock — Блокировать) справа от счетчика номера кадра, то выбранный ключ будет заблокирован в текущем кадре анимации, что исключает возможность ошибочного перемещения ключа по шкале времени.
3. Контролируйте значения компонентов анимируемого параметра (например, координат положения, коэффициентов масштаба, силы блеска или интенсив-ностей RGB-компонентов цвета материала), соответствующих текущему кадру, в счетчиках, расположенных под счетчиком Time (Время). Например, для ключа преобразования положения по оси X объекта Sphere01 (Сфера01) анимации «Летящий шар» это будет счетчик Value (Значение). При необходимости измените значения параметров в этом счетчике для настройки анимации. К примеру, выберите в окне справки о ключе анимации положения по оси X ключ, расположенный в кадре № 40 (это ключ № 2), и измените значение в счетчике Value (Значение) с -1000 см на -100 см. Если теперь воспроизвести анимацию, то окажется, что шар «летит» не по прямолинейной траектории, как раньше, а по плавной дуге, проходящей через точки его начального и конечного положения, а также через точку (-100 см; 2000 см; 0 см), заданную в кадре № 40. Кривая траектории перемещения объекта через заданные точки является плавной потому, что преобразованию положения при анимации по умолчанию назначается контроллер Bezier (Безье), преобразующий траекторию движения объекта в сплайн Безье, плавно проходящий через ключевые точки. Линию траектории перемещения объекта в процессе анимации можно сделать видимой (рис. 16.48), если выделить объект и щелкнуть на кнопке Trajectories (Траектории), расположенной на командной панели Motion (Движение) под списком Selection Level (Уровень выделения). Эту кнопку можно видеть на рис. 16.47. Сама траектория изображается пунктирной линией красного цвета, а ключи анимации отмечаются на ней маркерами в виде квадратиков.
Рассмотрим назначение отдельных кнопок сглаживания:
3. Будем пытаться выполнить анимацию по такому сценарию: сначала «горят» все красные лампочки, затем — все желтые, потом все зеленые, и, наконец, цикл повторяется. В итоге должно создаваться впечатление огоньков, «бегущих» вдоль по нитке гирлянды. Произведем расчет времени. Продолжительность горения лампочек одного цвета можно принять равной 10 кадрам, то есть около 0,3 с. Тогда за 30 кадров произойдет полный цикл переключения лампочек всех трех цветов. Чтобы в пределах сегмента анимации уложилось целое число таких циклов, увеличим ее продолжительность до 120 кадров, используя для этого окно диалога Time Configuration (Настройка временных интервалов) или уже известный вам интерактивный прием. Включение свечения лампочек будем имитировать установкой параметра Self-Illumination (Самосвечение) равным 100 %, а выключение — приведением этого параметра к нулю.
4. Итак, приступим. Убедитесь, что текущим является кадр № 0. Раскройте окно Редактора материалов. Активизируйте ячейку с образцом материала зеленых лампочек. Включите режим автоматической анимации, щелкнув на кнопке Auto Key (Автоключ). Обратите внимание на то, что вокруг ячейки образца появляется рамка красного цвета, указывающая на возможность анимации параметров материала. Измените значение счетчика Self-Illumination (Самосвечение) со 100 на 0. Заметьте, что вокруг стрелок счетчика этого параметра появляются красные угловые скобки. Они говорят о том, что данный параметр анимирован. Затем активизируйте ячейку с образцом материала желтых лампочек и проделайте с этим материалом то же, что и с материалом зеленых лампочек — выключите его самосвечение. Теперь в кадре № 0 «горят» только красные лампочки.
5. Перейдите к кадру № 10. Выключите самосвечение материала красных лампочек, убавив до нуля значение параметра Self-Illumination (Самосвечение). Значение данного параметра желтого материала увеличьте в этом кадре до 100 %, а у зеленого материала оставьте пока равным нулю. Итак, в кадре № 10 красные лампочки «погасли», желтые «загорелись», а зеленые пока ждут своей очереди.
6. Сделайте текущим кадр № 20 и описанным выше манером «выключите» желтые лампочки, но «включите» зеленые. Наконец, перейдите к кадру № 30, выключите самосвечение зеленого материала, но снова заставьте светиться материал красных лампочек. Цикл завершен. Выключите режим анимации, щелкнув на кнопке Animate (Анимация).
7. Попробуйте воспроизвести анимацию в окне проекции, перетаскивая ползунок таймера, и убедитесь, что результат не совсем тот, на какой мы рассчитывали. Красные лампочки не «горят» ровным светом все 10 первых кадров, а постепенно «гаснут». Желтые и зеленые лампочки, напротив, медленно «разгораются». Следя за значением параметра Self-Illumination (Самосвечение), вы отметите его равномерное уменьшение для материала красного цвета и увеличение — для материалов желтого и зеленого цветов. В чем дело? Секрет прост: вспомните, что max 7.5 по умолчанию назначает анимируемым параметрам вариант управления типа Flat Tangent (Выровненное управление), приводящий к плавному изменению параметров с устранением скачков.
8. Как изменять варианты управления, вы уже знаете. Так как все лампочки одного цвета используют один и тот же материал, достаточно выполнить настройку ключей одной из них, чтобы оказать влияние на поведение всех остальных лампочек того же цвета. Итак, выделите любую красную лампочку, скажем, Lampochka01. В строке треков появятся значки ключей анимации в кадрах № 0, 10 и 30. Щелкните на ключе в кадре № 0 правой кнопкой мыши и выберите в появившемся меню команду Lampochka01: Self-Illumination (Лампочка01: Самосвечение). Появится окно справки о ключах анимации самосвечения материала этой лампочки, показанное на рис. 16.53. Измените тип управления параметром на входе и выходе текущего ключа со Smooth (Сглаженное управление) на Step (Скачкообразное управление). Щелкнув на кнопке в левом верхнем углу окна со стрелкой, указывающей вправо, перейдите к ключу № 2, относящемуся к кадру № 10. Измените тип управления на входе и выходе этого ключа также на скачкообразное. В заключение проделайте аналогичную процедуру для ключа № 3, относящегося к кадру № 30.
9. Теперь, действуя точно так же, как на предыдущем шаге, измените на скачкообразный варианты управления анимацией параметра самосвечения для материала желтых и зеленых лампочек. Воспроизведите анимацию в окне проекции, перетаскивая ползунок таймера. Теперь все должно идти так, как нужно. На протяжении первых 10 кадров «горят» в полную силу красные лампочки, после десятого кадра они «гаснут», но «загораются» желтые. В кадре № 20 желтые лампочки «гаснут», но тут же «вспыхивают» зеленые. Наконец, в кадре № 30 зеленые лампочки «гаснут», но опять «загораются» красные.
10. Остается только «размножить» ключи лампочек каждого цвета. К счастью, так как анимация относится к материалу, используемому всеми лампочками одного цвета, копирование ключей тоже можно сделать для какой-то одной лампочки, обеспечив распространение результата на все объекты, совместно использующие этот материал. Итак, выделите какую-то из красных лампочек. С помощью рамки выделите два последних из трех ключей в строке треков. Удерживая клавишу Shift, перетащите пару ключей так, чтобы первый из ключей-дубликатов переместился в кадр № 40. Тем самым вы распространите действие анимации на интервал с нулевого по шестидесятый кадр. Затем повторите копирование пары ключей еще два раза, обеспечив действие анимации до конца сегмента. В заключение скопируйте единственный ключ из кадра № 70 в кадр № 100, иначе красные лампочки, загоревшись в кадре № 90, будут гореть до конца анимации.
6. Впрочем, нам нужно двигаться дальше. Перейдем к анимации материала поленьев. Анимируемым параметром здесь также явится фаза, только это будет фаза неоднородности цветов градиента и фаза карты случайных неоднородностей, включенной в состав ячеистой карты, которая, в свою очередь, входит в состав карты градиента... (вспомните главу 13). Откройте окно Редактора материалов и активизируйте ячейку с образцом материала под названием Goriachie ugli. Щелкните на кнопке с буквой М справа от образца цвета Diffuse (Диффузный). Появятся свитки параметров карты градиента. В разделе Noise (Неоднородности) свитка Gradient Parameters (Параметры градиента) имеется счетчик Phase (Фаза). По умолчанию в нем установлено значение 0. Включите режим автоматической анимации, перейдите к кадру № 100 и установите в этом счетчике значение 60. Выключите режим анимации.
Чтобы вывести на экран или скрыть из вида панели окна, используется стандартный для 3ds max способ. Следует установить курсор на левый край любой из панелей и щелкнуть правой кнопкой мыши. В появившемся меню необходимо выбрать команду Show Toolbars (Показывать панели). В подменю, показанном на рис. 16.56, перечисляются все доступные панели окна. Отображаемые панели помечены галочками. Для показа или скрытия любой панели просто выберите нужную команду этого подменю.
Правое поле показывает величину анимируемого параметра, хранящегося в ключе анимации. Для изменения данной величины можно ввести новое значение прямо в это поле.
С помощью флажков списка Show (Показывать) в левой части окна фильтров можно выбрать, какие типы объектов следует показывать в окне просмотра треков. Кнопки под списком позволяют установить все флажки (All), сбросить все флажки (None) или инвертировать установку флажков (Invert). Обратите внимание на сброшенный по умолчанию флажок Controller Types (Типы контроллеров). При его установке в окне дерева иерархии справа от каждого параметра или преобразования, допускающего анимацию, будет отображаться наименование контроллера, назначенного этому параметру или преобразованию по умолчанию. Об этом мы еще поговорим подробнее в следующей главе.
Список Hide By Controller Type (Скрыть по типу контроллера) в средней части окна содержит перечень всех контроллеров max 7.5. В этом списке можно выделить те контроллеры, которые не должны отображаться на дереве иерархии окна Просмотр треков. В разделе Show Only (Показывать только) в правой части окна можно установить флажки, обеспечивающие отображение только треков с анимацией (Animated Tracks), выделенных объектов (Selected Objects), выделенных треков (Selected Tracks), видимых объектов (Visible Objects) или только треки с ключами (Keyable Tracks). В разделе Hide By Category (Скрыть по категории) можно установить флажки, обеспечивающие скрытие треков объектов определенных категорий. В разделе Function Curve Display (Отображение функциональных кривых) в правой нижней части окна фильтров можно указать, какие преобразования следует отображать в окне Редактора кривых. Если щелкнуть на кнопке Filters (Фильтры) правой кнопкой мыши, то появится меню, показанное на рис. 16.59. Это меню содержит команды, дублирующие соответствующие флажки из разделов Show Only (Показывать только) и Show (Показывать) окна Filters (Фильтры).
Панель инструментов Key Tangents (Касательные ключей) окна диалога Track View — Curve Editor (Просмотр треков — Редактор кривых), показанная отдельно на рис. 16.61, содержит кнопки, предназначенные для выбора того или иного варианта сглаживания функциональных кривых на входе и выходе из ключа анимации. Все эти кнопки являются аналогами соответствующих кнопок окна диалога Key Info (Справка о ключах), подробно рассмотренных в этой главе ранее. Каждая из кнопок имеет раскрывающуюся панель с двумя дополнительными инструментами, позволяющими изменить тип касательных функциональной кривой только на входе в ключ или только на выходе из него.
Из всех кнопок панели инструментов Curves (Кривые) на начальном этапе для вас может представлять интерес только одна — Parameter Curve Out-of-Range Types (Типы экстраполяции функциональных кривых). Этот инструмент позволяет управлять тем, каким образом будет выполняться анимация параметра, соответствующего выделенному треку, за пределами заданного диапазона, вызывая окно диалога Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых), показанное на рис. 16.62.
Использование этого окна бывает важно в тех случаях, когда анимация, которая должна периодически повторяться, настраивается в ограниченном диапазоне кадров. С помощью средств данного окна можно выбрать тот или иной вариант повторения настроенной анимации. Окно содержит шесть графиков, иллюстрирующих варианты продолжения (экстраполяции) функциональных кривых: Constant (Постоянный) — анимируемый параметр за пределами диапазона будет сохранять постоянные значения, соответствующие началу и концу диапазона; Cycle (Циклический) — будет периодически повторяться анимация параметра, заданная в пределах диапазона действия; Loop (Периодический) — также будет периодически повторяться анимация параметра, заданная в пределах диапазона действия, но при этом будет выполнена интерполяция между значениями параметра в начале и в конце диапазона действия, чтобы в процессе анимации не наблюдалось «скачка» значения параметра; Ping Pong (Зеркальный повтор) — анимация будет попеременно повторяться в прямом и зеркальном вариантах; Linear (Линейный) — анимация продолжается по линейному закону вдоль касательной к кривой графика изменения параметра в точке конца диапазона действия; Relative Repeat (Относительный повтор) — повторяется анимация, заданная в пределах диапазона, но все значения параметра смещаются так, чтобы на краях диапазона действия не было скачков значения параметра. Под каждым из шести графиков имеются по две кнопки. Левая кнопка управляет выбором варианта поведения параметра до начала диапазона действия анимации, а правая кнопка определяет, как будет меняться параметр после выхода из этого диапазона. Можно произвольным образом комбинировать варианты продолжения параметрических кривых влево и вправо от заданного диапазона действия, нажимая левую кнопку под образцом одного варианта, а правую — под образцом другого.
Когда окно просмотра треков находится в режиме Диаграммы ключей, в нем появляются некоторые дополнительные инструменты.
То же самое можно проделать и с анимацией материала зеленой лампочки. А вот для материала желтой придется добавить один ключ в кадре № 30. Зачем? Попробуйте, и вам все станет понятно.
Впрочем, так и быть, загрузите готовый файл анимации Girlianda02.max. Он хранится в папке Scenes\Glava_16 компакт-диска, прилагающегося к книге. Проанализируйте, как с помощью всего трех ключей в первых трех кадрах выполнена анимация каждого из трех материалов гирлянды на интервале в 120 кадров.
В качестве задания на самостоятельную проработку попробуйте выполнить визуализацию анимации наезда камерой на открывающиеся двери «МАХ-кафе», усовершенствованной в ходе выполнения упражнения 7 этой главы и сохраненной в файле MAX-kafe (naezd kameroy)01.max. Нужный файл можно найти в папке Scenes\Glava_16 компакт-диска, прилагающегося к книге.
Чтобы ускорить процесс, выключите режимы визуализации эффектов внешней среды и карт отражения/преломления и плоского зеркала, сбросив в окне диалога Render Scene (Визуализация сцены) флажки Atmospherics (Эффекты внешней среды) и Auto-Reflect/Refract and Mirrors (Автоотражение/преломление и зеркала). При этом будут продолжать действовать карты трассировки, так что отражение объектов сцены в зеркале сохранится.
Эскиз анимации — это ее упрощенный вариант, чаще всего создаваемый для контроля качества движений объектов сцены. Эскиз анимации синтезируется с помощью интерактивного визуализатора, в отличие от окончательного варианта, формируемого сканирующим визуализатором с наилучшим возможным качеством. В эскизе анимации могут наблюдаться эффекты освещения и прозрачности, а также текстуры материалов объектов, хотя и в существенно упрощенном виде. Для итогового тестирования освещения сцены, эффектов прозрачности или качества материалов следует выполнять полную визуализацию отдельных кадров анимации.
В max 7.5, в отличие от прежних версий этой программы, реализованы два режима анимации методом ключей. Один из них, являющийся полным аналогом режима анимации, знакомого пользователям более ранних версий, называется теперь режимом анимации с автоматическим созданием ключей (auto key), или просто режимом автоматической анимации. Помимо него добавлен еще один режим, называемый режимом анимации с принудительным созданием ключей (set key), или просто режимом принудительной анимации. В этом режиме пользователь имеет полный контроль над тем, какие именно ключи и в каких кадрах будут созданы. За эти расширенные возможности приходится платить необходимостью более внимательно контролировать свои действия и не забывать создавать эти самые ключи в нужные моменты времени. В соответствии с изменением подхода к анимации появились и новые средства управления этим процессом.
Средства создания ключей и управления анимацией включают ряд кнопок в нижней части экрана max 7.5, раскрывающийся список со строкой Selected (Выделенные), ползунок таймера анимации, строку треков и кнопки управления воспроизведением анимаций. Все эти элементы обозначены на рис. 2.3 и 2.16.
Рассмотрим подробнее назначение этих элементов управления.
Строка треков, располагающаяся в нижней части экрана max 7.5 под строкой ползунка таймера анимации, представляет собой средство ускоренного доступа к ключам анимации выделенного объекта (или объектов) сцены, позволяя обойтись без вызова окна Track View (Просмотр треков). В max 7.5 строка треков похожа на мерную линейку благодаря нанесенным на ней делениям, обозначающим номера кадров. Номер текущего кадра указывается прозрачным голубым ползунком с вертикальной риской, как показано на рис. 16.4. На этом рисунке текущим является кадр № 14, на что указывают надпись на ползунке таймера анимации и позиция ползунка строки треков.
Продолжим совершенствование навыков создания простейших анимаций в автоматическом режиме, заставив шахматные фигурки двигаться по доске и разыгрывать простейший дебют. Особенностью этой анимации явится то, что ключи будут установлены для многих объектов сцены. Кроме того, мы научимся производить расчет времени анимации и выполнять еще ряд важных операций, в частности устанавливать момент начала движения объекта и корректировать траекторию его перемещения, задавая промежуточные точки.
Выполните следующие действия:
1. Перезапустите max 7.5 и загрузите сцену, изображающую шахматные фигуры, расставленные на доске в исходных позициях. Такую сцену с необходимыми материалами можно найти под именем Shahmati01.max в папке Scenes\ Glava_14 компакт-диска, прилагающегося к книге. Сохраните файл с инкрементированием имени.
2. Произведем простейший расчет времени. Стандартная длительность временного сегмента анимации составляет 100 кадров. При опять же стандартной скорости воспроизведения — 30 кадров в секунду — анимация такого объема будет длиться 3,3 секунды. Сколько ходов шахматных фигур имеет смысл моделировать за это время? Наверное, не более 5—6, чтобы продолжительность каждого хода составляла от 1/2 до 2/3 секунды. Если заставить фигуры двигаться быстрее, то при воспроизведении подобной анимации трудно будет уследить за их мельканием. Итак, выберем в качестве базовой продолжительности одного хода величину 20 кадров, то есть 2/3 секунды.
3. Не мудрствуя лукаво, разыграем запомнившийся мне с ранних лет своим легкомыслием дебют под названием «Детский мат». Начинается он со знаменитого хода... Правильно, е2-е4! Итак, щелкните на кнопке Auto Key (Автоключ), чтобы включить режим автоматической анимации. Выделите пешку на поле е2 (это должен быть объект Peshka12). Перетащите ползунок таймера анимации к отметке кадра № 20 или просто введите число 20 в поле Current Time (Текущее время) группы инструментов управления анимацией и нажмите клавишу Enter. Ползунок при этом передвинется в нужную позицию автоматически. Переместите выделенную пешку на поле е4, как показано на рис. 16.14. Это удобно произвести в окне вида сверху, но несложно сделать и в окне проекции Perspective (Перспектива), если пользоваться габаритным контейнером преобразования в виде тройки координатных векторов.
Начнем знакомство с новым режимом анимации с простенького упражнения по превращению летящей сферы в терпящий бедствие сдувающийся воздушный шар. Пусть у этого шара в 50-м кадре началась утечка воздуха, так что он стал резко терять в объеме и форма его из гладкой и округлой постепенно стала становиться угловатой.
1. Загрузите созданную в упражнении 1 сцену Letiasshiy shar.max. При необходимости можете найти нужную сцену в файле с таким же именем, хранящемся в папке Scenes\Glava_16 компакт-диска, сопровождающего книгу. Сохраните сцену с инкрементированием имени. Для наглядности увеличьте значение радиуса сферы до 180 см.
2.
В сцене «МАХ-кафе» можно «оживить» массу элементов, хватило бы только воображения. Попробуем одновременно «оживить» два объекта — входную дверь и съемочную камеру, расположенную снаружи здания кафе. Представьте себе такой сценарий анимации: кафе стоит с закрытыми дверями, затем камера начинает наезжать на двери, они распахиваются, взгляд камеры проникает в помещение и дает панораму интерьера. При этом анимацию и дверей, и камеры выполним в принудительном режиме.
Выполните следующие действия:
1. Откройте файл MAX-kafe22.max. Если вы не сохранили такой файл на жестком диске своего компьютера, можете загрузить нужный файл под именем MAX-kafe22.max из папки Scenes\Glava_15 компакт-диска, прилагающегося к книге. Сохраните файл сцены под именем MAX-kafe (naezd kameroy).max. Скройте от просмотра обе системы снежинок — ведь мы собираемся визуализировать внутреннее пространство кафе, а снежинки свободно проникают через потолок помещения.
2. Укажите программе, ключи каких параметров следует создавать в принудительном режиме. Для этого щелкните на кнопке Key Filters (Фильтры ключей). В окне диалога Set Key Filters (Выбор фильтров ключей) сбросьте установленные по умолчанию флажки Scale (Масштаб) и IK Parameters (IK-параметры). Оставьте установленными флажки Position (Положение) и Rotation (Поворот). Флажок Position (Положение) обеспечит установку ключей анимации положения камеры и ее мишени, а флажок Rotation (Поворот) — создание ключей анимации поворота створок дверей.
3. Создайте два набора выделенных объектов. В первый из них, названный, скажем, Stvorki dverey, включите объекты LevStvorka и PravStvorka. Во второй включите камеру Camera01 и ее мишень — объект Camera01.Target, назвав набор, скажем, Naruzhnaia kamera. Возможно, для этого сначала придется сделать видимой скрытую от просмотра камеру.
4. Выполните анимацию створок дверей. Приведите створки дверей в исходное (закрытое) положение аналогично тому, как вы делали это в п. 3 упражнения 2 этой главы. Выберите в раскрывающемся списке справа от кнопки Auto Key (Автоключ) строку Stvorki dverey.
5. Включите режим принудительной анимации, щелкнув на кнопке Set Key (Задать ключ). Убедитесь в том, что ползунок таймера анимации стоит на отметке нулевого кадра. Помните, что в режиме Set Key (Задать ключ), в отличие от режима Auto Key (Автоключ), ключи анимации не создаются в нулевом кадре автоматически, так что это нужно обязательно сделать вручную. Щелкните на большой кнопке Set Keys (Задать ключи) с изображением ключа, чтобы установить в нулевом кадре анимационные ключи, фиксирующие значения параметров, выбранных с помощью окна диалога Set Key Filters (Выбор фильтров ключей). В данном случае будут установлены ключи анимации перемещения и поворота створок.
6. Переместите ползунок таймера к отметке кадра № 30. Поверните левую и правую створки так, чтобы двери были широко открыты. Щелкните на кнопке Set Keys (Задать ключи), чтобы создать ключи анимации. Если какая-то из створок выделена, вы увидите в строке треков квадратики на отметках нулевого и тридцатого кадров. Эти квадратики будут раскрашены наполовину в красный, наполовину в зеленый цвет, так как они символизируют ключи анимации перемещения и поворота.
7. Выключите режим принудительной анимации и, перетаскивая влево-вправо ползунок таймера анимации, убедитесь, что дверь полностью открывается на протяжении первых 30 кадров. Анимация двери закончена.
8. Теперь выполните анимацию камеры Camera01 (Камера01). Включите режим принудительной анимации, щелкнув на кнопке Set Key (Задать ключ). Выберите в раскрывающемся списке справа от кнопки Auto Key (Автоключ) строку Naruzhnaia kamera. Сделайте текущим кадр № 0 и щелкните на кнопке Set Keys (Задать ключи), создав ключи фиксации исходного положения камеры и мишени.
9. Установите в качестве текущего кадр № 30, выделите объект Camera01 (Ka-мера01) и в окне проекции Тор (Вид сверху) переместите камеру почти вплотную ко входной двери, которая к этому моменту уже полностью открыта, в точку с примерными координатами (120 см; -330 см; 165 см). Щелкните на кнопке Set Keys (Задать ключи), создав ключи для камеры и ее мишени. Вид сцены через окно камеры в этот момент показан на рис. 16.34.
Для создания эскиза анимации, сформированной в упражнении 1, выполните следующие действия:
1. Загрузите в программу max 7.5 файл Letiasshiy shar.max. Если вы по каким-либо причинам не создали такой файл, можете найти его в папке Scenes\Glava_16 компакт-диска, прилагающегося к книге. Активизируйте окно проекции, в котором будет производиться эскизная визуализация.
2. Выберите команду меню Animation > Make Preview (Визуализация > Создать эскиз). Появится окно диалога Make Preview (Создание эскиза), показанное на рис. 16.39.
Чтобы закрепить навыки создания, просмотра и переименования эскизов анимаций, выполним еще одну эскизную визуализацию, относящуюся на этот раз к нашему основному проекту — «МАХ-кафе». Заодно научимся исправлять масштаб времени анимации, если просмотр эскиза показывает, что действие происходит слишком быстро или медленно.
Итак, выполните следующие действия:
1. Загрузите в программу max 7.5 файл анимации, созданной в ходе выполнения упражнения 5. Этот файл был сохранен нами под именем MAX-kafe (naezd kameroy).max. При необходимости можете найти файл с аналогичным именем в папке Scenes\Glava_16 компакт-диска, сопровождающего книгу. Сохраните файл сцены с инкрементированием имени.
2. Выполните команду меню Animation > Make Preview (Визуализация > Создать эскиз), чтобы вызвать появление окна диалога Make Preview (Создание эскиза). Установите нужное разрешение для эскиза. Я выбрал разрешение 720x540 точек (90 % от разрешения «чистовой» визуализации 800x600 точек). Выберите кодек и степень сжатия. Выполните построение эскиза. По завершении работы программы на экране появится приложение Windows Media Player (Проигрыватель Windows Media) с готовым эскизом анимации.
3. Когда вы просмотрите этот эскиз, станет очевидно, что движение камеры происходит слишком быстро. Вместо того чтобы наблюдать на экране, как некто спокойно подходит к дверям кафе и неторопливо обводит взглядом его внутреннее убранство, выбирая себе место, мы видим, как тот же некто подбегает к двери и судорожно дергает взглядом по интерьеру кафе влево-вправо. Очевидно, что все движения этой анимации имеет смысл замедлить раза в два-три.
Отработаем на практике итоговую визуализацию анимации с записью результата в файл. Выполните следующие действия:
1. Загрузите в программу max 7.5 файл Letiasshiy shar.max или просто продолжите работу, если он уже открыт. При необходимости загрузите готовый файл этой сцены с прилагающегося к книге компакт-диска, где он хранится в папке Scenes\Glava_16. Активизируйте окно проекции, в котором будет производиться итоговая визуализация.
2.
Если новогодняя елка «загоралась» иносказательно, то в этом упражнении нам предстоит создать анимацию пламени горящих в камине дров, да так, чтобы этот огонь выглядел «как настоящий». В ходе выполнения упражнения мы, помимо пламени, произведем анимацию материала поленьев и карты неоднородностей, проецируемой источником света, а также узнаем, как заставить тени слегка приплясывать.
Для анимации огня камина выполните следующие действия:
1. Откройте имеющийся у вас файл MAX-kafe22.max или загрузите файл МАХ-kafe22.max, находящийся в папке Scenes\Glava_15 компакт-диска, прилагающегося к книге. Этот файл содержит настроенный в предыдущей главе эффект горения поленьев. Сохраните файл под именем MAX-kafe (gorenie).max.
2. Сначала выполним анимацию собственно пламени. Раскройте окно диалога Environment (Внешняя среда), выполнив команду основного меню Rendering > Environment (Визуализация > Внешняя среда). Щелкните на строке Fog (Туман) и сбросьте флажок Active (Активен), чтобы упростить процесс визуализации. Затем щелкните на строке Fire Effect (Горение) в списке Effects (Эффекты) окна и прокрутите область свитков вверх, чтобы стали видны параметры пламени.
3. Параметры, управляющие анимацией пламени, находятся в разделе Motion (Движение). Их всего два: Phase (Фаза) — задает частоту мерцания вспышек пламени; Drift (Дрейф) — задает скорость разрастания пламени. Для открытого огня, вроде пламени горящих дров или свечи, параметр Phase (Фаза) рекомендуется устанавливать не слишком большим, скажем, 50-70 на 100 кадров, иначе мелькание языков огня будет слишком частым. Величину дрейфа, напротив, рекомендуется делать побольше, порядка нескольких сотен, чтобы пламя рвалось вверх. Для выполнения анимации горения щелкните на кнопке Auto Key (Автоключ). В кадре № 0 установите нулевые или близкие к нулю значения обоих параметров, фазы и дрейфа. Затем перейдите к кадру № 100 и установите в счетчике Phase (Фаза) значение 60, а в счетчике Drift (Дрейф) — скажем, 200. Выключите режим анимации. Точных рецептов нет: нужно выполнить пробную визуализацию и, если вид пламени вас не устроит, поменять значения параметров и визуализировать изображение снова.
4. Опыт показывает, что использованное нами в предыдущей главе значение параметра Density (Плотность) пламени, равное 60, подходит для визуализации отдельного статичного кадра, но оказывается чрезмерным при визуализации анимации языков огня. Уменьшим это значение, скажем, до 30. Чтобы эффект горения был более выразителен, уменьшите общий уровень освещенности в помещении кафе. Например, выключите все осветители, кроме трех: одного Всенаправленного, изображающего лампу на стене, противоположной камину (Omni01), и двух (Omni02 и Отп03) — в роли ламп на стене, к которой прилегает камин. Свет этих двух ламп не будет попадать в топку камина и не ослабит эффект пламени. Разумеется, необходимо также оставить включенным осветитель, расположенный внутри топки и призванный имитировать свет от пламени. Кстати, его яркость (параметр Multiplier) имеет смысл увеличить, скажем, до 6, учитывая не слишком светлый оранжевый оттенок цвета.
5. Выполните пробную визуализацию анимации. К сожалению, по отдельным кадрам, подобным изображению на рис. 16.54, никак нельзя составить впечатления о качестве горения. Оценить его, можно только просматривая анимацию в динамике. В итоге отладка этого эффекта при недостатке опыта может оказаться довольно мучительным процессом.
Автоматизация процесса анимации состоит в том, что пользователю требуется задать значения анимируемых параметров только в некоторых кадрах, называемых ключевыми {keyframes). Ключевые кадры могут разделяться десятками промежуточных {in-betweens) кадров. Например, для создания анимации продолжительностью в 300 кадров, изображающей простейшее перемещение объекта, бывает достаточно задать положение объекта всего в двух ключевых кадрах: в начале и в конце анимации. Значения анимируемых параметров в ключевых кадрах называются ключами анимации {animation keys). Значения этих параметров в промежуточных кадрах max 7.5 рассчитывает автоматически. В каждом кадре ключи анимации могут быть заданы для произвольного числа объектов сцены, а каждый из объектов может иметь ключи анимации для любых своих параметров.
Можно обойтись и без ключевых кадров, если указать программе max 7.5 алгоритм изменения анимируемого параметра. Способ управления изменением параметров (посредством настройки формы графика изменений, путем задания траектории изменений, за счет описания изменений алгоритмическим выражением и т. п.), а также характер этих изменений (равномерно в интервале между ключевыми кадрами, с ускорением в начале или в конце интервала и т. п.) определяется выбором контроллера анимации {animation controller). Max 7.5 поддерживает большое количество (более 25) разнообразных контроллеров анимации. Для каждого параметра и преобразования max 7.5, которые допускают анимацию, определен тип контроллера анимации, назначаемый им по умолчанию. Учиться заменять контроллеры и настраивать некоторые из них мы будем в следующей главе.
Разумеется, параметров, допускающих анимацию, в max 7.5 гораздо больше, чем флажков в окне диалога Set Key Filters (Выбор фильтров ключей). При необходимости более детального выбора анимируемых параметров (или треков, как их принято называть в документации max 7.5) следует сделать это с помощью окна диалога
Перед тем как приступить к практической реализации простейших, а также и не совсем простых вариантов анимации, по традиции ознакомимся с основными понятиями, знание которых необходимо, чтобы говорить на одном языке с max 7.5.
Окно диалога Track View (Просмотр треков) является основным инструментом настройки анимаций и служит для редактирования параметров любых ключей анимации, имеющихся в сцене в пределах временного сегмента. Оно дает возможность назначать или менять контроллеры ключей анимации, управлять скоростью и характером изменения анимируемых параметров, положением существующих ключей на шкале времени, а также создавать, удалять, копировать, перемещать и вставлять ключи анимаций. Кроме того, окно Track View (Просмотр треков) предоставляет полный перечень всех элементов сцены, позволяет добавлять к анимации звуковую дорожку, добавлять и редактировать комментарии, а также управлять видимостью объектов сцены.
Это окно представлено в max 7.5 в двух разновидностях: Track View — Curve Editor (Просмотр треков — Редактор кривых) и Track View — Dope Sheet (Просмотр треков — Диаграмма ключей).
Окно Track View — Curve Editor (Просмотр треков — Редактор кривых) специализировано для просмотра и редактирования функциональных кривых анимации. Окно Track View — Dope Sheet (Просмотр треков — Диаграмма ключей) также позволяет редактировать анимацию, представленную, однако, не в виде кривых, а в виде треков с размещенными на них значками анимационных ключей или в виде диапазонов действия этих ключей. Обе разновидности окна Track View (Просмотр треков) могут свободно переключаться из режима редактирования кривых в режим диаграммы ключей, и наоборот, то есть являются полностью взаимозаменяемыми. Фактически это два воплощения одного и того же окна, два его обновленных лика.