Ни один художник не бывает удовлетворен первой анимацией, примененной к сцене. 3DS МАХ обеспечивает мощный набор инструментов управления анимацией, разрешающих редактировать ключи анимации и манипулировать ими во времени. Данная глава приводит обзор различных элементов управления анимацией, доступных в 3DS МАХ, вместе с их применением. В главе освещаются следующие темы:
При выполнении анимации сцены добавляется четвертое измерение - время. В предыдущих версиях 3D Studio единицей измерения времени был кадр. Концепция кадра присутствует в 3DS МАХ и сейчас, однако она теперь существенно расширилась. 3DS МАХ обеспечивает инструменты, необходимые для определения и отображения времени способом, совместимым с выводным форматом, и для легкого конвертирования между выходными форматами без неблагоприятного воздействия на время анимации.
Как видно из предыдущих глав, 3DS МАХ обладает широким диапазоном модификаторов объектов с параметрами, поддающимися анимации. Это предоставляет возможность создавать анимации более интуитивным способом по сравнению со старыми технологиями морфинга, порождающими те же анимации. Например, если вы хотели создать трубу, гнущуюся на ветру, то процесс, занимавший несколько целей морфинга, теперь в 3DS МАХ может выполняться за счет применения модификатора Bend и анимации значения угла изгиба. Анимация характеристик материалов объектов в настоящий момент обеспечивается просто изменением значений параметров на уровне материала без привлечения целей морфинга. Здесь перечислена лишь малая толика того, что можно оживить в 3DS МАХ.
Хотя стандартные виды сцены будут показывать результаты анимации, часто требуется видеть сами данные анимации. Например, может возникнуть желание увидеть, в какое время были созданы ключи для параметра, и либо изменить время, ассоциированное с ключом, либо отредактировать данные, хранящиеся в ключе. 3DS МАХ обеспечивает средство просмотра данных анимации под названием Track View (см. рис. 23.1). Track View показывает иерархический список всех оживляемых элементов на сцене - объектов, модификаторов объектов, источников света, камер, эффектов среды и материалов. Для каждого из этих элементов показаны параметры анимации и ассоциированные ключи. Ключи можно перемещать во времени или копировать в другие временные отметки или изменять значения, соответствующие ключам.
СОВЕТ
Использование ключей для указания данных анимации в конкретное время отражает традиционную для аниматоров практику. Главный аниматор создает ключевые кадры, показывающие сцену в критические моменты. Затем ассистирующие аниматоры создают промежуточные кадры (tween), расположенные между ключевыми. Промежуточные кадры определяют, как должен изменяться объект на сцене, чтобы отражать начальную и конечную позиции и внешний вид. В 3DS МАХ указываются ключи для объектов в конкретных кадрах и 3DS МАХ создает заполняющие позиции или внешний вид объектов.
По причине существования множества выходных форматов анимации (фильм, видео и пр.), 3DS МАХ обеспечивает несколько опций для выбора частоты кадров и способа отображения времени. Конфигурация времени указывается в диалоге Configuration (см. рис. 23.2). Данный диалог доступен при нажатии Time Configuration или через нажатие правой кнопки мыши на любой из кнопок воспроизведения.
3DS МАХ предоставляет возможность определения частоты кадров на основе выходного формата. Частота кадров по умолчанию соответствует NTSC-видео и равна 30 кадрам в секунду (frame per second - fps). Однако можно выбрать PAL с 25 fps, фильм с 24 fps или даже определить собственную частоту кадров. Отображение времени может быть стандартным Frames или другим, подобным коду времени SMPTE, Frames:Ticks или Minutes:Seconds:Ticks (тики составляют 1/4800 секунды). Time Slider и поле текущего времени внизу отображения 3DS МАХ показывают время анимации в любом выбранном формате.
ПРИМЕЧАНИЕ
3DS МАХ обеспечивает возможность изменения как частоты кадров, так и отображения времени в любой желаемый момент. Анимация при этом остается неизменной. Это удобно, поскольку можно создавать анимации для частоты кадров 30 fps, а смотреть на скорости Film или какой-либо другой, с целью сравнения, как анимация будет удовлетворять определенным постпроцессным модификациям. Например, если создана одноминутная анимация для видео, которое работает с частотой 30 fps, а затем появилась информация, что анимация будет работать как фильм (24 fps), то все что нужно сделать в 3DS МАХ - это изменить частоту кадров; при этом система автоматически перемасштабирует время, изменяя и, может быть, сокращая определенные ключи.
СОВЕТ
В диалоге Time Configuration указывается начало и конец времени анимации. Реально время начала и время завершения анимации указывает активный сегмент времени. Установка активного сегмента времени предоставляет возможность просмотреть только часть анимации, воспроизвести только указанные кадры и ограничить диапазон экранных ключевых кадров определенным временем. Изменение начального или конечного времени не оказывает влияние на время или значение предварительно созданных ключей.
ПРИМЕЧАНИЕ
Выбрав кнопку Re-scale Time в диалоге Time Configuration, вы перемасштабируете время, ассоциирующееся с ключами в активном сегменте времени. В диалоге Re-scale Time (см. рис. 23.3) можно изменять время начала, время завершения и длину нового активного сегмента времени. Время любых ключей, расположенных внутри исходного активного сегмента времени, масштабируется к новому активному сегменту времени. При изменении начального кадра любые ключи, появившиеся перед начальным кадром, перемещаются во времени на ту же самую величину, на которую изменяется начальный кадр. Если изменяется конечный кадр, любые ключи после конечного кадра перемещаются во времени на ту же самую величину, что и конечный кадр.
3DS МАХ предлагает несколько способов перемещения во времени и просмотра анимации. Примечательно то, что можно воспроизводить анимации в одном или нескольких видовых окнах 3DS МАХ в реальном времени и тем самым сокращать необходимость создания AVI-файлов предварительного просмотра для контроля продвижения работы. Очевидно возникнут персональные предпочтения при воспроизведении, но знайте, что в применении методов воспроизведения 3DS МАХ есть большие преимущества.
Диалог Time Configuration предоставляет возможность указать, будет ли воспроизведение проходить в реальном времени и будет ли задействовано только Active Viewport. Кроме того, 3DS МАХ предоставляет возможность воспроизвести только отдельные из видовых окон, например только Camera и Тор. Для этого другие видовые окна отключаются. Отключить видовое окно можно путем щелчка правой кнопкой на заголовке видового окна и выбора Disable View из всплывающего меню или использования "горячей" клавиши D. Неактивные видовые окна не показывают анимацию во время воспроизведения сцены.
ПРИМЕЧАНИЕ
Помимо способности проигрывать анимацию всех объектов сцены 3DS МАХ позволяет проиграть анимацию только выделенных объектов. Подобный метод воспроизведения можно задействовать, щелкнув и удержав Play Animation и затем выделив пиктограмму Play Selected из выпадающего списка. Данный механизм предельно эффективен при работе с насыщенной геометрией. Он позволяет увеличить скорость отображения. Например, если вы работаете над сценой, содержащей персонажи, строения и автомобили, можно выделить набор оживляемых объектов, анимацию которых требуется предварительно просмотреть, а также оставить на экране все остальные объекты. При воспроизведении анимации 3DS МАХ временно спрячет все невыделенные объекты, оставив на экране только выделенные и неоживляемые. Это можно считать динамической функцией сокрытия для индивидуальных видовых окон.
3DS МАХ оснащен несколькими опциями для прохода по времени. Используя кнопки кадровой индексации из области Play Control, можно индексировать начало или конец активного сегмента или индексировать вперед и назад по одному кадру. Гораздо более мощным механизмом является индексация во времени ключевых кадров и анализ анимации, задаваемой ключами трансформации. Для активизации индекса Key Step следует выделить кнопку Key Mode Toggle (переключатель режима ключей). Обратите внимание на то, что при выделенном режиме Key Step изменяются графические глифы для кнопок Previous и Next Frame. Щелчок на данных кнопках переносит на предыдущий или последующий ключ трансформации. Выбирая различные опции Key Steps в диалоге Time Configuration, можно управлять тем, какие ключи трансформации используются для прохода по анимации. Данные опции обеспечивают возможность задания, будут ли применяться ключи трансформации только для выбранных объектов или для всех объектов. Кроме того в диалоге можно указать типы трансформаций.
Как описывалось ранее, Track View показывает подвергающиеся анимации параметры, ассоциированные с каждым объектом, и ключи, созданные для каждого из параметров. Track View стартует из выпадающего диалога Edit или из линейки инструментов кнопкой, на которой изображены желтые коробки, висящие па стебле. Типичный Track View показан на рисунке 23.4. Здесь слева представлен иерархический список оживляемых элементов вместе с их параметрами. Справа в виде точек на дорожках параметров представлены ключи. Кроме того, справа на дорожках элементов показаны отметки диапазона. Отметки диапазона проходят по диапазону времени, для которого присутствуют ключи параметров, подчиненные данному элементу. Глядя на рисунок 23.4, можно сказать, что элемент BoxOl имеет по меньшей мере один параметр, у которого есть ключ на кадре 0, и параметр, у которого имеется ключ на кадре 100. Точно так же можно сказать, что по меньшей мере один параметр, подчиняющийся элементу SphereOl, имеет ключи, представленные на кадрах О и 23. Трансформация BoxOl была расширена и легко заметить, что ключи присутствуют па треке позиции в кадрах 0 и 100. Track View имеет пять разных режимов редактирования анимации:
Track View, показанный на рисунке 23.4, находится в режиме Edit Keys. Каждый из режимов будет обсуждаться в последующих разделах главы. Но прежде всего мы рассмотрим структуру иерархического списка и элементов управления, общих для каждого из режимов редактирования.
Иерархический список представляет структурированный вид элементов на сцене. Высшие уровни иерархии соответствуют главным группировкам в 3DS МАХ звуков, среды, материалов и объектов. Нижние уровни иерархии проходят по деталям сцены, таким как отдельные объекты, базовые объекты и модификаторы, примененные к базовым объектам, и параметры, ассоциирующиеся с базовым объектом и его модификато-рами. Самый нижний уровень иерархии содержит оживляемые параметры, ассоциированные со сценой.
Каждый уровень иерархии можно расширить или свернуть для отображения большего или меньшего количества деталей. Для редактирования анимационных ключей параметра ветви дерева расширяются до отображения данного параметра.
Корнем иерархического списка является мир (World). Подчиняющиеся миру элементы - это Sound (звук), Environment (среда), MEdit Materials (материалы из редактора материалов). Scene Materials (материалы сцены) и Objects (объекты) (см. рис. 23.5). Линейка диапазона для мира отражает оживляемый диапазон для всех подчиненных элементов за исключением Objects.
Ветвь Sound хранит данные, связанные со звуком. Доступны два типа звуков: метроном и аудиофайл. Доступ к опциям звука можно получить, нажав на любом элементе в ветви звука для выбора элемента и затем либо щелкнув правой кнопкой мыши на данном элементе и выбрав из всплывающего меню Properties, либо нажав кнопку Properties на линейке инструментов. Либо же можно просто щелкнуть правой кнопкой мыши на одном из элементов. Любое из этих действий отображает диалог Sound Options (см. рис. 23.6).
В качестве звуковых файлов 3DS МАХ поддерживает WAV-файлы стандартного типа. Когда визуализируется формат файла AVI, звук WAV размещается в файле AVI. В Track View должны добавляться все звуки. Если выбранным звуковым фоном является AVI-файл со звуком, данный звук будет игнорироваться.
Для выбора звукового файла щелкните на Choose Sound (выбрать звук) и выделите звуковой файл в появившемся броузере файлов. Установите опцию Active. Для удаления активного звука нажмите Remove Sound (удалить звук). Для перезагрузки звука после его редактирования во внешнем приложении нажмите Reload Sound (перезагрузить звук). Для поддержки связи со звуковым файлом, но не проигрывании его во время воспроизведения, отключите опцию Active. Имеется возможность слышать звуковой файл при воспроизведении AVI-файла, созданного с активным звуковым файлом во время воспроизведения в видовом окне со включенным Real Time и во время транспортирования ползунка времени вперед. Громкость звукового файла показывается в Track View на звуковой дорожке (см. рис. 23.7). Для прослушивания звука требуется звуковая плата.
Метроном порождает мерные двухтональные сигналы. Частота сигналов указывается в поле Beats per minute (биений в минуту). Для поддержки установки Metronome в обеззвученном режиме отключите опцию Active. Метроном можно услышать во время воспроизведения в видовом окне со включенной опцией Real Time. Метроном использует динамик компьютера.
Ветвь Environment показывает оживляемые элементы, ассоциированные со средой. Сюда входит фоновый свет, фоновый цвет и любые эффекты среды, определяемые в диалоге Rendering Environment (среда визуализации).
Ветвь MEdit показывает поддающиеся анимации параметры, связанные с материалами, которые в настоящее время определены в шести ячейках Material Editor. Ветвь Scene Materials показывает то же самое для всех материалов, назначенных сцене в текущий момент. Один материал в иерархии может показываться несколько раз - как материал MEdit, как материал сцены и ниже объектов, которым он назначен.
Ветвь Objects показывает оживляемые параметры, ассоциированные с определенными на сцене объектами. Иерархия показанных объектов определяется тем, какие объекты с какими связаны, и подобна отображаемому в Selected by Name (выбрано по имени) со включенной опцией Display Subtree (отобразить поддерево).
Расширение ветви объекта показано на рисунке 23.8. Если на объекте не размещалось никаких модифи-каторов, ветвь Modified Object заменяется ветвью Object.
Несколько команд Track View используется для управления отображением иерархического списка или применяется к элементам иерархического списка. Такими командами (см. рис. 23.9) являются:
Команда Assign Controller применяется для назначения элементу нового контроллера. Контроллеры и использование данной команды описано в главе 24, "Контроллеры и выражения".
Команда Parameter Curve Out-of-Range управляет тем, как контроллер выводит значения для времени за пределами определенного диапазона. Действие опций команды лучше всего видно в режиме Function Curve. Данная команда описана в разделе "Работа с кривыми функций" позже в главе.
Остальные команды описаны в следующих разделах.
Как видно из рисунка 23.8, полностью расширенный иерархический список может оказаться достаточно большим. 3DS МАХ обеспечивает набор выбираемых фильтров, которые помогают управлять размером отображения. Для установки фильтров войдите в диалог Filters, нажав на кнопку Filters (см. рис. 23.10). В разделе Show данного диалога можно выбрать, должны ли показываться указанные типы дорожек. Список фильтров самоочевиден за исключением опций Controller Types, Note Track и Visibility Tracks.
Контроллеры используются для хранения данных анимации (данных ключей) для каждой дорожки и для интерполяции значений, основываясь на данных между ключами. В 3DS МАХ доступно множество различных контроллеров, часть из которых даже не базируется на ключах. Полное описание контроллеров приведено в главе 24, "Контроллеры и выражения". Если данная опция включена, тип контроллера ассоциируется с каждым параметром, показанным вслед за названием параметра.
Note Tracks и Visibility Tracks являются дорожками, которые можно добавить к кажцому объекту. Фильтры обсуждаются в разделах "Note Traks" и "Visibility Tracks" позже в этой главе.
Раздел Show Only диалога Filters содержит три опции. Если включена опция Animated Tracks, показывается иерархия только оживляемых параметров. Рисунок 23.11 демонстрирует тот же иерархический список, который изображен на рисунке 23.8, но при включенной опции Animated Tracks. Как видно из рисунка, длина списка значительно уменьшилась, но остается ясным, какие параметры оживляются и как они связаны с объектом. Если вы вошли в Track View для настройки уже определенной анимации, обязательно выберите данную опцию, которая значительно упростит иерархический список.
Если выбрана опция Selected Objects (выбранные объекты), показываются параметры только выбранных объектов сцены. Данная опция используется вместе с опцией Animated Tracks для показа только оживляемых дорожек выбранных объектов.
Опция Selected Tracks скрывает все дорожки, которые не были выбраны перед включением данной опции. Имена всех дорожек в иерархическом списке выровнены слева, так что не всегда очевидно, для чего используется тот или иной параметр. Для изменения выборки показанных дорожек следует отключить данную опцию, выделить новые дорожки и вновь включить опцию.
Раздел Function Curve Display диалога Filters используется для управления цветом кривых функций, показываемых в режиме Function Curve и описанных в разделе "Работа с кривыми функций" позже в настоящей главе.
Используя кнопки Copy и Paste, находящиеся на линейке инструментов Track View, можно копировать элемент в иерархическом списке в один или более элементов того же типа. Копировать можно хотя и не все объекты, однако большинство. Обратитесь к главе 29 в 3D Studio MAX User's Guide, в которой приводится описание типов доступных для копирования элементов. Можно ли копировать элемент или нет определить проще всего, выбрав его и посмотрев, обесцвечена ли кнопка Copy. Если нет, элемент можно скопировать. Щелкните на кнопке Copy и выбранный элемент попадет в буфер.
Для вставки элемента из буфера выберите один или несколько элементов одного типа и щелкните на кнопке Paste. Если один или несколько выбранных элементов не принадлежат к одному типу, кнопка Paste будет обесцвечена.
После нажатия Paste возникает диалог Paste (см. рис. 23.12). Элемент может вставляться в виде копии или экземпляра. Как и в случае клонирования объектов в видовом окне, копия независима от оригинала. Если производятся изменения в чем-то одном, другое не затрагивается. Экземпляр же зависим от оригинала, то есть, если выполнить изменение в одном, другой изменяется сходным образом. Опция Replace All Instances (заменить все экземпляры) говорит 3DS МАХ о том, что следует делать, если элемент уже был вставлен как экземпляр. Если данная опция включена, все элементы, совместно использующие данный экземпляр, будут продолжать его использование и ссылаться на то, что вставлено. Если данная опция не включена, до выполнения вставки выбранные элементы будут сделаны уникальными (независимыми).
СОВЕТ
Copy и Paste также являются очень удобным способом выполнения того, что другим путем сделать в 3DS МАХ нельзя. Для создания следующего по пути гизмо, скопируйте контроллер пути из настоящего объекта в подобъект гизмо. Данный процесс описывается более подробно в главе 24, "Контроллеры и выражения".
Используйте кнопку Make Unique для преобразования одного или нескольких экземпляров переменных в уникальные элементы. Данные элементы могут быть экземплярами контроллеров, экземплярами объектов или ссылками на объект. Для того, чтобы сделать набор элементов уникальным, выберите данные элементы и щелкните на кнопке Make Unique. Все экземплярные элементы в наборе станут независимыми от других элементов. Уникальные элементы в наборе не затрагиваются.
3D Studio MAX предоставляет возможность запоминания примечаний для каждой дорожки в Track View. Для создания дорожки примечаний выберите элемент и щелкните на Add Note Track. Дорожка примечаний создается в виде ветви выбранного элемента. В случае выбора более одного элемента для каждого из них будет создана индивидуальная дорожка примечаний. Если для элемента ветвь уже существует, дорожка примечаний добавляется к этой ветви.
Для создания примечаний следует находиться в режиме Edit Key. Щелкните на Add Key и на дорожке примечаний в необходимое время. В результате будет создан ключ Note. Щелчок правой кнопкой мыши на ключе Note вызывает диалог Notes (см. рис. 23.13).
Номер примечания показан в верхнем левом углу диалога. Нажимая клавиши со стрелками можно перемещаться между примечаниями на данной дорожке. В середине верхней части отображается время, соответствующее данному примечанию. Пользователь может настраивать время. Вверху справа расположена опция Lock Key. Если данная опция установлена, примечание фиксируется на указанном времени и не будет перемещаться посредством различных команд Track View. Наконец, в окне текста печатается текст примечания. В данном окне доступны все стандартные операции копирования и вставки, доступные в Microsoft Windows. Первая строка текста из данного окна показывается вслед за ключом Note в Track View.
Для удаления дорожки Note, ее следует выбрать и щелкнуть на Delete Note Track (удалить дорожку примечаний). Для удаления только примечания выберите ключ Note и нажмите Delete Keys.
ПРЕДУПРЕЖДЕНИЕ
Дорожки видимости, подобно скрытым (Hide) дорожкам в 3D Studio R4, можно применять к отдельным объектам. Для создания дорожек Visibility следует находиться в режиме Edit Key. Выберите объект, к которому хотите добавить дорожки Visibility, и нажмите Add Visibility track. Дорожки Visibility создаются как ветвь выбранного элемента (элементов).
СОВЕТ
К сожалению, для дорожек Visibility не предусмотрен специальный контроллер. Единственный способ определения видимости или невидимости объекта в заданный момент времени заключается в создании ключа в данное время и редактирование его значения в Key Info. (Доступ к диалогу Key Info описан в разделе "Работа с ключами и диапазонами".) Если значение ключа меньше или равно нулю, объект в данное время невидим. Если значение ключа больше 0, объект видим. Поскольку по умолчанию для параметра Visibility используется контроллер Безье-сплайна, последний интерполирует значения между последовательными ключами и заставляет объект становиться видимым или невидимым преждевременно. Для предотвращения подобного эффекта следует установить тангенциальный тип In и Out для каждого из ключей в тангенциальный тип Step в рамках диалога Key Info. Щелкните и удержите кнопку тангенциального типа In и Out в диалоге Key Info и выберите тангенциальный тип Step, как показано на рисунке 23.14.
В окне редактирования Track View ключи отображаются на дорожках параметров в виде точек, а линии диапазонов показаны на дорожках элементов. Линии диапазонов проходят по всему диапазону времени, для которого существуют ключи параметров, подчиняющихся данному элементу. Для создания и редактирования ключей предназначен режим Edit Key. Режимы Edit Key и Edit Ranges используются для настройки времени, ассоциированного с ключами. Режим Position Ranges применяется для настройки диапазонов без настройки ключей, ассоциированных с диапазонами.
Команды Track View, которые воздействуют на окно Edit, доступны во всех режимах редактирования Track View. Командами являются Snap Frame и Lock Selection. Рисунок 23.15 показывает кнопки данных команд.
Обычно при работе с ключами требуется, чтобы они оставались точно в кадре. Однако, если вы имеете дело с детальной анимацией, может возникнуть необходимость поместить ключи в подкадры. При нажатой Snap Frame все создаваемые или модифицируемые ключи вынуждаются показываться у ближайшего номера кадра. Если Snap Frame выключена, можно создать или модифицировать ключи на уровне Tick (помните, что в секунде 4800 тиков).
ПРЕДУПРЕЖДЕНИЕ
После выбора одного или нескольких ключей нетрудно случайно отменить выборку, щелкнув в окне Edit. Для блокировки или разблокировки выборок ключей щелкните на Lock Selection.
Для создания ключей в Track View следует находиться в режиме Key Edit. Для создания ключа расширьте иерархию так, чтобы отображать параметр, для которого необходимо создать ключ, щелкните на Add Keys и на дорожке параметра в требуемый момент времени.
Ключи трансформации объектов (рабположения, вращения и масштабирования) можно также создавать в панели Motion в рамках ветви Parameters (см. рис. 23.17). Для создания ключа в панели команд Motion выберите объект и установите Time Slider (ползунок времени) на подходящий кадр. В свитке PRS Parameters щелкните на соответствующей кнопке в разделе Create Key. Обратите внимание на то, что кнопка Animate при создании ключа необязательно должна быть включенной.
Для удаления кгпочсй в Track View следует находиться в режиме Edit Key. Расширьте иерархию так, чтобы отображать параметр, ключ которого необходимо удалить, выберите ключ (ключи) и щелкните на кнопке Delete Keys.
Ключи трансформации объекта (расположение, вращение и масштабирование) можно удалять и в панели Motion в пределах ветви Parameters. Для удаления ключа в панели команд Motion выберите объект и установите Time Slider на соответствующем кадре. В свитке PRS Parameters щелкните на подходящей кнопке в разделе Delete Key. Обратите внимание на то, что имеется возможность перемещения между ключами, выделяя тип трансформации ключа, который необходимо удалить, в нижней части свитка PRS Parameters и щелкая на кнопках со стрелками рядом с номером ключа в верхней части свитка Key Info (Basic).
Для редактирования значений ключа в Track View выберите ключ и щелкните на Properties или просто щелкните на ключе правой кнопкой мыши. Для данного ключа появится диалог Key Info. Точный формат диалога Key Info зависит от типа контроллера, присвоенного параметру, и количества значений, возвращенных контроллером. Вместе с 3DS МАХ распространяются два типа ключ-базированных контроллеров. Это контроллер Tension/Continuity/Bias (TCB) и контроллер Безье. Разница между двумя контроллерами заключается в способе интерполяции значений между ключами. Данные контроллеры и методы настройки их параметров интерполяции обсуждаются в главе 24, "Контроллеры и выражения".
Обычно контроллеры возвращают одно, три или четыре значения. Контроллеры, возвращающие одно значение, используются для параметров создания объекта, настройки параметров для модификаторов и единичного поля параметров для материалов. Контроллеры, которые возвращают три значения, обычно применяются для позиционирования и масштабирования объектов и для цветов. Контроллеры, возвращающие четыре значения, обычно используются для вращения объектов. Рисунок 23.18 показывает диалоги Key Info для контроллера Безье, возвращающего три значения и контроллера TCB, возвращающего четыре значения.
Номер ключа отображается в верхней левой части диалога. Нажимая на кнопки со стрелками, можно перемещаться между ключами данной дорожки. Поле Time показывает время, в которое ключ был размещен. Настроить время можно путем ввода нового значения или выполнения щелчка на счетчике. Кнопка L блокирует ключ и указанное время. Если данная опция установлена, ключ фиксируется на указанном времени и не будет сдвигаться при перемещениях, сдвигах и командах масштабирования в Track View.
Следующими в диалоге идут значения для ключей или ключевые значения. И здесь можно осуществить настройку значения, вводя новые или щелкая на счетчике. Остальные поля используются для управления параметрами интерполяции для данного ключа и описываются в главе 24.
Также можно редактировать ключи трансформации объекта (расположение, вращение и масштабирование) в ветви Parameters панели Motion. Для редактирования ключа в панели команд Motion выберите объект и установите Time Slider на соответствующий кадр. В свитке PRS Parameter выберите требуемый для редактирования тип трансформации ключа. После этого значения ключа можно настроить в свитке Key Info (Basic).
Хотя вы и можете настроить хронометрирование ключей в Track View и на панели Motion путем редактирования значения времени ключа описанным выше способом, но здесь вы ограничены работой только с одним ключом одновременно. Часто возникает необходимость настроить время нескольких ключей или настроить время одних ключей относительно других.
В режиме Edit Key в Track View 3DS МАХ поддерживает еще четыре мощных инструмента для настройки времени ключей:
СОВЕТ
Align Keys работает с текущей выборкой ключей. Align Keys перемещает ключи так, что время первого выбранного ключа на каждой дорожке становится временем, указанным Time Slider (и показанным в Track View вертикальной линией). Любой выбранный ключ, который не является первым выбранным на дорожке, перемещается на такую же величину времени, что и первый выбранный ключ. Время, связанное с невыбранными ключами, не изменяется.
Move Keys просто перемещает выбранный набор ключей во времени. Перемещаются только выбранные ключи. Время, связанное с невыбранными ключами, не изменяется. Ключи можно выбирать перед или после того, как выполнен щелчок на Move Keys. Вы можете клонировать и перемещать набор ключей, удерживая клавишу Shift.
Slide Keys перемещает выбранный набор ключей во времени, но также и перемещает ключи, которые имеются перед или после смещаемых. Если выбранные ключи перемещаются вправо (время возрастает), ключи справа от выбранных перемещаются вправо на такую же величину. Подобным же образом, если выбранные ключи перемещаются влево (время уменьшается), ключи слева от выбранных перемещаются влево на ту же самую величину. Временная взаимосвязь ключей внутри выбранного набора не изменяется. Сдвигаемые ключи можно выбрать перед или после щелчка на кнопке Slide Keys.
Scale Keys масштабирует время, связанное с выбранными ключами, с учетом текущего времени. Выбранные ключи пропорционально смещаются как от текущего времени, так и к нему (обозначенному вертикальной линией в окне редактирования). Для этого выбранный ключ транспортируется от или к текущему времени. Время, связанное с невыбранными ключами, не изменяется. Ключи для масштабирования можно выбрать перед или после щелчка на Scale Keys. Вы можете клонировать или масштабировать набор ключей посредством клавиши Shift.
В дополнение к указанным методам настройки хронометрирования ключей можно настроить отсчет времени, управляя линейками диапазонов (Range Bars). Если щелкнуть и транспортировать линейку диапазона элемента, линейки диапазонов и ключи всех подчиненных элементов также будут двигаться. Если щелкнуть и транспортировать конечную точку линейки диапазона элемента, линейки диапазонов всех подчиненных элементов будут масштабироваться в направлении, противоположном конечной точки. Если, например, транспортировать конечную точку линейки диапазона World, будет масштабироваться вся анимация.
Используя режим Edit Ranges (см. рис. 23.19), можно отобразить линейку диапазона для оживляемой дорожки, а не отображать ключи на данной дорожке. Настройка линейки диапазона оживляемой дорожки как было описано выше будет перемещать или масштабировать только ключи данной дорожки.
Если имеются связанные объекты, доступна опция Modify Subtree, предоставляющая возможность настройки диапазона подчиненных объектов в момент настройки диапазона родительского объекта. Данная опция доступна в режиме Edit Ranges. Если включить Modify Subtree щелкнув на ней, линейка диапазона родительского объекта увеличится так, чтобы покрыть оживляемый диапазон данного объекта и всех подчиненных объектов. Перемещение или масштабирование линейки диапазона родителя будет оказывать влияние на ключи всех подчиненных объектов.
В данном разделе освещаются технические приемы редактирования блоков времени в 3DS МАХ с применением режима Edit Time в Track View. Рисунок 23.20 показывает командные кнопки для режима Edit Time. Хотя временем манипулируют независимо от ключей анимации, главной целью режима Edit Time является изменение времени ключей. При переходе в режим Edit Time окно редактирования Track View все еще показывает ключи и диапазоны, но они обесцвечены и служат только для справок.
Первый шаг при переходе в Edit Time заключается в выборе дорожек, для которых необходимо редактировать время. Выберите один или несколько элементов в иерархическом списке, используя стандартные инструменты выбора.
ПРИМЕЧАНИЕ
Все инструменты в Edit Time - за исключением Insert Time (вставить время) - требуют, чтобы блок времени был определен. Блок времени определяется путем щелчка на Select Time или Scale Time и выполнения транспортировки в окне редактирования. Блок времени показывается как жирная черная линия в выбранной дорожке. Альтернативно можно ввести начало и конец блока в редактируемые поля в нижней части Track View.
Для вставки времени в выбранные дорожки щелкните на Insert Time и в пределах любой дорожки транспортируйте от временной точки, где вы хотите вставить время. Если выполняется транспортировка вправо, время будет вставлено в выбранные дорожки. При транспортировке влево в выбранные дорожки будет вставлено негативное время (т.е. время будет удалено). Подобно показанному на рисунке 23.21, желтые вертикальные линии вычерчиваются для отображения экстентов добавленного или удаленного времени, а время, ассоциированное с этими линиями, показывается в полях внизу Track View. Кроме того, в выбранных дорожках рисуются жирные черные линии, отображающие удаленное или вставленное время. Ключи справа от времени, ассоциированного с начальным щелчком, перемещаются так, чтобы отражать изменение во времени.
Для масштабирования блока времени в выбранных дорожках щелкните на Scale Time и транспортируйте отмеченный блок времени. Транспортируйте вправо для увеличения масштаба времени и влево для уменьшения. Время масштабируется с левой стороны блока времени.
Reverse Time используется для создания зеркального образа ключей в блоке времени. Реверсируется и порядок ключей, и время между ключами. Рисунок 23.22 показывает эффект Reverse Time для одной дорожки.
Ключи в конечных точках реверсируемого диапазона зависят от состояния кнопок Exclude Left End Point (исключить левую конечную точку) и Exclude Right End Point (исключить правую конечную точку) на линейке инструментов Track View. Если кнопка нажата, ключ, находящийся в начале времени, не отражается и остается на месте. Точно так же Exclude Left End Point исключает ключ в конце времени.
Delete Times удаляет блок времени и все ключи в нем. Ключи справа от конечного времени перемещаются влево на величину удаленного времени. При нажатых Exclude Left End Point и Exclude Right End Point ключи соответственно в начальной или конечной точках удаляться не будут. Если нажаты и Exclude Left End Point, и Exclude Right End Point и ключи существуют в начале и в конце времени, один из ключей будет удален. Если в режиме Edit Key не был удален ни один из ключей, удаляется ключ в конце времени. Если в режиме Edit Key были выбраны оба ключа, удаляется ключ в начале времени. В Противном случае будет удален невыбранный ключ.
Time Clipboard применяется для запоминания блока времени и ассоциированных с ним ключей. Пользователь может вырезать или копировать блоки времени в Time Clipboard и затем вставлять их оттуда. В отличие от копирования ключей в режиме Edit Key, блоки времени и ключи можно вставлять в другие оживляемые дорожки.
Вотличис от других команд Edit Time, для Time Clipboard можно выбирать в дереве иерархии только те дорожки, с которыми можно выполнить анимацию. Если выбираются неоживляемые дорожки, команды Time Clipboard обесцвечиваются.
Для копирования блока времени в Time Clipboard отметьте блок времени и щелкните на Copy Track или Cut Track. Если нажимается Copy Track, исходный блок и его ключи не затрагиваются. Если нажата Cut Track, блок времени и его ключи удаляются. Перед выполнением Cut Track можно нажать кнопки Exclude Left End Point и Exclude Right End Point. Если ключи существуют и в начальной, и в конечной точках, используется та же логика, что и для Delete Time.
Для вставки из Time Clipboard следует выбрать целевые дорожки, которые примут вставку. Самый простой случай - когда произведено копирование и выполняется вставка в одну дорожку. Здесь тип контроллера принимающей дорожки должен совпадать с типом контроллера исходной дорожки (типы контроллеров обсуждаются в главе 24). Для отображения типов контроллеров щелкните на Filters и включите Show Controller Types (показать типы контроллеров). В результате рядом с каждым элементом в иерархическом списке будет показан тип контроллера. Внутри иерархии объектов можно безопасно считать, что нетрансформируемые связанные элементы используют плавающий контроллер Безье (Bezier Float controller), даже если для элемента не показано никакого контроллера. Рисунок 23.23 демонстрирует иерархический список со включенным Show Controller Types. Для назначения контроллера элементу, у которого контроллера нет, выберите элемент, щелкните на Assign Controller и выберите контроллер, совпадающий с контроллером исходного элемента в диалоге Replace Controller (см. рис. 23.24). Если диалог Replace Controller не показывает тот же тип контроллера, как и у исходного элемента, не будет возможности вклеивать из данного источника в данную цель.
При вставке из нескольких элементов в несколько элементов или из одного элемента в несколько элементов каждая целевая дорожка должна иметь такой же тип контроллера, что и соответствующая исходная дорожка. Если совпадет только контроллер первой дорожки или несколько первых контроллеров, 3DS МАХ выполнит операцию вставки до первого несовпадающего контроллера.
После выбора целевых дорожек для приема вставки необходимо указать, где во времени выполнять вставку. Здесь доступны две возможности: выбрать одну точку во времени или очертить диапазон времени. В случае указания одной точки во времени она станет точкой вставки. Блок времени из Time Clipboard будет вставлен в эту точку и любые исходные ключи справа от точки вставки сдвинутся вправо на длину вставленного времени.
Если указан диапазон времени для вставки, то прежде чем вставка выполнится, данный диапазон времени будет удален. Любые исходные ключи справа от конечной точки перемещаются вправо на длину вставляемого времени минус длина времени специфицированного диапазона.
После выбора элементов для приема вставки и времени для размещения нажмите Paste Track. На экране появится диалог Paste Track (см. рис. 23.25) в котором есть опции для абсолютной или относительной вклейки блока. Данные опции относятся к обработке ключевых значений в противоположность времени.
Если выбрана опция Paste Absolute (вклеить абсолютно), то значения, ассоциированные с вклеиваемыми ключами, имеют в точности те же значения, что и исходные ключи. Если выбрана опция Paste Relative (вклеить относительно), значение элемента во время вставки добавляется к ключевым значениям всех вставляемых ключей. В качестве примера предположим, что копируется дорожка высоты BoxOl в Вох02. Высота BoxOl в точке вставки равна 100, а высота Вох02 равна 50. Если выбрана Paste Absolute, высота Вох02 будет составлять 100. Если выбрана Paste Relative, высота Вох02 будет равна 150.
Команда Reducing Keys действует на ключи так же, как модификатор Optimize действует на геометрию - сокращает сложность, поддерживая указанный уровень детализации. Для каждой выбранной дорожки Reduce Keys анализирует ключи в блоке времени и создает новый уменьшенный набор ключей, обеспечивающих практически такой же результат, что и исходные. Reduce Keys удобен для постпроцессорной обработки движений инверсной кинематики, а также для ключевых кадров, порожденных системами захвата движений (Motion Capture Systems).
С целью сокращения ключей для блока времени на выбранных дорожках щелкните на Reduce Keys. На экране возникает диалог Reduce Keys (см. рис. 23.26), предоставляющий возможность выбрать значение Threshold (порог). Значение Threshold указывает, насколько могут различаться исходное значение каждого кадра и значение кадра с сокращенным набором ключей. Единицей измерения служит текущая единица для длины и градусы для углов. Каждая выбранная дорожка оценивается независимо от других выбранных дорожек.
Следующим режимом редактирования в Track View является режим Function Curve. В других режимах показывается положение ключей и диапазонов с учетом времени, но не указывается действительных используемых значений анимации. Режим Function Curve для выделенных оживляемых элементов отображает и значения анимации в ключах, и интерполированные значения между ключами. В режиме Function Curve при изменении значений ключей эффект изменения показывается на выводе контроллера. Подобная работа предоставляет возможность тонко настраивать значения анимации, подгоняя форму кривых функций во времени. В режиме Function Curves могут отображаться только оживляемые элементы с клгоч-базированными контроллерами.
Для отображения кривой функции для элемента выберите один или несколько элементов и щелкните на Function Curves. Окно редактирования Track View изменится с целью отображения формы вывода контроллера элемента во времени (см. рис. 23.27), и на линейке инструментов Track View появляется новый набор командных кнопок (см. рис. 23.28). Для отображения ключей для кривой щелкните на ней. Значения, ассоциированные с каждым ключом, показываются как вершины кривой, а зеленый треугольник рядом с элементом в иерархии, генерирующем данную кривую, станет подсвеченным. Если данный элемент выводит более одного значения (например, положение, масштаб или цвет), ключевые вершины будут отображены на всех кривых, связанных с данным элементом.
ПРИМЕЧАНИЕ
В описанном ранее диалоге Filters один раздел был посвящен опциям отображения кривой функции. Данные опции управляют тем, показывать ли кривые контроллеров масштаба, вращения или положения и кривые контроллеров цвета. Вращение включается как опция в случае, когда становится доступным трехкомпонентный контроллер вращения.
Для редактирования кривой прежде всего следует выбрать одну или несколько ее вершин. Выбор осуществляется посредством стандартных элементов выбора 3DS МАХ. С целью предотвращения случайной отмены выбора в наборе ключей щелкните на Lock Selection. В случае отображения кривых множества элементов и желании выбрать вершины только некоторых, выберите кривые, с которыми будете работать, и щелкните на Freeze Nonselected Curves. Это предотвратит кривые, которые решено не настраивать, от случайного выбора и модификации.
После этого выбранные вершины можно редактировать по команде Move Keys, масштабировать ключи во времени с использованием Scale Keys по отношению к текущему времени, масштабировать значения, ассоциированные с ключами, по отношению к 0, используя Scale Values, или удалять ключи используя команду Delete Keys. При работе с командами Move Keys или Scale Keys применительно к вершинам, ассоциированные контроллеры которых выводят более одного значения, соответствующие вершины на других кривых контроллера перемещаются во времени вместе с выбранными вершинами. Обратите внимание на то, что команда Move Keys может настраиваться для перемещения только вертикально или горизонтально. Для этого следует щелкнуть и удержать кнопку Move Keys и выбрать подходящую кнопку из подменю Move Keys.
Выбранные ключи можно выровнять относительно текущего времени, щелкнув на Align Keys. Если для элемента выбрано более одного ключа, по текущему времени выравнивается самый левый ключ, а остальные выбранные ключи перемещаются на ту же величину, что и самый левый ключ. Невыделенные ключи не перемещаются.
Значения, ассоциированные с отдельными вершинами, настраиваются посредством Key Info и щелчка правой кнопкой на вершине, выбором вершин и щелчком на Properties или выбором вершин и вводом значений в поля в нижней части Track View.
СОВЕТ
Ключи можно добавить к кривой, щелкнув на Add Keys и на кривой. Ключ добавится в указанную точку со значением ключа, равным текущему значению в данной точке.
В Function Curves можно также настроить параметры интерполяции, ассоциированные с каждой вершиной. Об этом будет рассказано в главе 24.
Кривые Ease и Multiplier применимы к любому оживляемому параметру. Ease Curve влияет на время ключей контроллера, к которому применяется. Multiplier Curve влияет на выводное значение контроллера, к которому применена. Для применения Ease Curve выберите один или несколько оживляемых элементов и щелкните на Apply Ease Сигуе.Для доступа к команде Multiplier Curve щелкните и удержите Apply Ease Curve и затем выберите из подменю Apply Multiplier Curve. Multiplier Curves присваиваются выбранным элементам таким же образом, как и Ease Curves.
Что такое Ease Curves проще понять на примере.
Применение Multiplier Curve приводит к умножению значения контроллера на значение, задаваемое Multiplier Curve.По умолчанию Multiplier Curve является горизонтальной линией со значением 1.0.
Ease Curves и Multiplier Curves можно удалять, выбрав имя кривой в иерархическом списке и щелкнув на Delete Ease/Multiplier Curve. Ease Curves и Multiplier Curves можно отключать путем выбора имени кривой и щелчка на Ease/Multiplier Curve Enable/Disable Toggle.
Как утверждалось ранее, вывод контроллера по умолчанию вне диапазона его ключей заключается в выводе значения ближайшего ключа. Подобное действие называется типом Constant Out-of-Range (ORT). Как к правой, так и к левой сторонам диапазона можно применить шесть ORT. Кроме того, сами диапазоны можно разъединить с базовыми ключами, предоставляя возможность создания петель или повторяющихся циклов. Шесть упомянутых ORT таковы: Constant, Cycle, Loop, Ping Pong, Linear и Relative Repeat.
Для изменения ORT элемента, подвергающегося анимации, выделите элемент в иерархическом списке и щелкните на Parameter Curve Out-of-Range Types. Возникающий диалог Param Curve Out-of-Range Types (см. рис. 23.32) предоставляет возможность применить любой из шести типов к диапазону до или после него. Сплошная часть каждой линии показывает пример кривой функции в диапазоне. Пунктирная часть линии демонстрирует влияние, которое каждый ORT будет оказывать вне диапазона. В предыдущем примере, иллюстрирующем Ease Curves, ORT, который скорее всего применялся к движению коробок, был Linear ORT - коробки продолжали движение по прямой линии. Для мяча, прыгающего вниз по лестнице, можно было бы выполнить анимацию одного прыжка и затем зациклить анимацию, чтобы заставить мяч прыгать вниз оставшуюся часть лестницы. В следующем примере будет сделано именно так.
ПРИМЕЧАНИЕ
Линии диапазона для оживляемого элемента обычно начинаются у первого ключа и завершаются у последнего. 3DS МАХ предоставляет возможность отсоединить диапазон для элемента от его ключей. Подобный прием обеспечивает дополнительную гибкость при создании петель и циклов.
Для отсоединения линии диапазона дорожки выберите дорожку и щелкните на Position Ranges. На линейке инструментов Track View отобразится новый набор командных кнопок (см. рис. 23.34). Отображение дорожек изменится так, чтобы показывать линию диапазона для каждой дорожки, проходящей по ключам дорожки. Можно перемещать линию диапазона, транспортируя ее, или настроить длину линии диапазона, транспортируя конечные точки линии. Рисунок 23.25 показывает пример линии диапазона, отсоединенной от ключей дорожки. Ключи располагаются в кадрах 0, 20 и 80. Линия диапазона проходит по кадрам от 10 до 90. Рисунок 23.36 показывает кривую функции, связанной с данной дорожкой. Тип Out-of- Range, примененный к данной дорожке, - это Constant ORT. В кадрах с 10 по 20 применяются значения, являющиеся интерполяцией значений ключей в кадрах 0 и 20. В кадрах с 0 по 10 значения равны значению в начале диапазона (благодаря использованию Constant ORT). В кадрах с 20 по 80 используются значения, являющиеся интерполяцией значений ключей в кадрах 20 и 80. В кадрах с 90 по 100 значения являются значениями, представляющими конец диапазона (благодаря применению Constant ORT).
Из предыдущего упражнения было видно, что часть Trajectories панели команд Motion можно использовать для отображения в видовых окнах траекторий выбранных объектов. Траектория изображается в виде голубой линии с желтыми точками, обозначающими позиции кадров, и белыми квадратиками, обозначающими позиции ключей.
Работая в Trajectory, можно редактировать ключи кривой траектории, преобразовывать траекторию в сплайн или преобразовывать сплайн в траекторию. Для редактирования ключей траектории щелкните на Sub-Object в ветви Trajectory панели Motion (см. рис. 23.37). Это предоставит возможность выбрать один или несколько ключей, а также перемещать, вращать или масштабировать их.
ПРИМЕЧАНИЕ
Редактируя ключи траектории, легко заметить, что необходимы дополнительные ключи или у вас имеется больше ключей, чем необходимо для получения желаемого движения. Для добавления дополнительных ключей включите Sub-Object Keys, щелкните на Add Keys и затем на траектории в позиции, где необходим дополнительный ключ. Для удаления ключей включите Sub-Object Keys, выделите удаляемые ключи и щелкните на Delete Key.
В ряде случаев для редактирования с применением модификаторов формы проще преобразовать траекторию в сплайн. Сплайн создается экземпляризацией указанного диапазона времени, где каждая вершина сплайна является одним из созданных экземпляров. Взятые экземпляры равномерно распределяются во времени, в противоположность равномерному распределению по длине траектории. Область времени для экзем-пляризации указывается установкой Start Time во время, с которого хотелось начать экземпляризацию, и End Time - во время, когда хотелось ее завершить. Samples устанавливается в количество экземпляров, которые следует взять в указанном диапазоне времени. Щелкните на Convert To для преобразования траектории в сплайн с указанными параметрами.
В качестве траектории для объекта можно использовать отредактированный или новый сплайн. Для выбора сплайна, используемого в качестве траектории, нажмите Convert From. Из сплайна берутся экземпляры и конвертируются в положения ключей. Поля Start Time и End Time указывают диапазон времени, внутри которого разместятся эти ключи. Любые существующие в данном диапазоне ключи будут удалены. Любые ключи, существующие вне диапазона, не принимаются во внимание. Экземпляры берутся так, чтобы ключи, представляющие вершины сплайна, равномерно размещались во времени. Это означает, что взятые экземпляры обязательно равномерно располагаются по длине сплайна. (В главе 24 упражнение "Создание горящего фитиля с использованием оживленной шкалы лофтинга, системы частиц и контроллер пути" описывает, как повторно взять экземпляры сплайна для получения ключей, равномерно распределенных по длине.)