Для управления процессом анимации в большинстве программ используется метод, называемый кадрированием (keyframing), при котором объекты располагаются в основных позициях соответствующих ключевых кадров (keyframe). С помощью построения промежуточных изображений (tweening) компьютер вычисляет местоположение объекта относительно каждого промежуточного кадра, в результате чего объект плавно переходит с одной позиции в другую.
Например, для анимации мяча, упавшего с коробки и отскочившего от пола, можно назначить всего лишь четыре кадра (хотя в большинстве случаев для сглаживания и большего реализма анимации следует добавить дополнительные кадры). В первом кадре мяч шатается на краю коробки; во втором кадре он падает на пол; в третьем — мяч отскакивает от пола до середины высоты падения; в четвертом — остается недвижимым на полу (рис. 9.2).

Рис. 9.2. На анимацию мяча, падающего с коробки, понадобится всего лишь четыре кадра, необходимых для выделения основных движений. Программа использует эти ключевые кадры для синхронизации временного диапазона с последующим перемещением мяча
Из соображении доступности материала, в этой главе описаны лишь базовые понятия кадрирования, а основное внимание уделяется непосредственно перемещению объектов. В целом, кадрирование используется в любом анимированном перемещении, от масштабирования и вращениЩ до изменения уровня освещения и свойств материала.
Определение ключевых кадров
Как уже говорилось ранее, количество кадров, используемое для перемещения мя ча, напрямую зависит от анимационной частоты смены кадров и продолжительности каждого действия. Для создания ключевого кадра необходимо выбрать номер кадра и затем переместить объект в нужном направлении. В некоторых программах больше ничего и не потребуется, в то время как в других придется поработать со специальным режимом анимации, с помощью которого программа запишет движения объекта или определит ключевой кадр после щелчка мышью на специальной кнопке.
Рассмотрим шаг за шагом принцип кадрирования в программах трехмерного моделирования. Для анимации прыгающего мяча сперва необходимо создать модель коробки с мячом, расположенным на ее краю. По умолчанию в большинстве программ работа автоматически начинается с первого кадра анимации — в данном случае, с кадра 1 (рис. 9.3, а). Затем перейдите к кадру 18 и переместите мяч на пол примерно на середину экрана, где и назначьте ключевой кадр (рис. 9.3, б). Соединяющаядва разных местоположения объекта линия называется траекторией движения (motion path) или просто траекторией (trajectory), она представляет собой схематическое обозначение пути перемещения объекта. Перейдите к кадру 24 и переместите мяч вправо и немного вверх, определяя уровень отскока мяча от поверхности, после чего назначьте второй ключевой кадр (рис. 9.3, в). Назначенная точка будет наивысшей позицией мяча перед последующим падением на пол. И наконец, перейдите к финальному кадру анимации (кадру 30) и переместите мяч на его окончательную позицию на полу, назначив последний ключевой кадр (рис. 9.3, г). Вот и все шаги, необходимые для создания очень упрощенной 30-кадровой анимации.

Рис. 9.3. Кадрирование, а) В кадре 1 мяч располагается на краю коробки, б) В кадре 18 мяч перемещается на пол примерно в центре экрана, в) В кадре 24 мяч снова перемещается для имитации отскока, а его путь автоматически изменяется для сглаживания движения, г) Мяч расположен в окончательной позиции кадра 30, и путь его перемещения также автоматически изменен
После щелчка на кнопке воспроизведения для просмотра анимационной последовательности (или вывода визуализированной анимации в файл), программа проверит, действительно ли мяч отображается в указанных позициях кадров 1, 18, 24 и 30, а также подсчитает, каким образом переместить мяч между этими кадрами для максимального сглаживания его перемещения (в этом процессе будут использованы управляющие регуляторы (weighting) для каждого ключевого кадра). Регуляторы имеют непосредственное отношение к пути перемещения объекта и позволяют осуществить его переход в ключевой кадр и из него как можно реалистичнее.
Обратите внимание, что траектория движения при назначении ключевого кадра в кадре 18 является прямой, то есть мяч перемещается с первого во второй ключевой кадр по прямолинейной траектории. Тем не менее, когда в 24 кадре определяется третий ключевой кадр, текущие управляющие регуляторы ключевого кадра пытаются сгладить движение объекта путем изменения его пути с прямой линии на кривую. К сожалению, в данном случае кривая приводит к тому, что мяч не отскакивает, а взлетает от поверхности. В следующем разделе описываются методы изменения управляющих регуляторов, благодаря чему перемещение мяча становиться куда более естественным.
Во многих программах есть полезная функция, позволяющая пользователю непосредственно работать с траекторией движений объекта, котора графически представлена в виде сплайна с небольшими маркерами в ка ждом ключевом кадре. Также существует возможность изменения траектории движения, благодаря чему можно гораздо быстрее определить сложное перемещение объекта и сделать его довольно естественным. Если в используемой программе поддерживается подобная функция, пользователь может "захватить* указателем мыши сплайн в любой точке ключевог кадра и переместить его в другом направлении, во время чего траектория будет изменяться автоматически для отображения производимых изменений. Кроме того, можно добавлять, удалять и настраивать управляющие
ЯЩЙ^Ш1^Ш^®Й??М^^51ШШа8 режиме реального времени.
Управление траекторией перемещения объекта осуществляется не только с помощью кадрирования. Еще один метод заключается в создании линии с помощью инструментария по работе со сплайнами и благодаря последующей настройке объекта (объектов) для перемещения вдоль этой линии. Метод анимации вдоль пути перемещения (path animation) используется для того, чтобы объект точно перемещался по контурам модели (в качестве примера представьте себе тележки, которые ездят по рельсам в аттракционе "Американские горки").
Для управления информацией относительно перемещения объектов в большинстве программ имеется анимационный интерфейс временной шкалы (timeline interface), пример которого показан на рис. 9.4. Горизонтальная ось разделяется на временные единицы и/или номера кадров, в то время как вертикальная ось состоит из иерархического списка объектов и освещения с параметрами анимации. На исходящей от имени параметра линии поставлены маркеры, обозначающие ключевые кадры, а временная шкала внизу отображает расположение ключевых кадров в соответствующих номерах кадров. Интерфейс позволяет добавлять, удалять или перемещать ключевые кадры для настройки временного промежутка, в котором проводится анимация. Для перемещения ключевого кадра достаточно переместить его мышью с помощью ползунка.
Кроме функрйир времени! посредством номеров кадров, вбольшинстве программ поддерживается временной формат SMTPE (Society Щ motion picture and television engineers — общество инженеров кино и теле-
Ведения). Этот формат используется в сфере телевидения и трехмерной графики; он состоит из часов, минут, секунд и кадров. Например, точка в анимационной посп^овательности с обозначением 01:57:31:15 означает 1 час 57 минут 31 секунду и 15 кадров (15 кадров — это полсекунды анима-ции| частота смёвы Кедров кбто 30 кадр/с).

Рнс. Я4. Анимационная временная шкала отображает параметры анимации для каждого объекта. Ключевые кадры с маркерами размещены в соответствии со временем (номером кадра) их создания. Представленная на рисунке временная шкала является усовершенствованным вариантом базовой шкалы основного интерфейса
Анимационные контроллеры ключевых кадров
Для изменения траектории движения объекта возле ключевого кадра используются управляющие регуляторы. В зависимости от программы, может поддерживаться несколько типов регуляторов ключевых кадров, которые также называются анимационными контроллерами (animation controller).
Среди наиболее распространенных контроллеров можно назвать линейный регулятор (linear weighting), при котором объект перемещается из одного ключевого кадра в другой по абсолютно прямой линии, что годится лишь для механического перемещения и едва ли чего-то еще.
Контроллер ТСВ (tension, continuity and bias — напряженность, непрерывность и наклон) является одним из самых популярных управляющих регуляторов. В некоторых программах для отображения влияния параметров настройки на траекторию движения и скорость объекта при входе в ключевой кадр и выходе из него используется именно этот графический метод (рис. 9.5).
♦ Напряженность ТСВ (tension) определяет степень кривизны траектории движения, допускаемой до и после ключевого кадра. Основное значение в 3ds max составляет 25 единиц, при этом осуществляется довольно сглаженное перемещение, за исключением того, что объект имеет тенденцию к снижению скорости на подходе к границе ключевого кадра. Если напряженность минимальна, то путь может быть свободным, с большим углом накло на при входе и выходе из ключевого кадра, а скорость объекта становится более равномерной. При высоком показателе напряженности путь окажется абсолютно линейным между ключевыми кадрами, однако скорость объектасущественно уменьшится.
♦ Непрерывность ТСВ (continuity) характеризует уровень соприкосновения пути с контрольной точкой. При определенном по умолчанию значении 25 получается сглаженная кривая, з то время как при низком показателе непрерывности путь становится более прямолинейным, а расстояние, проходимое объектами за каждую секунду, уравновешивается. Высокий уровень непрерывности приводит к тому, что путь объекта превышает расположение ключевого кадра по обе его стороны, и объект начинает заметно притормаживать около границы ключевого кадра. При таком уровне непрерывности мяч в предыдущем примере столкнулся бы не с плотной поверхностью, а как бы с речным илом, слегка погружаясь в него перед обратным отскоком к точке ключевого кадра. Перед последующим прыжком объект снова слегка погрузился бы в поверхность. ,

Рис. 9.5. Контроллер ТСВ зачастую предстаешь в виде графического диалогового окна, подобного показанному на рисунке. График отображает изменение траектории движения и скорости объекта относительно установленных внизу окна параметров ТСВ
♦ Наклон ТСВ (bias) позволяет определить максимально удаленную точку или вершину кривой линии. При базовом значении наклона вершина оказывается в ключевом кадре (только в том случае, если уровень непрерывности не слишком завышен). Вершина кривой при низком наклоне окажется до ключевого кадра, а при высоком — после него. Высокий уровень наклона мяча, располо женного на поверхности, приведет к тому, что мяч переместится через точку ключевого кадра и врежется в землю, словно метеор, прорывая котлован и затем отскакивая вверх.
♦ Скорость подхода/выхода (ease to/from) характеризует скорость подхода объекта к ключевому кадру и выхода из него. При базовом параметре скорость вхождения в ключевой кадр временно снижается, что напоминает незначительное торможение автомобиля при повороте и последующее ускорение на прямом участке дороги. Настройка скорости подхода позволяет определить степень ускорения или торможения при входе в ключевой кадр, в то время как скорость выхода используется с той же целью уже при выходе из кадра. Эти регуляторы могут оказать несколько странное воздействие на мяч из примера. Если мяч имеет высокую скорость входа при входе в ключевой кадр, то он при подходе к земле существенно снизит скорость, словно попытается избежать неминуемого столкновения.
Хотя управляющие регуляторы при щелчке пользователем на ключевом кадре зачастую выводятся в отдельных диалоговых окнах, наилучшие средства управления обеспечиваются системами, которые позволяют пользователю наблюдать за местоположением ключевого кадра и управляющих регуляторов на функциональной кривой или пути объекта в трехмерном пространстве.

Рис. 9.6. На функциональной кривой перемещение прыгающего мяча отражается вдоль каждой оси. Горизонтальное перемещение (ось X) практически линейное, а вертикальная кривая (ось У) напоминает траекторию перемещения мяча. Кривая оси Т является прямолинейной, поскольку в этом примере вдоль данной оси не происходит никакого движения
Функциональная кривая (functional curve) — это графический метод отображения трансформации объекта. Часто она представлена в виде трех разноцветных сплайнов, каждый из которых относится к отдельной оси (см. рис. 9.6). Если сплайны прямолинейные, значит, на данной оси не происходит никакого движения. В противном случае, уровень кривизны и местоположение сплайнов пока зывают степень изменении на этой оси и то, какой временной точке эти изменения имели место.
Если изменить управляющий регулятор с прямолинейного на регулятор Безье, то станет возможным графическое управление перемещением объекта при его пересечении избранных ключевых кадров. Использование анимационного онлайнового контроллера Безье (Bezier spline weighting) подобно методам модифицирования двухмерных сплайнов, которые известны пользователям, работавшим ранее с чертежными программами или моделированием трехмерных объектов. Метки (handle) контрольных точек позволяют управлять практически теми же параметрами, что и контроллеры ТСВ, однако более удобным способом. Например, для изменения напряженности можно уменьшить метки, снижая эффект их влияния на сплайн. Для настройки непрерывности и наклона разместите метки так, чтобы ослабить кривизну линии, проходящей через ключевой кадр.

Рис. 9.7. При переходе на анимационный регулятор Безье в примере с прыгающим мячом определение меток Безье и настройка функциональных кривых позволяют сделать перемещение мяча более естественным
В примере с прыгающим мячом при переходе на анимационный регулятор Безье и установке меток для настройки естественного перемещения мяча необходимо определиться с функциональной кривой. В первом ключевом кадре оси Y метка была расположена по горизонтали таким образом, чтобы мяч постепенно скатывался с коробки, а не стремглав сваливался вниз, как раньше (см. рис. 9.7). Кроме того, был изменен второй ключевой кадр той же функциональной кривой по оси Y, в результате чего мяч падал нормально вниз, отскакивал обратно— и никакого "пикирования". Третий ключевой кадр остался с неизменными управляющими регуляторами, поскольку в дополнительных возможностях анимационного контроллера Безье не было надобности. Благодаря небольшой модификации четвертого ключевого кадра, функциональная кривая оси Y, а следовательно, и траектория движения объекта, стала гораздо реалистичнее.
⇐Частота смены кадров || Оглавление || Оси и центры вращения⇒