Глава15. Развитые методы анимации



В ЭТОЙ ГЛАВЕ


В этой главе рассматриваются более развитые методы анимации. В начале будет представлена та часть интерфейса Вгусе, которая содержит слово "развитый" в своем названии: лаборатория развитого движения (Advanced Motion Lab). Это даст читателю возможность ознакомиться со всеми элементами управления анимации в Вгусе. После этого имеет смысл рассматривать вопросы планирования анимации, поскольку у читателя уже будет полное представление о данном предмете. А далее будут подробно изложены развитые методы работы с камерой, операторским краном, а также специальные способы и приемы перемещения объектов по заданному пути.

Введение в лабораторию развитого движения


Лаборатория развитого движения (Advanced Motion Lab — AML) предназначена для того, чтобы сделать анимационное движение более естественным и внести коррективы как в отдельные ключевые кадры, так и в анимацию в целом. В начале предыдущей главы речь шла о том, что ключевые события могут включать в себя физические силы (в частности, сплющивание мяча при соударении с землей). Одной из таких физических сил является сила тяжести. Как известно, движение объектов неравномерно. Объекту требуется время для того чтобы набрать требуемую скорость в начале движения и затормозить в его конце. Подобно атмосферным явлениям, которые придают миру Вгусе сходство с реальным миром, подобные особенности движения делают анимацию более правдоподобной. Точная настройка анимации осуществляется в лаборатории развитого движения.
В этой лаборатории можно редактировать объекты и их ключевые события, перемещать эти события и совершенно от них избавляться, вносить коррективы в разворачивание событий во времени, а также изменять временные характеристики любого объекта или его свойства.

Краткий обзор лаборатории развитого движения


Как следует из предыдущей главы, анимационные ключевые события происходят в пространстве и во времени. В лаборатории развитого движения предоставляется возможность корректировать соотношение пространства и времени в пределах создаваемой анимационной последовательности.
Для доступа к лаборатории развитого движения следует щелкнуть на кнопке Advanced Motion Lab в палитре изменений во времени (Time Palette) либо нажать комбинацию клавиш Cmd+T/Ctrl+T. Как следует из рис. 15.1, организация лаборатории развитого движения отражает разделение пространства и времени. В этом отношении лаборатория развитого движения разделена на несколько основных областей. Несмотря на то что в приведенном ниже перечне перечислены пять таких областей, на самом деле работать приходится лишь с четырьмя или даже с тремя областями лаборатории развитого движения.

Рисунок 15.1 Вид лаборатории развитого движения с обозначенными основными областями


В нижней половине лаборатории развитого движения находится иерархический список (Hierarchy List) и задатчик последовательности кадров (Sequencer). Здесь наглядно представлено, что именно подлежит анимации: объекты, их свойства и конкретные ключевые события. Теперь, когда у читателя имеется общее представление об организации лаборатории развитого движения, обратимся к более подробному изложению каждой ее области. Это будет сделано в обратном порядке, начиная с объектов и их свойств в иерархическом списке. Но прежде всего необходимо сделать одно предупреждение.
Лаборатория развитого движения является особым местом в Вгусе. В отличие от остальных лабораторий Вгусе, в ней имеется кнопка со стрелкой для возврата в Вгусе и отсутствуют кнопки отмены или принятия внесенных изменений. В лаборатории развитого движения можно последовательно отменить отдельные операции непосредственно после их выполнения, но не всю проделанную работу в целом. Все изменения, внесенные в лаборатории развитого движения, носят необратимый характер.

Иерархический список


В нижней половине лаборатории развитого движения находятся иерархический список и область Sequencer. Рассмотрение лаборатории развитого движения удобно начать с иерархического списка, поскольку в нем перечислены элементы сцены и показано, что именно полежит анимации. Для каждого объекта, перечисленного в этом списке, имеется подсписок, содержащий каждое свойство объекта, которое подлежит анимации. Для вызова этого списка свойств достаточно щелкнуть на наименовании объекта. Как следует из предыдущей главы, имеется длинный список подлежащих анимации свойств. Таким образом, в данном списке могут быть перечислены все подобные свойства каждого находящегося на сцене объекта. А у каждого свойства имеются свои параметры настройки.
Текстовые метки могут быть выделены в иерархическом списке одним из четырех цветов, обозначающих состояние конкретного объекта или свойства. Помимо отображения свойств одним из четырех перечисленных выше цветов, в Вгусе предоставляются и некоторые другие возможности задания порядка и способа отображения элементов в иерархическом списке. Как правило, в иерархическом списке отображаются только выделенные объекты. Безусловно, для этого необходимо выделить объект в основном окне сцены и перейти в лабораторию развитого движения для его настройки. В этом случае наименование о бъекта появляется в иерархическом списке, причем оно окрашено красным цветом, указывающим на то, что данный объект выделен. Однако помимо этого стандартного режима иерархического списка существуют и другие.

Что, собственно, должно быть перечислено в иерархическом списке


Существуют три основных режима, определяющих содержимое иерархического списка. Они доступны из всплывающего меню AML Options (Режимы лаборатории развитого движения), которое вызывается с помощью треугольной кнопки, расположенной на правом краю окна лаборатории развитого движения. В приведенном ниже описании каждого режима предполагается, что активен только этот режим.
В режиме Show Selected в иерархическом списке отображаются только выделенные объекты. Следует заметить, что поскольку выделение или отмена выделения солнца и неба не предусмотрены, они всегда находятся в иерархическом списке.
В режиме Show Animated в иерархическом списке отображаются только подлежащие анимации объекты независимо от того, выделены они или нет.
В режиме Display Hierarchy иерархический список отображается в виде ряда иерархически связанных между собой сворачиваемых списков.
Оба режима Show Selected и Show Animated действуют в качестве фильтров, определяющих содержимое иерархического списка, а режим Display Hierarchy определяет, в каком виде объекты, отображаемые в этом списке, появляются в лаборатории развитого движения, если они являются частью иерархии объектов.

Режим Show Selected


На режим предварительного просмотра могут оказывать влияние различные факторы. В частности, в лаборатории развитого движения допускается выделение или отмена выделения объектов. Выделенные объекты окрашиваются в иерархическом списке красным цветом. Для выделения или отмены выделения объекта достаточно щелкнуть на его наименовании, удерживая нажатой клавишу Cmd/Ctrl. В зависимости от того, был ли объект сначала выделен, его окраска в окне Wireframe Preview должна измениться с красной на другую или наоборот стать красной. После выделения в лаборатории развитого движения дополнительных объектов они остаются выделенными на сцене после выхода из этой лаборатории.
Если, например, требуется увеличить число элементов в иерархическом списке, для этого можно воспользоваться следующим специальным приемом выделения объектов: отмените режим Show Selected во всплывающем меню AML Options, чтобы на сцене были видны все объекты, а затем щелкните, удерживая нажатой клавишу Cmd/Ctrl, на наименованиях тех элементов, которые должны присутствовать в иерархическом списке. После этого снова включите режим Show Selected, и тогда все остальные элементы исчезнут из данного списка.
Для отмены выделения объекта одного щелчка на его наименовании при одновременно нажатой клавише Cmd/Ctrl оказывается недостаточно, поскольку он при этом не исчезает из списка. Для этого необходимо также отключить, а затем снова включить режим Show Selected из указанного выше всплывающего меню либо выйти из лаборатории развитого движения и вновь вернуться в нее. Кроме того, для исключения всех остальных объектов из списка в нем должен остаться по крайней мере один выделенный объект.

Режим Show Animated


Как уже упоминалось выше, в режиме Show Animated отображаются все подлежащие анимации объекты независимо от того, выделены они или нет. Это справедливо в том случае, если режим Show Animated включен, а режим Show Selected отключен. Однако если включены оба указанных режима, в иерархическом списке отображаются только выделенные и подлежащие анимации объекты.

Режим Display Hierarchy


Ниже приведен демонстрационный пример, в котором показано, каким образом в лаборатории развитого движения отображаются иерархии объектов.
  1. Откройте файл сцены DOUBLE HIERARCHY и перейдите в лабораторию развитого движения.
  2. Если режимы Show Animated и Display Hierarchy еще не включены, тогда включите их и отмените режим Show Selected (рис. 15.2а). Рядом с объектом Torus 2 появляется синяя треугольная кнопка, указывающая на то, что это родительский объект в иерархии (рис. 15.26).
  3. Щелкните на треугольной кнопке, чтобы развернуть верхний уровень иерархии. Обратите внимание на то, что у объекта Torus 2 имеются порожденные объекты: четыре пирамиды (рис. 15.2в).
  4. Щелкните на синей треугольной кнопке рядом с первой пирамидой. У этой пирамиды имеется один порожденный объект Torus 4 (рис. 15.2г).
  5. Щелкните на треугольной кнопке рядом с этим объектом. Иерархия разворачивается далее для отображения четырех дополнительных пирамид, порожденных объектом Torus 4 (рис. 15.2д).
Безусловно, для всех остальных объектов можно также отображать или скрывать не только порожденные объекты, но и их свойства.
Мы пока что опустим режимы, приведенные в средней части меню AML Options, чтобы вернуться к ним при рассмотрении временной линейки и ее элементов управления. В нижней части этого меню находятся режимы, позволяющие ускорить перемещение по иерархическому списку.

Рисунок 15.2 Отображение иерархии объектов в лаборатории развитого движения: а). Первоначальная установка режимов в меню AML Options; б). Вид лаборатории развитого движения с перечисленными объектами; в). Развертывание иерархии объектов, порожденных объектом Torus 2; г). Развертывание иерархии объектов, порожденных объектом первой пирамиды; д). Развертывание иерархии объектов, порожденных объектом Torus 4


Режим Expand All Timelines


Этот режим позволяет развернуть все временные шкалы, чтобы были видны все свойства всех объектов. Хотя для этого, возможно, придется прибегнуть к прокрутке списка.

Режим Expand All Hierarchies


Во время просмотра иерархического списка этот режим позволяет развернуть все иерархии, чтобы стала очевидной взаимосвязь всех объектов. (В том случае, когда порожденных объектов оказывается так много, что их список выступает из области иерархического списка в область Sequencer, данный режим обеспечивает единственный способ увидеть все объекты в иерархической взаимосвязи.)

Режим Collapse Hierarchies


Этот режим обеспечивает сворачивание всех иерархий до самых верхних по иерархии родительских объектов. В иерархическом списке можно скрывать и отображать все что угодно. Конечно, было бы неплохо, если бы лаборатория развитого движения занимала больше полезной площади экрана монитора. Тогда работать в ней было бы намного проще. А между тем, приходится применять самые разные способы отображения и скрытия объектов, их свойств и порожденных ими объектов.

Пиктограмма глаза


Обратите внимание на то, что слева от каждого объекта находится пиктограмма глаза, которая обозначает, что объект отображается. Если щелкнуть на этой пиктограмме, чтобы закрыть глаз, соответствующий объект исчезнет из окна предварительного просмотра в трехмерном виде. Допустим, что осуществляется анимация объекта, который находится позади другого объекта в течение определенной части анимации. Для точной настройки движения этого объекта необходимо временно скрыть находящийся перед ним объект. Для этого достаточно щелкнуть на пиктограмме открытого глаза переднего объекта, и тогда представляющий интерес объект окажется ничем не заслоненным. Скрытие объектов в окне предварительного просмотра в трехмерном виде не оказывает влияние на их видимость в основном окне сцены. Щелчком на пиктограмме глаза объект скрывается или отображается лишь в окне предварительного просмотра, хотя в иерархическом списке и области Sequencer он будет отображаться по-прежнему.
Если щелкнуть, удерживая нажатой клавишу Option/Alt, на пиктограмме глаза родительского объекта при просмотре списка в иерархическом виде, это окажет влияние на видимость не только этого объекта, но и порожденных им объектов. И даже в этом случае отдельные элементы иерархического списка можно скрыть, щелкнув на расположенных рядом с ними пиктограммах глаза.

О применении команды Delete All Keyframes


Если поместить указатель мыши над одним из объектов или свойств объекта в иерархическом списке, нажать клавишу Shift, а затем кнопку мыши, тогда появится всплывающее меню (рис. 15.3). Это меню выполняет ряд дополнительных функций, самой примечательной из которых является команда Delete All Keyframes (Удалить все ключевые кадры). Что же в ней примечательного? Ведь в предыдущей главе уже была рассмотрена комбинация клавиш для удаления всех ключевых кадров. Отличие данной команды состоит в том, что она удаляет не все ключевые кадры со сцены, а только ключевые кадры анимации того свойства, на котором находится указатель мыши. Только ради этой команды стоит обратиться к лаборатории развитого движения. Команда Delete All Keyframes отлично подходит для очистки сцены. В Вгусе имеется неприятная особенность разбрасывать по всему иерархическому списку бесполезные свойства. От них можно избавиться с помощью данной команды.

Рисунок 15.3 Всплывающее меню команд для объектов или их свойств, перечисленных в иерархическом списке


Нередко бывает, что многие элементы иерархического списка приобретают ключевые кадры в начале последовательности кадров. Как правило, это происходит при переходе в начало последовательности кадров в активном режиме Auto-Key для редактирования объекта. Переход в начало последовательности кадров гарантирует от каких-либо изменений в объекте в течение данной последовательности кадров, однако в результате регистрации ключевого кадра увеличивается размер файла и накапливается много всякого мусора. В этом случае можно удалить все ключевые кадры анимации объекта в целом либо отдельного свойства этого объекта.
Помимо столь важной команды Delete All Keyframes, в указанном выше меню имеются также другие команды, с помощью которых можно добиться интересных анимационных эффектов: Pendulum Movement (Попеременное движение), Circular Movement (Круговое движение), Repeat Movement (Повторяющееся движение) и One Shot (Однократное движение). Эти замечательные команды подробнее рассматриваются далее в этой главе.

Клавиатурные эквиваленты команд


Ниже приведены клавиатурные эквиваленты команд, применяемых для работы с иерархическим списком в лаборатории развитого движения.

Основные клавиатурные эквиваленты команд
Cmd+Z/Ctrl+Z Отметить последнее действие
Return/Enter/Esc Выйти из лаборатории развитого движения (клавиша Esc в данном случае не выполняет функцию отмены, поскольку таковая в данной лаборатории отсутствует)


Клавиатурные эквиваленты команд меню AML Options
Cmd+S/Ctrl+S Включение/выключение режима Show Selected
Cmd+A/Ctrl+A Включение/выключение режима Show Animated
Cmd+H/Ctrl+H Включение/выключение режима Display Hierarchy
Cmd+Q/Ctrl+Q Разворачивание/сворачивание временных шкал в области Sequncer для всех объектов
Cmd+E/Ctrl+E Разворачивание/сворачивание иерархий объектов (эта команда действует при включенном режиме Display Hierarchy, если при этом не включен режим Show Selected)


Клавиатурные эквиваленты команд для работы с иерархическим списком
Cmd/Ctrl+Щелчок на наименовании объекта Выделение/отмена выделения объекта (в окне предварительного просмотра лаборатории развитого движения, а также на сцене)
Option/Alt+Щелчок на наименовании объекта Разворачивание/сворачивание временных шкал объекта и всех его свойств
Shift+Щелчок на наименовании объекта или его свойства Отображение всплывающего меню команд анимации для объекта или его свойства
Option/Alt+Щелчок на пиктограмме глаза Отображение/скрытие объекта и порожденных им объектов (если таковые имеются)


Область Sequncer


Область задатчика последовательности кадров (Sequncer) также находится в нижней половине лаборатории развитого движения. Именно здесь настраиваются временные параметры анимации. Для каждого элемента иерархического списка в этой области отображается горизонтальная полоса, на которой указаны ключевые события (в виде вертикальных отметок), а также продолжительность анимации объекта или его свойства во времени (выделенная цветной полосой). Если иерархия объекта представлена в свернутом виде, тогда на основной полосе в области Sequncer отображается итоговая информация об изменениях, происходящих с одним или более свойств объекта. Для такого объекта полоса в области Sequncer редактированию не подлежит. Поэтому для редактирования конкретных свойств анимации необходимо отобразить все свойства.
Как правило, у разных объектов имеются разные цветные полосы. Для камеры полоса окрашена красным цветом, для неба — синим, а для объектов — зеленым. При наличии иерархии объектов полоса родительского объекта окрашена фиолетовым цветом. Тем не менее, эти цвета могут быть циклически изменены с помощью недокументированного приема. Для изменения одного цвета достаточного нажать клавишу С, а после семи нажатий этой клавиши все цвета возвращаются на свои места.

Временная линейка


В верхней части области Sequncer находится временная линейка (Time Ruler). Справа от нее расположен элемент управления Scale (Масштаб). Он действует аналогично элементу управления Scale в палитре изменений во времени, редакторе местности, лаборатории небесных явлений либо лаборатории материалов. Как мы и обещали ранее, рассмотрим режимы, которые выбираются в средней части всплывающего меню AML Options (см. рис. 15.2в).

Режим Snap to Frames


В этом режиме все перемещения индикатора текущего времени и временных отметок ключевых кадров привязываются к кадрам. Этот режим активен по умолчанию, и скорее всего он должен оставаться в этом состоянии.

Режим Realtime Linking


В этом активном по умолчанию режиме сцена отображается в реальном масштабе времени в окне предварительного просмотра в трехмерном виде при перемещении индикатора текущего времени. В противном случае сначала перемещается индикатор текущего времени, а после его остановки изменяется изображение сцены в окне предварительного просмотра в трехмерном виде, отражая тем самым новый момент времени.

Режим Link TimeLine Scale


Этот режим синхронизирует масштаб временной линейки в лаборатории развитого движения с временной шкалой в палитре изменений во времени. Если уменьшить масштаб временной линейки до нескольких кадров, то после выхода из лаборатории развитого движения масштаб временной шкалы в основной области Вгусе изменится соответствующим образом. Если оставить данный режим включенным, это может привести к разным результатам в зависимости от того, каким образом установлен интерфейс Вгусе. В стандартном режиме (Interface Min), где элементы управления находятся по краям рабочего окна, длина временной линейки в лаборатории развитого движения будет такой же, как и у основной временной шкалы в палитре изменений во времени. С другой стороны, если в палитре отображения выбран режим Interface Max, в результате чего элементы интерфейса располагаются по краям экрана, длина временной шкалы окажется больше, чем у временной линейки. Однако если при этом включен режим Link TimeLine Scale (Согласование масштаба временной шкалы), масштаб обеих временных шкал изменится пропорционально.
На рис. 15.4 показана нижняя половина лаборатории развитого движения со всеми отмеченными ее элементами. Помимо элементов области Sequencer, на этом рисунке также отмечены элементы управления временными параметрами анимации.

Рисунок 15.4 Вид области Sequencer со всеми отмеченными ее элементами


В области Sequencer имеется еше один элемент, который, строго говоря, к ней не относится. Это индикатор времени, расположенный в нижней части области кривых распределения времени.
Область Sequencer состоит из трех элементов управления, указывающих текущее время анимации и задающих пределы диапазона анимации.

Элементы управления временными параметрами анимации


Индикатор текущего времени представляет собой вертикальную линию, которая обозначает текущий момент анимации. Находящаяся сверху бледно-лиловая рукоятка служит как для отметки текущего времени на временной линейке, так и для перемещения отметки текущего времени в новое положение. Большую часть времени она полупрозрачна, кроме тех моментов, когда поверх нее оказывается указатель мыши либо когда она перемещается вдоль временной линейки. Подобными бледно-лиловой рукоятке являются и желтовато-коричневые рукоятки, которыми отмечаются начальный и конечный моменты последовательности кадров. Кроме того, с их помощью отмечаются пределы рабочего диапазона анимации. Они также полупрозрачны кроме тех моментов, когда поверх них оказывается указатель мыши либо когда они перемещаются вдоль временной линейки. Изменения рабочего диапазона анимации, сделанные в лаборатории развитого движения либо в палитре изменений во времени, приводят к обновлению временной линейки.
Допустим, что масштаб временной линейки изменен таким образом, чтобы она отображала только вторую половину последовательности кадров. Каким же образом перейти к первой половине этой последовательности кадров? Очевидно, для этого следует переместить индикатор текущего времени на левый край линейки и далее за его пределы для ее прокрутки вправо. Другой, менее очевидный способ состоит в перетаскивании самой линейки. Для этого следует поместить указатель мыши в любом месте временной линейки (только не поверх одной из управляющих рукояток) и выполнить перетаскивание влево или вправо.
Другая область управления временными параметрами анимации находится справа в средней части лаборатории развитого движения. Это панель элементов управления воспроизведением анимации. Функции этих элементов управления те же, что и у элементов управления в палитре изменений во времени, хотя и здесь имеются некоторые неизбежные исключения. Прежде всего, элементы управления воспроизведением анимации в лаборатории развитого движения несовместимы с аналогичными элементами управления в остальной части интерфейса Вгусс (в палитре изменений во времени, редакторе местности, лаборатории материалов и лаборатории небесных явлений), В частности, кнопка Play в лаборатории развитого движения не выполняет одновременно функцию кнопки Pause. Для воспроизведения анимации обычно нажимается кнопка Play, а для ее остановки или паузы — кнопка Stop, Другое исключение касается двух непомеченных кнопок, расположенных по обе стороны от кнопок перехода в начало и в конец анимационной последовательности. Крайняя справа кнопка выполняет визуализацию отдельного кадра сцены, отображаемой в данный момент в окне предварительного просмотра. А крайняя слева кнопка вызывает диалоговое окно Animation Setup. Кстати, этого же можно добиться, дважды щелкнув в области отсчета текущего времени.

Предупреждение относительно диалогового окна Animation Setup


Ни в коем случае не изменяйте масштаб времени в диалоговом окне Animation Setup. В противном случае масштабы временной линейки в лаборатории развитого движения и временной шкалы в палитре изменений во времени не будут совпадать. Более того, при перемещении индикатора текущего времени отсчет времени будет производиться неверно. В сущности, подобные попытки уместны во время монтажа, но не в данном случае.

Клавиатурные эквиваленты команд перемещения по временной линейке
, (запятая) . (точка) Переход к предыдущему/последующему кадру
<> Переход к предыдущему/последующему ключевому кадру
Q Переход в начало/конец рабочего диапазона анимации
\ или Р Воспроизведение анимации; пауза во время воспроизведения (в основном интерфейсе Вгусе клавиша Р не действует)


Клавиатурные эквиваленты команд перемещения в области Sequencer
Home Переход в начало списка временных шкал
End Переход в конец списка временных шкал
Стрелка вверх/вниз Прокрутка списка временных шкал на одну строку вверх/вниз
PgUp/PgDn Прокрутка списка временных шкал на одну страницу вверх/вниз


Перемещение в области Sequencer с помощью мыши и клавиатуры
Щелчок на ключевом кадре Выделение ключевого кадра
Delete (Macintosh) Backspace (Windows) Удаление выделенных ключевых кадров
Shift+Щелчок на ключевом кадре Выделение нескольких кадров и переключение между режимом выделения и отмены выделения ключевых кадров
I (при выделенных ключевых кадрах) Переключение режима сплайновой (криволинейной) или линейной интерполяции между ключевыми кадрами
Перетаскивание ключевых кадров при одновременно нажатой клавише Cmd/Ctrl Создание копии выделенных кадров
Перетаскивание ключевых кадров при одновременно нажатой клавише Option/Alt Пропорциональное масштабирование промежутка времени между ключевыми кадрами (чтобы увидеть результат, необходимо выделить три или более кадров)


Элементы o6лacти Sequencer


Для редактирования подлежащего анимации свойства следует щелкнуть на наименовании этого свойства либо на его цветной полосе, расположенной на временной шкале в области Sequencer, чтобы, таким образом его выделить. Напомним, что выделить временную шкалу объекта нельзя. Напротив, необходимо отобразить временные шкалы его отдельных свойств и выделить одну из них. При выделении временной шкалы свойства оно становится активным в области распределения времени.

Временные отметки ключевых событий


На одной или нескольких временных шкалах свойств объекта можно также выделить одну или более временных отметок ключевых событий.
Для выделения временной отметки достаточно на ней щелкнуть (при этом она становится белой). А для выделения дополнительных временных отметок следует нажать клавишу Shift. Кроме того, для выделения нескольких временных отметок достаточно провести вокруг них рамку (как по горизонтали, так и по вертикали) (рис. 15.5).

Рисунок 15.5 Для выделения нескольких временных отметок достаточно провести вокруг них рамку: а). По горизонтали; б). По вертикали


После выделения временной отметки ее можно переместить в другое место на временной шкале. Простейшей и наиболее полезной операцией над одной выделенной временной отметкой ключевого события является настройка ее положения во времени. Если редактируется траектория, то именно в этом месте лаборатории развитого движения можно отделить место от времени возникновения события, т.е. сделать так, чтобы оно произошло раньше или позже. В частности, если создан целый ряд точек расположения объекта на траектории, то с помощью временных отметок можно согласовать во времени перемещение объекта между этими точками, например, настроить промежутки времени таким образом, чтобы ключевые события происходили равномерно. (Безусловно, используя путь, можно также добиться равномерности движения, однако иногда для этого оказывается вполне достаточно траекторий с четырьмя ключевыми точками.)
Следует однако предупредить, что перетаскивание ключевых кадров в лаборатории развитого движения может оказаться весьма рискованным занятием, поскольку они очень быстро перемещаются по временной шкале. Иногда управлять этим процессом оказывается довольно трудно, особенно при перемещении на большое расстояние. В этом случае определенную помощь может оказать увеличение масштаба в промежутке между кадрами.
Если перетащить одни временные отметки ключевых событий за пределы других, это приведет к изменению формы траектории или порядка следования событий. Если предполагается именно это, то такой способ оказывается удобным, а если нет, он лишь усложняет дело.
Второй полезной операцией над временными отметками ключевых событий является их удаление. Если для данного свойства имеется лишь одна временная отметка (что, как правило, является следствием анимации в активном режиме автоматической установки ключевых кадров), то в результате ее удаления из анимации исключается также соответствующее свойство. Это удоб-но для избавления от ненужной информации в лаборатории развитого движения. Таким образом, если осуществляется анимация одних свойств неба и при этом необходимо избавиться от остальных, не подлежащих анимации свойств, то для этого достаточно провести рамку вокруг ненужных временных отметок ключевых событий, чтобы их выделить, а затем нажать клавишу Delete или Backspace для их удаления.
Помимо перемещения и удаления временных отметок ключевых событий, можно скопировать выделенный ключевой кадр, переташив его при одновременно нажатой клавише Cmd/Ctrl (в руководстве по Вгусе неверно сказано, что для этого следует нажать клавишу Option/Alt). Если создается анимационная последовательность, в которой объект неоднократно возвращается в одно место после перемещения в другое, то указанный выше способ копирования ключевых кадров вполне подходит для создания возвратного движения. Для этого достаточно создать траекторию с первым возвратным движением по ней. а затем сдублировать все остальные возвратные движения в лаборатории развитого движения. На рис 15.6 показано состояние анимации до и после дублирования ключевых событий в лаборатории развитого движения. Завершающий ключевой кадр сдублирован в перемещен в положение индикатора текущего времени. Сравните трехмерный вид сцены в окне предварительного просмотра в обоих случаях.

Рисунок 15.6 Дублирование ключевого события в лаборатории развитого движения путем перетаскиваний временной отметки этого ключевого события в новое положение при одновременно нажатой клавише Cmd/ Ctrl d). До дублирования; б). После дублирования


А что, если требуется избавиться от ненужной сдублированной временной отметки ключевого события? В разделе "Перемещение маркерных точек траектории" предыдущей главы упоминалось о программной ошибке Вгусе, в результате которой иногда маркерная точка траектории (и соответствующий сдублированный ключевой кадр) вводится поверх уже существующей. Теперь, когда дано пояснение свойств временных отметок ключевых событий, можно показать, как этот недостаток устраняется. Перейдите к требуемому моменту времени. Выделите и переместите временную отметку ключевого кадра. При этом обнаруживается присутствие под ней еще одной, сдублированной временной отметки. Определите, какая из этих временных отметок не нужна, выделите и удалите ее.
Помимо ввода и перемещения нескольких временных отметок ключевых событий, можно изменить их масштаб, чтобы разнести их во времени дальше или ближе друг к другу. Для этого необходимо выделить три или более временных отметок. Для изменения масштаба выделенных временных отметок ключевых событий достаточно выполнить их перетаскивание, удерживая нажатой клавишу Option/Alt. На рис. 15.7 показано состояние до (рис. 15.7а) и после (рис. 15.76) изменения масштаба трех выделенных временных отметок ключевых событий. Здесь конечная временная отметка была перемещена влево, в результате чего все три временные отметки оказались ближе друг к другу. Если бы конечная временная отметка была перемещена вправо, тогда они оказались бы дальше друг от друга. При изменении масштаба соотношение между временными отметками сохраняется (в данном примере они находятся на равном расстоянии друг от друга, так что сохранение масштаба здесь не столь очевидно). Следует однако предупредить, что, во-первых, при изменении масштаба нескольких временных отметок влево (в направлении отметки 0) соотношение между ними не соблюдается после выхода за пределы отметки 0. В этом случае временные отметки накладываются одна на другую на нулевой отметке, а при перемещении за пределы нулевой отметки соотношение между ними искажается. Во вторых, изменение масштаба нескольких временных отметок, выделенных на разных временных шкалах, приводит к несколько необычным результатам. Остается лишь надеяться, что читателю не придется заниматься настройкой многочисленных временных отметок ключевых событий.

Рисунок 15.7 Масштабирование нескольких ключевых событий: а). До масштабирования, когда выделены три временные отметки; б). После перетаскивания влево крайней справа временной отметки при одновременно нажатой клавише Option/Alt


Предварительный просмотр в трехмерном виде


Окно предварительного просмотра в лаборатории развитого движения дает возможность наблюдать результаты выполненной работы. В этом окне можно наблюдать за перемещением объектов в процессе согласования этого перемещения во времени. В окне предварительного просмотра сцена представлена в миниатюрном каркасном виде. В нем можно перемещаться для настройки вида сцены, а также определять видимость или скрытость тех или иных объектов (о чем подробнее было сказано в разделе "Пиктограмма глаза" ранее в этой главе).
Однако при выполнении щелчка на кнопке Play в лаборатории развитого движения для предварительного просмотра анимации формат времени SMPTE строго не соблюдается. Анимация в Вгусе воспроизводится как можно быстрее и обычно требует меньше времени, чем отведено для данной анимационной последовательности. (На самом деле, формат времени SMPTE не соблюдается строго и в основном режиме предварительного просмотра, тогда как воспроизведение в каркасном виде требует больше времени, чем отведено для анимации). Ускоренный режим воспроизведения анимации в лаборатории развитого движения может оказаться уместным при наличии длинной последовательности кадров. Однако возможны случаи, когда это мешает точной настройке анимации, поскольку затрудняет определение едва заметных отличий в движении. В этом случае движение приходится наблюдать в основном рабочем окне Вгусе. Для замедления предварительного просмотра анимации в лаборатории развитого движения достаточно выбрать режим более детализированного каркаса. Для этого следует выбрать самое большое разрешение во время движения (Motion: 64) из всплывающего меню Wireframe Resolution (Разрешение каркас) в палитре отображения/каркасного представления (Display/Wireframe Palette).

Вид камеры и режиссерский вид


Слева от окна предварительного просмотра находятся элементы управления предварительным просмотром анимации (рис. 15.8). Верхний элемент управления позволяет переключаться из вида камеры в режиссерский вид и обратно. О нахождении в виде камеры свидетельствует небольшой зеленый индикатор данного элемента управления. Изменяется оттенок серого и у изображения камеры, хотя для определения текущего вида (вида камеры или режиссерского вида) намного удобнее наблюдать за зеленым индикатором. При предварительном просмотре сцены в виде камеры остальные элементы управления недоступны.

Рисунок 15.8 Окно предварительного просмотра в трехмерном виде с отмеченными элементами управления


Когда указанный выше индикатор отключен, изображение камеры приобретает более темный оттенок, а кроме того, становятся доступными элементы управления режиссерского вида. Сверху вниз расположены следующие элементы управления: увеличение масштаба изображения, уменьшение масштаба изображения, переход к устанавливаемому по умолчанию режиссерскому виду и панорамирование в любом направлении.
Кроме того, для перехода к режиссерскому виду можно прибегнуть к непосредственному манипулированию мышью внутри окна предварительного просмотра в трехмерном виде. Для этого достаточно выполнить перетаскивание влево, вправо, вниз или назад (это подобно перемещению шарового манипулятора). Для перемещения вперед или назад следует выполнить перетаскивание вверх или вниз, удерживая нажатой клавишу Control/Ctrl. А для перемещения влево или вправо следует выполнить перетаскивание влево или вправо, удерживая нажатой клавишу Control/Ctrl.
Для сохранения результатов предварительного просмотра анимации в режиссерском виде можно воспользоваться фиолетовыми кнопками элементов запоминания (расположенными сверху вниз на правом краю окна предварительного просмотра в трехмерном виде). Полученные виды сохраняются в этих элементах запоминания в течение всего сеанса работы в Вгусе, а после закрытия Вгусе они исчезают. Аналогично, при каждом запуске Вгусе и переходе в лабораторию развитого движения камера будет устанавливаться в исходное состояние в режиссерском виде рассматриваемого окна независимо от ее положения на сцене.
Ниже приведены клавиатурные эквиваленты команд перемещения в окне предварительного просмотра в трехмерном виде.

Клавиатурные эквиваленты команд перемещения в окне предварительного просмотра в трехмерном виде
Перетаскивание вверх/вниз/влево/вправо Вращение перспективы вокруг центра мирового пространства
Перетаскивание вверх/вниз при одновременно нажатой клавише Control/Ctrl Перемещение вперед/назад в окне предварительного просмотра
Перетаскивание влево/право при одновременно нажатой клавише Control/Ctrl Перемещение влево/вправо в окне предварительного просмотра


Редактор распределения времени


Редактор распределения времени (Time Mapping Editor) является именно тем местом, где приходится работать с временными характеристиками анимации в связи с событиями, происходящими в анимационной последовательности. Здесь предоставляется возможность ускорить или замедлить течение времени между событиями либо изменить временные характеристики анимации таким образом, чтобы она начиналась медленно, выполнялась в обычном темпе, а затем снова замедлялась в конце. Можно даже сделать так, чтобы время протекало в одном направлении, а события — в другом!
Прежде чем творить подобные чудеса со временем и событиями, рассмотрим все элементы, составляющие редактор распределения времени. На рис. 15.9 редактор распределения времени показан со всеми обозначенными его элементами.

Рисунок 15.9 Редактор распределения времени показан со всеми обозначенными его элементами


Горизонтальная ось времени


Вдоль верхней части редактора распределения времени проходит временная шкала, которая представляет истинное или фактическое время (с точки зрения существования мира в Вгусе). Вертикальной чертой обозначено текущее время, которое отображается также в нижней части окна в числовом виде. Формат отображения времени соответствует режиму, установленному в диалоговом окне Animation Setup: в коде SMPTE либо в кадрах (для изменения формата достаточно щелкнуть в области отсчета времени). (Кстати, в лаборатории развитого движения диалоговое окно Animation Setup рекомендуется применять только для изменения формата отображения времени.)
Перемещение указателя текущего времени влево или вправо происходит согласованно с изменением времени на временных шкалах как в области Sequencer лаборатории развитого движения, так и в палитре изменений во времени, лаборатории небесных явлений, редакторе местности и в лаборатории материалов. Отсчет времени производится слева направо.

Вертикальная ось событий


Вдоль правого края редактора распределения времени обозначаются события, происходящие в анимационной последовательности. Каждое событие представлено горизонтальной пунктирной линией, начиная с исходного состояния в нижней части данного редактора и кончая конечным состоянием в его верхней части. А текущее событие обозначается горизонтальной чертой.

Кривая распределения времени


Если провести линию через все точки пересечения моментов времени и событий, тогда получится кривая распределения времени. Настоящее назначение этой кривой состоит в том, что ее наклон в каждой точке пересечения временной шкалы и шкалы событий дает скорость изменения времени в данной точке. В устанавливаемом по умолчанию состоянии анимации распределение времени происходит по прямой диагональной линии. Наклон этой диагональной линии оказывается неизменным в каждой точке, а это означает, что время протекает равномерно на протяжении всей анимационной последовательности.
Но к счастью, форма кривой распределения времени может быть изменена, а следовательно, может быть изменен и порядок, в котором события происходят во времени. Это удобно, поскольку в устанавливаемой по умолчанию обыкновенной анимационной последовательности время протекает обычным образом, начиная с первого события в левом нижнем углу редактора распределения времени. По истечении половины времени половина событий уже произойдет, а по достижении конечного момента времени завершится конечное событие. Это правильная, линейная последовательность событий во времени. Она достаточно тривиальна.
В реальном мире лишь в немногих случаях предметы движутся, а события происходят равномерно. Поэтому в редакторе распределения времени представляется возможность ускорить или замедлить движение объектов. Именно поэтому кривые распределения времени иногда еще называются кривыми скорости. Ведь с их помощью настраивается скорость движения во времени.
После краткого обзора редактора распределения времени обратимся к примеру, в котором пять разных объектов перемещаются по одному и тому же пути в течение одной и той же последовательности ключевых кадров. На рис. 15.10 показаны пять объектов, которые движутся по одной и той траектории (исключая, конечно, их вертикальное положение). Однако кривая распределения времени у каждого из них разная. Поэтому каждый объект находится в разном положении в любой конкретный момент времени. (Для демонстрации этого примера в папке настоящей главы на сопровождающем книгу CD-ROM находится файл фильма TIMEMAPPINGCOMPARED.MOV в формате QuickTime.)

Рисунок 15.10 Кривые распределения времени для пяти объектов, показанные в три момента времени. Обратите внимание на отличие в местоположении пересекающихся черт, обозначающих соотношение текущего времени и текущего события. Сравните положение каждого объекта вдоль траектории его движения с кривой распределения событий во времени


Изображения на указанном выше рисунке представлены в трех столбцах, каждый из которых соответствует определенному моменту времени. В верхнем ряду для перемещения сферы А во времени применяется стандартная прямая распределения времени. Обратите внимание на то, как в первом и во втором ключевых событиях сфера оказывается прямо по центру в управляющей точке траектории, тогда как остальные объекты — впереди либо позади управляющей точки траектории.
Куб В перемещается по кривой ускорения. Он начинает свое движение медленно, а затем движется с равномерной скоростью. В первом ключевом событии куб В оказывается позади сферы А, поскольку для его ускорения требуется время, хотя и во втором событии он все еще находится позади сферы А. Большая часть кривой распределения времени для куба В оказывается более пологой и имеет менее крутой наклон, чем стандартная диагональная кривая распределения времени для сферы А.
Конус С начинает перемещаться с равномерной скоростью, а в конце замедляет свое движение. В первом ключевом событии конус С оказывается впереди сферы А и продолжает оставаться впереди нее во втором ключевом событии. Кривая распределения времени для конуса С обладает на двух третях своей протяженности большей крутизной, чем стандартная диагональная линия для сферы А.
Для ускорения и замедления движения пирамиды D выбрано определенное сочетание двух предыдущих кривых распределения времени. В итоге получается:так называемая S-образная кривая понижения/повышения инерционности движения. В первый ключевой момент пирамида D оказывается позади сферы А, а во второй ключевой момент — немного впереди сферы А. Несмотря на то что кривая распределения времени для пирамиды D оказывается более пологой в начале и в конце, посередине ее крутизна становится больше, чем у стандартной диагональной линии для сферы А.
Цилиндр Е ведет себя несколько иначе, чем остальные объекты. В первый ключевой момент цилиндр Е уже преодолевает две трети своей траектории, а ко второму моменту времени он уже достиг конца траектории и начинает обратное движение. Его кривая распределения времени поднимается вверх более резко, чем все остальные кривые, а затем изменяет свой наклон в обратном направлении, опускаясь резко вниз.
Вершина этой кривой соответствует концу траектории. В то время как отсчет времени продолжается в прямом направлении (слева направо), последовательность событий начинает разворачиваться в обратном направлении, и объект перемещается назад по траектории своего движения.
Обратите внимание на то, что вертикальные черты, обозначающие текущее время на кривых распределения времени, во всех столбцах выровнены, тогда как горизонтальные черты, оказываются выше или ниже пунктирных линий, обозначая положение кривой распределения времени, соответствующее текущему моменту времени. Когда горизонтальная черта находится ниже пунктирной линии (обозначающей ключевое событие), движение замедляется (именно поэтому куб оказывается позади сферы), а когда горизонтальная черта оказывается выше пунктирной линии, движение ускоряется по сравнению с обычным движением, определяемым прямой диагональной линией (как это имеет место для сферы в первом ключевом событии).
Если кривая распределения времени не совпадает с обычной, стандартной кривой, тогда момент, в который обычно происходит ключевое событие, оказывается сдвинутым во времени назад или вперед. При выполнении щелчка на элементах управления воспроизведением создается впечатление, будто появляются непредвиденные дополнительные ключевые кадры. Дополнительные паузы, которые возникают при переходе к следующему ключевому кадру, на самом деле означают места, где должен был бы находиться ключевой кадр, если движение сохраняло линейный характер. Этот факт демонстрируется на примере работы с файлом сцены TIMEMAPPINGCOMPARED в лаборатории развитого движения. Если перейти в начальный момент времени, а затем щелкнуть на кнопке перехода к следующему ключевому кадру, в этом случае можно наблюдать многочисленные паузы в тех местах, где даже отсутствуют временные отметки ключевых событий. Это связано с тем что паузы возникают на каждой горизонтальной линии, обозначающей происходящее событие, независимо от того, насколько ускоряет или замедляет движение кривая распределения времени. Таким образом, каждая точка остановки соответствует пунктирной горизонтальной линии в редакторе распределения времени.
Когда кривая оказывается более крутой, чем обычная диагональная линия, события происходят быстрее. Если кривая оказывается прямой вертикальной линией, все события происходят одновременно. Когда же кривая оказывается более пологой, чем обычная диагональная линия, события происходят медленнее. Если же кривая оказывается прямой горизонтальной линией, время проходит, но никаких событий при этом не происходит. А если линия наклонена в обратном направлении, тогда отсчет времени производится в обратном направлении и события происходят в обратном порядке.

Числовой отсчет времени в редакторе распределения времени


По краям редактора распределения времени находятся цифры, помогающие ориентироваться во времени. Эти цифры настраиваются в соответствии с выбранным временем анимации конкретного свойства объекта. Если свойство объекта не выделено, все отметки временной шкалы обозначены цифрой 0.0.
Временная шкала в данном редакторе довольно произвольно разделена на шесть промежутков времени, а шкала событий на четыре таких промежутка. Общими для них являются отметки начала, середины и конца анимационной последовательности, а остальные отметки обозначены на обеих шкалах по-разному.
Время на временной шкале и шкале событий в редакторе распределения времени, как правило, отображается в масштабе, отличном от кода SMPTE или основных кадров. В данном случае применяется десятичная шкала, на которой время разделено на минуты, секунды и десятые доли секунды. Как же привести эту временную шкалу в соответствие с остальным форматами отображения времени в Вгусе? Для этого имеется специальный, недокументированный прием отображения времени в десятичном формате с точностью до тысячных долей секунды: нажмите клавишу D, а затем щелкните на индикаторе текущего времени либо нажмите клавишу точки (.) или запятой (,), чтобы переместиться на один кадр вперед или назад. При этом время будет отображено с точностью до тысячных долей секунды (рис. 15.11). Таким образом, числовые обозначения временных отметок в редакторе распределения времени окажутся намного более понятными. Между прочим, если выйти из лаборатории развитого движения и вернуться к основному интерфейсу Вгусе, время будет по-прежнему отображаться в десятичной форме. Это же относится и к другим частям интерфейса Вгусе: лаборатории небесных явлений, редактору местности и лаборатории материалов. Чтобы вернуться к отображению времени в формате SMPTE или в кадрах, достаточно выбрать соответствующий режим из всплывающего меню Animation Options либо дважды щелкнуть на индикаторе текущего времени для вызова диалогового окна Animation Setup, которое позволяет вернуться к тому или иному формату отображения времени.
Рисунок 15.11 Время, отображаемое в десятичной форме благодаря нажатию клавиши D в лаборатории развитого движения


Как правило, во время работы со сценой цифровые значения на указанных выше шкалах не используются. Они могут быть масштабированы в соответствии е определенными правилами.
Если попытаться изменить общую продолжительность анимации в диалоговом окне Animation Setup, полученные результаты могут отличаться в зависимости от изменения (расширения либо сокращения) масштаба времени. (Помните, что для внесения других изменений, кроме формата отображения времени, доступ к диалоговому окну Animation Setup следует осуществлять только после выхода из лаборатории развитого движения и возврата к основному интерфейсу Вгусе.) Изменение масштаба времени не оказывает особого влияния на внешний вид и режим работы числовой шкалы, поскольку кривая распределения времени отражает временные характеристики конкретного свойства. В данном же случае изменяется общее время, а не временные характеристики свойства. Тем не менее, изменение продолжительности анимации, обусловленное изменением масштаба времени, приведет к прерыванию цифрового отсчета времени для данного свойства. Изменение масштаба приводит к масштабированию всех временных шкал данного свойства, а кривая распределения времени неспособна придерживаться новой временной шкалы и точно ее отображать. Независимо от того, был ли объект сохранен или скопирован и вставлен в файл другой сцены, привязка к старому масштабу времени осуществляется раз и навсегда. (На самом деле, если объект копируется и вставляется в файл новой сцены, он наследует старый масштаб времени. В этот момент можно выделить все ключевые события на временной шкале и нажать клавишу Option/Ait, чтобы изменить их масштаб времени требуемым образом.)
Имеется еще один щекотливый момент, связанный с не вполне корректным поведением числовых шкал во время работы в редакторе распределения времени. Оставим его рассмотрение до того момента, когда будет обсуждаться изменение масштаба изображения далее в этом разделе.
Предварительно заданные кривые


Итак, кривая распределения времени отнюдь не обязательно должна быть устанавливаемой по умолчанию диагональной линией. Как изменить форму такой кривой? Прежде всего для этого имеются предварительно заданные кривые, показанные на рис. 15.1 и представляющие собой наиболее употребительные зависимости событий от времени, которые, впрочем, могут быть изменены. Чтобы воспользоваться одной из них, достаточно щелкнуть на требуемой предварительно заданной кривой распределения времени. Эта кривая появляется в области редактора распределения времени.
Любую кривую, созданную самостоятельно, можно сохранить в качестве предварительно заданной для последующего применения. Для этого следует вызвать список предварительно заданных кривых, щелкнув на расположенной справа кнопке Time Mapping Curve Scroll Presets (Прокручиваемый список предварительно заданных кривых распределения времени). В этом списке всегда найдется свободное место для сохранения вновь созданной кривой распределения времени. Щелкните на нем, чтобы сохранить в этом месте кривую. При этом появится новое свободное место для сохранения следующей кривой. А для удаления одной из специально созданных предварительно заданных кривых следует щелкнуть, удерживая нажатой клавишу Option/Alt.
Стандартные кривые распределения времени, используемые в Вгусе по умолчанию, выделены синими линиями с белыми точками. А любая кривая, сохраненная в качестве предварительно заданной, будет выделена синей линией с желтыми точками.

Где хранятся предварительно заданные кривые


Предварительно заданные кривые хранятся в двух разных файлах в папке предварительно заданных элементов сцены. По умолчанию они хранятся в файле DEF ACCEL ENGINE.TME. Любые созданные кривые распределения времени будут сохранены в качестве предварительно заданных в файле ACCEL ENGINE.TME. Для очистки этого файла существует одна комбинация клавиш, которая удаляет все предварительно заданные кривые, после чего их уже нельзя будет восстановить (за исключением открытия любых файлов сцены, содержащих кривые, которые сохранены для различных объектов и их свойств, и повторного их сохранения в качестве новых предварительно заданных кривых). Итак, если нажать клавишу Option/Alt при выполнении щелчка на кнопке Time Mapping Curve Scroll Presets, все сохраненные ранее предварительно заданные кривые будут удалены. Этот процесс носит необратимый характер, так что пользуйтесь данным приемом осторожно.

Добавление и удаление точек кривой


Безусловно, лучше не полагаться на готовые кривые, а создать собственные.
Когда указатель мыши находится над кривой, он изменяет свой вид на изображение пера для рисования кривой. Щелкните на синей линии, чтобы создать желтую управляющую точку. Если курсор находится над уже существующей управляющей точкой (в частности, над той, что была создана выше), он изменяет свой вид на пересекающиеся двойные стрелки, указывающие на возможность изменить положение точки. Ниже перечислены способы, с помощью которых можно оказывать влияние на точки кривой распределения времени (причем это делается, главным образом, вручную):
Рисунок 15.13 Превращение одного отрезка кривой распределения времени а прямую линию в результате выполнения щелка на управляющей точке при одновременно нажатой клавише Shift а). Без касательных; б). С касательными


Изменение масштабе изображения


Как только начинается работа с кривыми распределения времени, неизбежно возникает желание увеличить масштаб изображения в редакторе распределения времени для работы на более высоком уровне детализации. А при увеличении продолжительности анимационной последовательности это желание становится непреодолимым. В связи с тем что размер окна данного редактора фиксирован, его нельзя приспособить к более длинной анимационной последовательности с большим числом событий. В таком случае можно прибегнуть к увеличению масштаба изображения самой кривой. Без сомнения, читатель уже заметил, что когда указатель мыши находится в области редактора распределения времени, он имеет вид лупы. Однако для приведения его в действие одного щелчка недостаточно. Для этого необходимо поместить указатель мыши в виде лупы в центре того участка изображения, который требуется увеличить, и выполнить перетаскивание. При этом появляется белая рамка, обозначающая область, которая будет введена в окно редактора распределения времени при отпускании кнопки мыши (рис. 15.14).

Рисунок 15.14 Увеличение масштаба изображения в окне редактора распределения времени: а). Вид редактора распределения времени до изменения масштаба изображения; б). Появление рамки во время перетаскивания; в). Полученный в итоге вид кривой распределения времени крупным планом


После увеличения масштаба изображения может возникнуть потребность в просмотре другой части кривой распределения времени. Для этого используется панорамирование. Чтобы выполнить панорамирование, следует нажать клавишу пробела, в результате чего курсор изменит свой вид на изображение руки, и тогда изображение можно перемещать в любом направлении.
Для уменьшения масштаба изображения следует щелкнуть, удерживая нажатой клавишу Shift, а не клавишу Option/Alt, как это имеет место не только в большинстве других графических приложений, но даже в основном рабочем окне Вгусе.
Ранее был обещан ряд подробностей, касающихся режима работы числовых шкал, расположенных по краям редактора распределения времени. Так вот, при увеличении масштаба изображения кривой числовые шкалы не изменяют свой масштаб, хотя это и противоречит здравому смыслу. На рис. 15.14в обратите внимание на отличие в положении вертикальной черты и отсчете времени в нижней части окна редактора распределения времени.

Клавиатурные эквиваленты команд для работы с кривыми распределения времени
Щелчок на кривой распределения времени Создание новой управляющей точки (отмене не подлежит)
Щелчок на управляющей точке при одновременно нажатой клавише Cmd/Ctrl Удаление управляющей точки (отмене не подлежит)
Щелчок в области редактора распределения времени при одновременно нажатой клавише Option/Alt Переключение между режимом отображения и скрытия касательных кривой
Щелчок в области редактора распределения времени при одновременно нажатой комбинации клавиш Option+Shift/Alt+Shift Возврат кривой к стандартной прямой линии (отмене не подлежит)
Перетаскивание в области редактора распределения времени Увеличение масштаба изображения
Перетаскивание в области редактора распределения при одновременно нажатой клавише пробела либо щелчок в этой же области при одновременно нажатой клавише Shift Панорамирование вида кривой распределения времени
Щелчок на управляющей точке при одновременно нажатой клавише Shift Переключение между прямолинейной и криволинейной формой отрезка кривой распределения времени
Щелчок на пустом месте в списке предварительно заданных кривых распределения времени Сохранение текущей кривой распределения времени в качестве предварительно заданной кривой
Щелчок на пиктограмме предварительно заданной кривой распределения времени Размещение предварительно заданной кривой в области редактора распределения времени
Щелчок на пиктограмме предварительно заданной кривой распределения времени при одновременно нажатой клавише Option/Alt Удаление выбранной предварительно заданной кривой распределения времени (для этого у нее должны быть желтые управляющие точки)
Щелчок на кнопке Time Mapping Curve Scroll Presets при одновременно нажатой клавише Option/Alt Переход к используемым по умолчанию предварительно заданным кривым распределения времени (отмене не подлежит)


Разное


В файле AML SAMPLES, который находится в папке настоящей главы на сопровождающем книгу CD-ROM, представлен ряд дополнительных типов кривых распределения времени для самостоятельного изучения. Это вариации на тему резкого начала и окончания анимации с линиями, круто изменяющими свою форму с горизонтальной на вертикальную (что вполне подходит для резких переходов в течение одного кадра). Кроме того, здесь имеется объект, который движется толчками и вращается в обе стороны до тех пор, пока он снова не придет в устойчивое состояние.

Завершение упражнения с анимацией отскока мяча


Теперь, когда рассмотрены свойства лаборатории развитого движения, можно вернуться к упражнению с отскоком мяча и настроить ускорение отскакивающего мяча.
В предыдущей главе мы остановились на настройке анимации отскока. Однако для того чтобы учесть действие силы тяжести и тем самым сделать всю анимацию более реалистичной, необходимо выполнить определенную настройку. Для этого мы и воспользуемся лабораторией развитого движения.
Если читатель присоединился к нам на этом этапе, не завершив упражнение в предыдущей главе, ему будет трудно его продолжить, поскольку не имеет смысла давать какие-то дополнительные пояснения, когда уже пройдено три четверти пути. Поэтому мы рекомендуем начать упражнение с самого начала. Тем не менее, чтобы продолжить это упражнение, мы предоставили файл сцены BOUNCEAMLSTART.

Ускорение и другие виды корректировки распределения времени


Вернемся в лабораторию развитого движения, чтобы ввести ускорение при падении мяча.
  1. Щелкните на элементе Position, расположенном в иерархическом списке под элементом Sphere 1. Выделенный элемент становится желтым, а в области редактора распределения времени появляется синяя диагональная полоса (рис. 15.15).

    Рисунок 15.15 Выделение свойства Position объекта Sphere 1 в лаборатории развитого движения, в результате чего в области редактора распределения времени появляется кривая (в данном случае прямая линия)


  2. Щелкните на кнопке Play для воспроизведения анимации в лаборатории развитого движения. Обратите внимание на то, что время продвигается вперед (слева направо), а события — снизу вверх. Каждой точке на временной шкале свойства Position в области Sequencer соответствует горизонтальная пунктирная линия в области редактора распределения времени.
    Обратите внимание на две линии, которые соответствуют кадрам 2 и 7. Первая из них (та, что соответствует кадру 2) обозначает положение мяча в начале его падения, а вторая (та, что соответствует кадру 7) — в момент его соударения с землей. Именно на этом отрезке и требуется ввести ускорение.
  3. Непременно установите индикатор текущего времени на кадре 2. Щелкните на кнопке перехода к следующему или предыдущему ключевому кадру, чтобы перейти к соответствующему кадру (см. рис. 15.15).
  4. Поместите указатель мыши в месте пересечения вертикальной и горизонтальной черт. Когда указатель мыши оказывается над линией кривой распределения времени, он изменяет свой вид на изображение пера. Щелкните в месте пересечения указанных выше черт. На кривой появляется желтая точка. Поместите указатель мыши в месте пересечения диагональной линии и следующей пунктирной линии. Снова щелкните в точке пересечения, и тогда появится еще одна желтая точка (рис. 15.16а).

    Рисунок 15.16 Настройка кривой распределения времени для положения объекта Sphere 1: а). После формирования двух новых управляющих точек; б). После создания отрезка ускорения в результате незначительного перетаскивания второй управляющей точки


    Далее введем ускорение, изменив крутизну линии между двумя только что введенными точками.
  5. Перетащите вторую (верхнюю) точку немного влево, чтобы пересечение с пунктирной линией происходило несколько ранее по времени. Отрезок линии между двумя точками при этом становится круче, чем остальная часть кривой распределения времени (рис. 15.16б).
  6. Проверьте внесенные изменения, щелкнув на кнопке Play в лаборатории развитого движения и обратив внимание на ускорение движения.
    Недостаток воспроизведения анимации в лаборатории развитого движения состоит в том, что этот процесс происходит намного быстрее по сравнению с назначенной продолжительностью анимационной последовательности. Если повышение быстродействия процессора обычно способствует ускорению визуализации, то в лаборатории развитого движения оно только мешает правильному восприятию воспроизводимой анимации в силу не совсем верной оценки времени в этой лаборатории. Чтобы увидеть что же действительно происходит в реальном масштабе времени, необходимо выйти из лаборатории развитого движения и перейти на некоторое время в основное окно сцены.
  7. Щелкните на кнопке со стрелкой, чтобы выйти из лаборатории развитого движения и перейти в основное окно сцены. Щелкните на кнопке Play в палитре изменений во времени.
    Не обращайте внимания на то, что сплющивание мяча не совпадает с его отскоком. Этот недостаток будет исправлен несколько ниже. Уделите основное внимание лишь ускорению при падении мяча в данной сцене.
  8. Вернитесь в лабораторию развитого движения. При необходимости щелкните на свойстве Position в области Sequencer, чтобы его кривая появилась в области редактора распределения времени.
    А теперь необходимо замедлить движение мяча, когда он поднимается вверх после отскока. Поместите указатель мыши в точке пересечения кривой распределения времени и следующей горизонтальной пунктирной кривой, что соответствует кадру 16 (или моменту времени 01.02) либо вершине дугообразной траектории движения мяча. На линии появляется желтая точка. Перетащите эту точку немного вправо, чтобы сделать линию более пологой (рис. 15.17а).
    Таким образом, мяч замедлит свое движение вверх, а затем немного ускорит его при последующем падении.
  9. Сохраните эту кривую распределения времени в качестве предварительно заданной. Для этого щелкайте на кнопке со стрелкой в правом верхнем углу редактора распределения времени до тех пор, пока не появится пустое место для ввода предварительно заданной кривой. Затем щелкните на этом пустом месте. В итоге текущая кривая распределения времени становится предварительно заданной (рис 15.176). Эта кривая будет применена к другим свойствам объекта Sphere I (Scale и Shear), чтобы они подчинялись тому же порядку распределения времени, что и свойство Position.
  10. Щелкните в иерархическом списке на элементе Scale, чтобы выделить его желтым цветом. Затем щелкните на только что сохраненной предварительно заданной кривой распределения времени. Эта кривая появится в окне редактора распределения времени. А теперь щелкните на элементе Shear, чтобы выделить его желтым цветом и аналогичным образом назначить для него кривую распределения времени. Выйдите из лаборатории развитого движения и перейдите в основное окно сцены для проверки результатов внесенных изменений.

    Рисунок 15.17 Дополнительная настройка кривой распределения времени для замедления движения мяча вверх: а). После создания управляющей точки и незначительного ее перетаскивания вниз; б). Сохранение кривой в качестве предварительно заданной в результате выполнения щелчка на пустом месте в списке предварительно заданных кривых распределения времени


    Вращение мяча все еще носит несколько необычный характер. Аналогичную кривую необходимо применить к вращению, однако это потребует также дополнительной настройки. А для этого следует вернуться в лабораторию развитого движения.
  11. Итак, вернитесь в лабораторию развитого движения и щелкните на элементе Rotation, чтобы выделить его желтым цветом. Назначьте для него ту же самую предварительно заданную кривую распределения времени, что и для остальных свойств. Установите индикатор текущего времени на отметке, соответствующей моменту соударения мяча с землей, и продолжите настройку положения кривой, наблюдая за сферой в окне предварительного просмотра в трехмерном виде. Благодаря настройке этой кривой обеспечивается сплющивание мяча параллельно плоскости земли. На рис. 15.18а показан вид лаборатории развитого движения с настраиваемой точкой кривой.
  12. Удалите желтую точку, которая соответствует вершине дугообразной траектории движения мяча. Никаких изменений во вращении при этом не происходит. Щелкните на этой желтой точке, удерживая нажатой клавишу Cmd/Ctrl, чтобы ее удалить.
  13. Настройте первую точку, переместив ее немного вверх, чтобы ускорить вращение мяча во время его скатывания с цилиндра (рис. 15.18б).

    Рисунок 15.18 Настройка кривой распределения времени для вращения объекта Sphere 1: а). Настройка вращения в нижней точке отскока мяча, в результате чего он сплющивается параллельно плоскости земли; б). Вид кривой после удаления точки, соответствующей верхней точке отскока мяча, и настройки первой точки для ускорения вращения мяча во время его скатывания с цилиндра


  14. Выйдите из лаборатории развитого движения и перейдите в основное окно сцены. Щелкните на кнопке Play для предварительного просмотра анимации в каркасном режиме. Щелкните на кнопке Animation Preview, чтобы создать предварительно просматриваемую анимацию в виде миниатюрных изображений (рис. 15.19). Сохраните полученную сцену.

    Рисунок 15.19 Предварительно просматриваемый вид анимации перед окончательной визуализацией


  15. Выполните визуализацию полученной анимации. Для этого перейдите в диалоговое окно Document Setup, чтобы установить в нем выходной размер равным половине текущего размера (рис 15.20). Выполните визуализацию в режиме неподвижного кадра, щелкнув на кнопке Render.

    Рисунок 15.20 Вид диалогового окна Document Setup для настройки сцены с отскоком мяча на визуализацию с разрешением, равным половине текущего размера (0.50)


  16. Начните визуализацию анимации. Благодаря тому что сцена находится в режиме визуализации, для отображения диалогового окна Render Animation можно щелкнуть на кнопке Plау либо нажать клавишу обратной косой черты (\). ( Это дополнительный способ вызова данного диалогового окна помимо выбора команды Render Animation из меню File.) Выберите установленные по умолчанию параметры визуализации в виде фильма формата QuickTime (Animation, Millions of Colors), а также место, в котором должен быть сохранен файл фильма, после чего щелкните на кнопке с отметкой, чтобы начать визуализацию.
Итак, поздравляем читателя с созданием анимации отскока мяча! Для этого были использованы многочисленные инструментальные средства анимации в Вгусе.

О планировании анимации


Несмотря на то что в начале предыдущей главы речь о планировании анимации уже шла, все, что было тогда сказано о планировании многих процессов анимации, мало что дало читателю, поскольку ему еще не были известны подробности создания анимации в Вгусе. Поэтому мы возвращаемся к этому вопросу, когда у читателя имеется уже достаточно полное представление об анимации. Ведь любые попытки создать анимацию сходу неизбежно приводят к необходимости тщательного планирования этого процесса.

Изучение истории кинематографа


Вот уже более столетия искусство кинематографа дает прекрасные образцы того, как следует наблюдать движение. Чтобы научиться этому, воспользуйтесь советами великих режиссеров, обратитесь к любым доступным источникам, посмотрите известные фильмы, прочитайте книги, посвященные кинематографу, пройдите, наконец, курс кинематографии. Это позволит освоить классические приемы раскрытия сюжета фильма.
Одним из лучших источников по кинематографии является книга Film Directing Shot by Shot: Vizualizing from Concept to Screen (Покадровая режиссура фильма: от замысла до экрана) Стивена Д. Катца (Steven D. Katz), выпущенная издательством Focal Press в 1991 году. В ней рассматривается процесс подготовки к съемке, художественного оформления фильма и раскадровки, а также показано, как переходить от создания раскадровки к планированию съемки конкретных сцен. Безусловно, эта книга написана с учетом того факта, что в фильме будут принимать участие актеры, использованы съемочные площадки и настоящие камеры. Тем не менее, рассматриваемый в ней процесс принятия решений можно с успехом применять во время работы над анимацией в Вгусе. Названия фильмов, раскадровка которых воспроизведена на страницах этой книги, говорят сами за себя: Citizen Капе (Гражданин Кэш), The Birds (Птицы), The Graduate (Выпускник), Blade Runner (Бегущий по лезвию бритвы).
К традиционной кинематографической терминологии относится термин "съемка". Съемка означает точку наблюдения камеры, в частности, съемка общим планом, крупным планом или дальним планом. Принимая во внимание тот факт, что в Вгусе имеется только одна камера для каждой сцены, синонимом съемки может служить последовательность кадров. Однако если последовательность кадров разделена на более мелкие части, эти части считаются отдельно снятыми кадрами.

Основы планирования и раскадровки анимации


Предварительное планирование анимации означает сосредоточение основного внимания не на анимационных возможностях Вгусе, а на раскрытии сюжета анимации. Существует ряд простых методов раскрытия сюжета.

Простота сюжета


Прежде всего необходимо подумать о сценарии. Возьмем для примера сценарий, созданный Майклом Симоном (Michael Sigmon). В анимации устройства Руба Гольдбер-га (Rube Goldberg), созданной Симоном, металлический шар на пути своего следования взаимодействует с другими объектами. Сначала от движется вниз по спирали, набирая скорость. Затем этот шар движется по прямой, приводя в движение другие шары, которые разбросаны по пути его следования. Устанавливая клетчатые флажки по пути своего следования, другие шары заполняют одну чашу весов, тогда как исходный шар сбивается с прямого пути и опускается на вторую чашу весов, которая поднимается при этом вверх и т.д. Мы не будем раскрывать этот сюжет полностью, поскольку его можно проследить до конца в файле фильма RUBE.MOV, который находится в папке настоящей главы на сопровождающем книгу CD-ROM.
Сценарий анимации предполагает планирование окружающей среды и персонажей анимации (в приведенном выше примере шара, желоба, весов и т.д.). А это приводит к планированию видов съемки камерой, которые позволяют лучше всего раскрыть сюжет.

Одной непрерывной съемки для раскрытия сюжета недостаточно


У начинающих аниматоров бытует мнение, что большую сцену следует снимать одним общим планом. Это не совсем верно. Для художественных фильмов характерно раскрытие сюжета с использованием съемки разным планом и последующего монтажа.
В начале сцена может быть снята общим планом для передачи общего контекста происходящего действия. Затем один предмет снимается крупным планом для определения его роли в съемке. После этого осуществляется съемка другого или третьего предмета либо слежение за действием первого. С другой стороны, чтобы намеренно ввести зрителя в заблуждение, можно сначала воспользоваться крупным планом объекта, а затем его общим планом. Выбор вида съемки зависит от сюжета и замысла, который аниматор пытается передать.
Так, последовательность кадров анимации устрой-ства Руба Гольдберга начинается со съемки общим планом, определяющей контекст анимации, после чего следует съемка со слежением за первым шаром или рядом дополнительных шаров. В каждом последующем кадре съемки сообщается, что произойдет дальше.
Во время планирования разных видов съемки рекомендуется руководствоваться советами, приведенными в упомянутой выше книге "Покадровая режиссура фильма: от замысла до экрана".

Создание раскадровки


Большую пользу приносит и раскадровка. Для этого можно сделать от руки эскизы каждого кадра съемки под разным углом наклона камеры, а если сцена уже создана, тогда можно получить ряд неподвижных ее изображений. Эскизы передают действие, которое происходит в поле зрения камеры, а также движение самой камеры.

Применение секундомера


После установки кадров съемки можно приступать к планированию действия в каждом из них, используя секундомер для согласования анимации во времени. Проиграйте сцену мысленно, включив секундомер в начале и остановив его в конце сцены, чтобы таким образом получить приближенное представление о продолжительности ее анимации. Полученное показание секундомера может служить ориентиром для планирования продолжительности анимации.

Создание проверочной анимации


В зависимости от действия, происходящего в анимации, возможно, потребуется провести некоторую работу для проверки правильности замысла анимации. В конце концов, одни замыслы рождаются сразу, а другие возникают в процессе работы над анимацией.
В одних случаях идеи рождаются в процессе углубленного освоения возможностей анимации в Вгусе. В частности, многие примеры, приведенные в этой книге, первоначально возникли в процессе работы с данной программой. А в других случаях замысел требует дополнительной проверки возможности его осуществления в Вгусе.
В каком-то смысле планирование, создание и опробование проверочных видов анимации соответствует процессу создания, визуализации и настройки сцены. Что касается анимации, то этот процесс идет на два фронта. Сначала приходится работать над всеми элементами неподвижной сцены (создавать, размещать и редактировать объекты, назначать для них материалы, вводить небо и освещение и т.д.), а затем приступать к анимации последовательности кадров с учетом времени и движения.
Так или иначе, приходится приводить в соответствие замысел и его воплощение в сцене до получения приемлемого результата, когда работу можно считать завершенной.

Монтаж


Независимо от того, каким образом была начата работа над анимацией, в итоге получается одна или более визуализированных анимационных последовательностей. Если таких последовательностей несколько, их следует смонтировать.

Монтаж анимационных последовательностей


Решение задачи монтажа нескольких анимационных последовательностей выходит за рамки работы в Вгусе. Для этого приходится применять специальное приложение, предназначенное для видеомонтажа. В Вгусе можно получить ряд неподвижных изображений кадров либо фильм в формате QuickTime или AVI. Это, так сказать, исходный материал для монтажа наряду с наплывами, монтажными переходами и т.п. Если же вводится звуковое сопровождение, то для этого применяется специальное программное обеспечение монтажа фильмов. Рассмотрение процесса монтажа выходит за рамки этой книги, поскольку она и без того получилась достаточно объемной. Тем не менее, ниже приведен ряд приложений, которые стоит рассмотреть в качестве возможных средств выполнения последующего монтажа анимации: Итак, после углубленного рассмотрения всех вопросов планирования анимации на этапах подготовки к съемке, можно приступать к представлению некоторых методов формирования правильного движения камеры на этапе съемки.

Связывание объектов в иерархии и применение операторского крана


Связывание объектов в иерархию было представлено в главе 7. Оно находит свое применение в анимации, поскольку порожденные объекты связаны со своими родительскими объектами и в то же время обладают определенной от них независимостью.
Рассмотрим ряд примеров анимации, имеющих, главным образом, отношение к движению камеры по определенной траектории. Ниже будет показано применение операторского крана, в основу работы которого положены принципы связывания и анимации, а также слежения и анимации. Каждый последующий этап применения этого метода анимации основывается на предыдущем, поэтому непременно просмотрите все соответствующие файлы сцен и фильмов, которые находятся на сопровождающем книгу CD-ROM. Чтобы извлечь максимальную пользу из этих примеров, выполните не только воспроизведение визуализированных фильмов, но и воспользуйтесь кнопкой Play при просмотре файлов сцен. Помните, что воспроизведение анимационных последовательностей можно выполнять при просмотре сцены в любом виде: не только в виде камеры, но и режиссерском виде, виде сверху, спереди и т.д. Просмотр сцены в разных видах особенно полезен в тех примерах, где камера присоединена к операторскому крану, поскольку единственный способ просмотра динамики сцены состоит в отдалении точки наблюдения на расстояние, достаточное для охвата всей сцены.

Операторский кран и анимационная последовательность


Рассматриваемая здесь анимационная последовательность представляет собой перемещение пирамид из точки А в точку В между рядом цилиндров и кубов. В каждом из рассматриваемых здесь сценариев анимации перемещение пирамид, цилиндров и кубов остается неизменным. Движение пирамиды определяется кривой понижения/повышения инерционности движения, применяемой в лаборатории развитого движения. Приведенному здесь описанию сопутствуют файлы примеров PYRAMID## или PYRAMID##.MOV на сопровождающем книгу CD-ROM, где ## — это номер, указываемый в начале заголовка каждого примера анимации, рассматриваемого в тексте данной книги.

1. Пирамида перемещается из точки А в точку В


Это исходный, основной вариант анимации. Камера неподвижна и нацелена на движущуюся пирамиду. Движение пирамиды определяется простой кривой понижения/повышения инерционности движения, применяемой в лаборатории развитого движения (рис 15.21).

Рисунок 15.21 Простое движение пирамиды: а). Визуализированная сцена в начале движения; б). Визуализированная сцена в конце движения; в). Каркасное представление сцены в начале движения; г). Каркасное представление сцены в конце движения


2. Источник света следит за пирамидой


Во втором варианте анимации введено одно изменение. Источник света связан с пирамидой, причем пирамида является родительским объектом, а источник света — порожденным. Он перемещается вместе с пирамидой, благодаря чему пирамиду лучше видно (рис 15.22).

Рисунок 15.22 Прожектор освещает пирамиду: а). В визуализированном виде;


3. Камера связана с пирамидой (съемка с операторской тележки)


В этом варианте анимации камера связана с пирамидой, поэтому при перемещении пирамиды перемещается и камера, причем пирамида является родительским объектом, а камера — порожденным. Это простой пример перемещения операторской тележки синхронно с предметом съемки, когда движение камеры по прямой линии определяется движением пирамиды по такой же прямой линии, причем они движутся синхронно (рис. 15.23).

Рисунок 15.23 Камера, связанная с пирамидой: а). Начало анимационной последовательности; б). Конец анимационной последовательности; в). Вид диалогового окна Object Attributes с параметрами настройки камеры


4. Камера следит за пирамидой


В четвертом варианте анимации камера не связана с предметом съемки и находится в неподвижном положении. Напротив, она следит за пирамидой, как следует из установки параметров настройки камеры в закладке Linking диалогового окна Object Attributes, показанной на рис. 15.24в. А поскольку камера следит за пирамидой, последняя все время остается в самом центре кадра.

Рисунок 15.24 Камера следит за пирамидой: а). Начало анимационной последовательности; б). Конец анимационной последовательности; в). Вид диалогового окна Object Attributes с параметрами настройки камеры


5. Источник света связан с камерой


В этом варианте анимации в сцену введен источник света. Новый источник света находится слева от камеры (с точки зрения расположения камеры) и обращен в направлении пирамиды. Кроме того, источник света связан с камерой, причем камера является родительским объектом, а источник света — порожденным. При изменении положения и угла наклона камеры изменяется также положение и угол наклона источника света. В итоге источник света освещает сцену из точки, расположенной рядом с камерой (рис. 15.25).

Рисунок 15.25 Источник света расположен слева от камеры и связан с ней: а). В визуализированном виде; б). В каркасном виде


6. Источник света следит за пирамидой


В шестом варианте анимации небольшое изменение произошло с источником света. Помимо того что этот источник света связан с камерой, теперь он следит и за пирамидой. В итоге получается более равномерное (и предсказуемое) освещение пирамиды (рис. 15.26).

Рисунок 15.26 Вид диалогового окна Object Attributes для источника света, из которого следует, что родительским объектом является камера, а порожденным - пирамида


7. Слежение за пустым объектом


В седьмом варианте анимация произведены существенные изменения. В четвертом и последующих вариантах анимации слежение за пирамидой означало, что пирамида всегда находилась в центре. Это обусловливает слишком близкую взаимосвязь между движением объекта и камеры. Ни один оператор не в состоянии перемещать камеру совершенно синхронно с отслежи-ваемым объектом. Как правило, для синхронизации требуется некоторое время, обусловленное реакцией оператора. При этом движение камеры либо отстает, либо опережает движение объекта на этот период времени. Кроме того, объект отнюдь не обязательно должен находиться в центре кадра.
Для решения указанной выше задачи был создан специальный пустой объект: сфера. С помощью диалогового окна Object Attributes сфера была скрыта, а затем подверглась анимации, перемещаясь по такому же (хотя и более короткому) пути, что и пирамида (рис. 15.27). Затем камера была установлена для слежения за пустым объектом, в результате чего пирамида оказалась не точно в центре кадра. Это позволило избавиться от искусственного вида анимации.

Рисунок 15.27 Слежение за скрытой сферой вместо пирамиды: а). Каркасный вид сцены сверху; 6). Вид диалогового окна Object Attnbutes для камеры, из которого следует, что камера следит за сферой; в). Вид диалогового окна Object Attnbutes для сферы, из которого следует, что сфера скрыта; г). Визуализированный вид сцены, наблюдаемой е камеру; д). Каркасный вид сцены, наблюдаемой в камеру.


8. Применение операторского крана


Профессиональные кинематографисты применяют подвижные камеры, установленные на операторских кранах, тележках и т.п. Эти устройства используются для перемещения камеры во время съемки кинофильмов. Для получения аналогичного эффекта в анимации, создаваемой в Вгусе, можно сымитировать конструкцию операторского крана и присоединить к нему камеру. В итоге получается совершенно естественное движение, присущее настоящим фильмам.
В восьмом варианте анимации в сцену введен простой операторский кран (рис. 15.28). Он подобен тому крану, который был построен в упражнении со связыванием объектов в главе 7. Этот кран можно посмотреть в файле сцены CAMERA ELBOW CRANE, который находится в папке главы 7 на сопровождающем книгу CD-ROM. Он состоит из куба, точка начала отсчета которого находится внизу. А камера расположена сверху и связана с пирамидой. Вместо камеры в этой конструкции перемещается стрела операторского крана. В данном случае движение камеры обеспечивается вращением стрелы относительно ее оси х. Это вращение определяет высоту расположения камеры при вытягивании стрелы операторского крана.

Рисунок 15.28 Каркасный вид сцены сбоку, где показан операторский кран


9. Вращение относительно двух осей


В этом варианте анимации стрела операторского крана вращается относительно двух осей, благодаря чему определяется высота расположения камеры (по оси х) и положение стрелы операторского крана, когда она разворачивается вправо или влево относительно своей точки опоры (по оси у), если смотреть сверху (рис. 15.29).

Рисунок 15.29 Сверху хорошо видно, как операторский кран поворачивается относительно оси у: а). Влево и б). Вправо. Менее очевидным является вращение операторского крана относительно оси х, однако если развернуть ракурс операторского крана в направлении наблюдателя, это вращение станет более заметным


10. Вращение относительно трех осей


В десятом варианте вводится движение по третьей оси Z. Если принять во внимание доступные пределы движения по двум первым осям, то дополнительное движение по третьей оси лишь сводит на нет движение по остальным осям. Для проверки результатов этого нестандартного движения следует обратиться к файлу 10 CRANE (X&Y&Z AXIS).MOV, который находятся на сопровождающем книгу CD-ROM. Это результат логического расширения пределов движения. Такой способ перемещения будет по-иному использован в последующих примерах.

11. Перемещение операторского крана на тележке


Движению по трем осям можно найти и другое применение. Например, можно перемещать стрелу операторского крана и одновременно вращать ее по двум другим осям.
В одиннадцатом варианте анимации используется перемещение всей конструкции операторского крана на тележке. В этом случае операторский кран перемещается на тележке в направлении, противоположном движению пирамиды. В том месте, где камера поворачивает, на кривой распределения времени введено замедление движения операторского крана на тележке, чтобы не вызвать головокружение у зрителей. Откройте файл сцены и посмотрите, что без указанной выше настройки кривой распределения времени получился бы эффект головокружения, которого нам удалось избежать. Для отображения подлежащих анимации свойств операторского крана следует щелкнуть на элементе Crane Base в иерархическом списке лаборатории развитого движения, а затем щелкнуть на свойстве Path Position, чтобы увидеть кривую распределения времени для операторской тележки (рис. 15.30).

Рисунок 15.30 Перемещение операторского крана на операторской тележке: а). В начале; б). Посередине; в). В конце анимационной последовательности


12. Слежение на полпути


В двенадцатом варианте анимации применяется еще один способ перемещения операторского крана на тележке. В этом случае операторский кран начинает перемещаться вместе с пирамидой и останавливается на полпути. Место его остановки соответствует расположению камеры в большинстве предыдущих вариантов анимации (рис. 15.31).

Рисунок 15.31 Другой способ перемещения операторского крана на тележке, при котором кран: а). Начинает перемещаться приблизительно с того же места, что и пирамида; б). Останавливается на полпути и остается в этом положении до конца анимационной последовательности


13. Перемещение и вращение операторской тележки


В этом варианте дополнительно введено перемещение и одновременное вращение операторской тележки. (Чтобы разобраться с этой сценой, очень важно проанализировать действие в предыдущей сцене.) Это один из тех видов движения, которые намного проще получить в приложении трехмерного моделирования, чем в настоящей студии. Для обеспечения дополнительной степени свободы, возможно, имеет смысл добавить к операторскому крану еще одно соединение (рис. 15.32).

Рисунок 15.32 Еще один способ перемещения операторского крана на тележке, при котором тележка перемещается и вращается: а). Вид сцены в начале анимационной последовательности; б). Вид сцены в конце анимационной последовательности


14. Коленчатый операторский кран


В этом варианте анимации вводится дополнительное движение с помощью коленчатого операторского крана. Первое его соединение действует аналогично рассмотренному выше, а второе соединение действует подобно угловому шарниру на основе сферы, к которой присоединена пирамида. Точка начала отсчета пирамиды находится у ее основания, т.е. рядом со сферой. Преимущество применения коленчатого операторского крана состоит в увеличении диапазона перемещения камеры по высоте: от самой высокой точки до уровня расположения объекта съемки.
Для перемещения коленчатого операторского крана необходимо сначала установить угол вращения основного соединения, а затем повернуть угловой шарнир. Вращать пирамиду при этом не следует, поскольку она связана со сферой. Это движение напоминает движение руки, соединенной с плечом.
После поворота основного соединения и углового шарнира, возможно, придется вернуться назад и снова настроить основное соединение, чтобы установить камеру в более подходящее положение. К сожалению, настроить оба соединения одновременно в Вгусе невозможно. Этому варианту движения камеры все-таки чего-то не хватает — может быть оно получается слишком укороченным (рис. 15.33). Чтобы исправить это положение введена операторская тележка, благодаря которой вся конструкция движется на некотором удалении от пирамиды.

Рисунок 15.33 Перемещение камеры на коленчатом операторском кране а). Вид сцены в начале анимационной последовательности; б). Вид сцены в конце анимационной последовательности


15. Коленчатый кран на операторской тележке


В этом варианте анимации коленчатый кран перемещается на операторской тележке, а его колено одновременно разворачивается (рис. 15.34).

Рисунок 15.34 Коленчатый кран на операторской тележке: а). Вид сцены в начале анимационной последовательности; б). Вид сцены в конце анимационной последовательности


16. Коленчатый кран на операторской тележке перемещает камеру впереди пирамиды


В этом варианте анимации коленчатый кран и операторская тележка перемещаются таким образом, что камера оказывается впереди пирамиды (рис. 15.35).

Рисунок 15.35 Коленчатый кран на операторской тележке перемещает камеру впереди пирамиды: а). Вид сцены в начале анимационной последовательности; б). Вид сцены в конце анимационной последовательности


17. Коленчатый операторский кран перемещается вместе с пирамидой


В этом варианте анимации коленчатый операторский кран связан с пирамидой, и поэтому он перемещается совершенно синхронно с ней. В то же время кран перемещает камеру из верхнего положения над пирамидой вниз и впереди нее. Вращение коленчатого операторского крана происходит таким же образом, как и в предыдущем варианте анимации (рис. 15.36).

Рисунок 15.36 Коленчатый операторский кран связан с пирамидой, благодаря чему камера перемещается вместе с пирамидой: а). Вид сцены в начале анимационной последовательности; б). Вид сцены в конце анимационной последовательности


18. Операторский кран разворачивается позади цилиндров


В этом последнем варианте анимации камера начинает движение позади пирамиды, разворачивается позади цилиндров, перемещается дальше, в затем оказывается впереди пирамиды вплоть до ее остановки (рис. 15.37).

Рисунок 15.37 Благодаря перемещению коленчатого крана на операторской тележке камера может а). Начать движение позади пирамиды в начале анимационной последовательности; б). Переместиться позади цилиндров по мере продвижения крана вперед вместе с пирамидой; в). Оказаться впереди пирамиды в конце анимационной последовательности


Как можно заметить, вариантов движения камеры может быть бесконечное множество. Тем не менее, приведенные выше примеры показывают, как начиная с неподвижной камеры, наблюдающей за движением пирамиды, можно постепенно ввести в сцену освещение и следить с помощью источников света за движущимися объектами. Затем камера приобретает более сложное движение, в большей степени соответствующее движению настоящих камер, которое обеспечивают операторские краны и тележки, применяемые в кинематографе. Используя представленные выше примеры в качестве отправной точки, разработайте экспериментальным путем собственные варианты движений камеры.

Разновидность связывания камеры


Во всех приведенных выше примерах камера была связана со стрелой операторского крана. Здесь будет рассмотрена разновидность данного принципа связывания, который был разработан Майклом Фенимором (Michael Fenimore) (под псевдонимом M'Kell в дискуссионной группе BryceTal k) и привлек наше внимание. Это разновидность принципа "вспомогательного средства перемещения", рассмотренного в главе 6. В данном случае камера связывается со сферой, а затем вместо камеры по сцене перемещается сфера. Преимущество данного метода состоит в том, что при этом исключается необходимость изменять угол наклона и фокус камеры, что вполне возможно, если не щелкать и не выполнять перетаскивание в конкретное место. Этот метод применяется как в неподвижных, так и в анимационных сценах.
Мы попробовали применить этот метод по-новому для формирования пути движения камеры, который повторяет контуры расположенной мозаикой местности. В течение определенного времени сфера последовательно перемещалась над разными участками местности, а затем опускалась на них. В итоге получилась траектория, которая повторяет контуры местности. Затем эта траектория была откорректирована и превращена в путь. После этого было настроено горизонтальное положение пути и далее с ним была связана камера. Полученный в результате фильм можно посмотреть, обратившись к файлу TERRAIN TILING CAMERA.MOV, который находится в папке настоящей главы на сопровождающем книгу CD-ROM.
Дополнительные методы связывания будут представлены далее в этой главе.

Специальные приемы формирования движения


В разных главах этой книги возможности лаборатории развитого движения упоминались в связи с характерным для объектов свойством иметь точку начала отсчета, которая не находится в их центре. Например, выше было показано, как точка начала отсчета, расположенная в основании объекта, приводит в действие операторский кран.

Маятник


Маятник представляет собой предмет, который раскачивается и затем движется только под действием силы тяжести. Распространенной интерпретацией такого движения является попеременное движение вперед и назад. В Вгусе попеременное движение или поведение объектов во время их анимации применяется в двух или даже трех местах. Оно будет использовано в сцене маятника, которая может служить в дальнейшем в качестве упражнения по созданию попеременного движения. Попутно будут пояснены особенности каждой разновидности попеременного движения.

Сцена маятника


Рабочая часть маятника состоит из трех объектов. В нижней его части находится груз в виде сферы, соединенной с цилиндром, который, в свою очередь, соединяет вес с вращающейся частью маятника. В качестве вращающейся части (точки опоры) здесь используется небольшой цилиндр. В иерархии связывания объектов вращающийся цилиндр является родительским объектом. Его порожденным объектом является удлиненный цилиндр натяжения, который, в свою очередь, служит в качестве родительского для сферы груза (рис. 15.38).

Рисунок 15.38 Сцена маятника: а). Каркасный вид спереди; б). Визуализированный вид из точки наблюдения камеры


С другой стороны, можно создать более простой маятник, состоящий из двух объектов. Для этого следует исключить небольшой цилиндр вращения и переместить точку начала отсчета цилиндра натяжения в его верхнюю часть, чтобы вся конструкция вращалась относительно этой точки.

Анимация раскачивания маятника в одну сторону


В папке настоящей главы на сопровождающем книгу CD-ROM имеются два файла сцены маятника. В файле PENDULUM находится завершенная анимационная сцена, которая может служить в качестве справки, а в файле PENDULUM-NOANIM — та же сцена, но без анимации. В приведенном ниже упражнении следует работать со второй сценой, для внесения изменений в которую режим Auto-Key должен быть отключен.
  1. Перейдите к виду спереди (нажав клавишу 4). При этом должен быть выделен небольшой цилиндр. Этот объект называется Cylinder Pendulum Parent (Родительский цилиндрический объект маятника).
  2. Ползунок временной шкалы должен находиться на временной отметке 00:00:00.00. Нажмите кнопку мыши на кнопке Add Keyframe для вызова одноименного всплывающего меню и выберите из него пункт Cylinder Pendulum Parent > Rotation. Индикатор ключевого кадра становится темнее (рис. 15.39а).
  3. Переместите ползунок временной шкалы на 2 секунды вперед (к временной отметке 00:00:02.00).
  4. А теперь поверните цилиндр таким образом, чтобы маятник качнулся в другую сторону. Обратите внимание на текущее положение маятника, чтобы оценить, где именно должно завершиться его вращение.
    Поместите указатель мыши в центральной управляющей точке цилиндра. При этом он изменяет свой вид на курсор оси z. Нажмите клавишу Cmd/Ctrl и выполняйте перетаскивание влево до тех пор, пока маятник не качнется в другую сторону (рис. 15.39б).

    Рисунок 15.39 Работа над анимацией вращения в сцене маятника (вид спереди): а). Ввод первого ключевого кадра; 6). Вид сцены после вращения маятника вправо


  5. Введите еще один ключевой кадр, выбрав из вплыва ющего меню Add Keyframe пункт Cylinder Pendulum Parent > Rotation (аналогично п. 2).
Таким образом, осуществлена анимация движения маятника при его раскачивании слева направо. Единственным объектом на сцене, который в данном случае подлежит анимации, является объект Cylinder Pendulum Parent. Его движение определяется двумя ключевыми кадрами, установленными в точке остановки маятника в крайнем левом положении, а также в точке его остановки в крайнем правом положении. Для правильного раскачивания маятника в обоих направлениях требуется дополнительная настройка.

Формирование движения маятника с помощью кривой распределения времени


Продолжим работу над сценой маятника в лаборатории развитого движения.
  1. Перейдите в лабораторию развитого движения и щелкните на элементе Cylinder Pendulum Parent в иерархическом списке, чтобы отобразить свойства данного объекта, которые подлежат анимации. В данном случае вращение (Rotation) является единственным таким свойством. (В этом и заключается преимущество работы в неактивном режиме Auto-Key!)
  2. Щелкните на элементе Rotation, чтобы выделить его желтым цветом. В области редактора распределения времени появляется стандартная диагональная линия.
  3. А теперь выберите колоколообразную кривую распределения времени, щелкнув на ней в списке предварительно заданных кривых. В итоге она появится в области редактора распределения времени (рис. 15.40а).

    Рисунок 15.40 Кривая распределения времени для маятника: а). Предварительно заданная кривая, которая превращает движение по прямой в попеременное движение; б). Вид кривой после ее корректировки для замедления движения при раскачивании маятника вправо


  4. Щелкните на кнопке Play. Маятник раскачивается слева направо и обратно.
    Кривая распределения времени, назначенная для вращения цилиндра, определяет два аспекта движения. Прежде всего колоколообразная форма этой кривой позволяет распределить время в прямом и обратном направлениях. Посередине промежутка времени между начальным (00:00:00.00) и конечным (00:00.02) моментами движения черта текущего времени пересекается с чертой текущего события на вершине данной кривой, т.е. в точке раскачивания маятника вправо. Это происходит в момент времени, равный 1 секунде (00:00.01). По мере продвижения времени в промежутке от 1 секунды к 2 секундам обе указанных выше черты следуют вниз по спускающейся кривой распределения времени, в результате чего события разворачиваются в обратном направлении. При этом цилиндр вращается в обратном направлении, а маятник раскачивается влево. Форма данной кривой определяет, в основном, движение маятника, вынуждая его раскачиваться то в одну, то в другую сторону, тогда как ранее он раскачивался только в одном направлении. Раскачивание маятника слева направо, запланированное первоначально в течение 2 секунд, сокращено в два раза, и теперь происходит в течение 1 секунды.

    СОВЕТ
    Планируя анимацию с использованием кривой, определяющей попеременное движение, следует установить в два раза больший промежуток времени между ключевыми кадрами. При назначении соответствующей кривой распределения времени этот промежуток времени сокращается наполовину.

    Кроме того, рассматриваемая кривая распределения времени позволяет настроить скорость движения маятника таким образом, чтобы его раскачивание начиналось медленно, достигало максимальной скорости посередине раскачивания вправо и замедлялось в крайнем правом положении, затем снова ускорялось при раскачивании в обратном направлении, постепенно замедляясь при достижении левого крайнего положения. К сожалению, предварительно заданная колоколообразная кривая не обеспечивает замедление движения в обоих крайних положениях маятника в равной степени — в крайнем левом положении замедление оказывается больше, чем в крайнем правом положении.
  5. Видоизмените кривую распределения времени, сделав более плоской ее вершину (которая соответствует крайнему правому положению маятника при его раскачивании). Благодаря этому вершина кривой в большей степени соответствует форме кривой на обоих ее концах (рис. 15.40б).
После размещения обеих новых точек на кривой рекомендуется проверить симметричность расположения этих точек на кривой с помощью горизонтальной и вертикальной черт.

Повторение действия во времени


До сих пор речь шла лишь об одном событии: раскачивании маятника из одной стороны в другую. Однако нам требуется, чтобы маятник раскачивался до полной остановки. Чтобы решить эту задачу, необходимо увеличить продолжительность анимации сцены маятника свыше 2 секунд.
  1. Дважды щелкните на ползунке временной шкалы в основном окне Вгусе, чтобы вызвать диалоговое окно Animation Setup. Введите в поле Seconds, которое находится в области Duration, значение, кратное 2 секундам (например, 12, 14 или 30 секунд). Сделайте также активным режим Extend or Clip, a затем выйдите из данного диалогового окна.
    Если продолжительность анимации не будет установлена кратной 2 секундам, тогда она завершится где-то посередине раскачивания маятника.
    А теперь, когда установлена продолжительность раскачивания маятника, необходимо сообщить цилиндру непрерывное вращение, чтобы маятник раскачивался в течение всей анимации. Для этого его вращение необходимо сделать повторяющимся свыше 2 секунд.
  2. Перейдите в лабораторию развитого движения и непременно сделайте видимым свойство Rotation объекта Cylinder Pendulum Parent в иерархическом списке. Нажмите кнопку мыши на наименовании свойства Rotation, удерживая нажатой клавишу Shift. При этом появится всплывающее меню, как показано на рис. 15.41. Выберите из этого меню режим Make Repeat и щелкните на кнопке Play. Маятник должен раскачиваться в течение всей анимации.
Рисунок 15.41 Всплывающее меню, с помощью которого изменяется режим анимации любого свойства объекта в иерархическом списке


Благодаря тому что действие в данном примере носит один и тот же характер при движении маятника в прямом и обратном направлении, для повторения этого действия можно установить любой из режимов Make Repeat или Make Pendulum. Есть ли какое-то отличие между этими режимами? На рис. 15.42 показана стандартная кривая распределения времени, установленная для понижения/повышения инерционности движения в режимах Make Repeat и Make Pendulum. Существенное отличие между этими режимами проявляется в том случае, когда кривая распределения времени оказывается несимметричной.

Рисунок 15.42 Кривые распределения времени, выбранные для различных режимов повторения движения: в верхнем ряду кривая установлена в режиме Make Repeat, а в среднем ряду та же кривая установлена в режиме Make Pendulum. Для сравнения в нижнем ряду приведена предварительно заданная кривая распределения попеременного движения в режиме Make Repeat Общая форма этой кривой сходна с кривой в режиме Make Pendulum, однако ее период меньше


Возможности создания попеременного движения не исчерпываются применением кривых распределения времени в указанных выше режимах. В закладке Animation диалогового окна Object Attributes также предоставляется возможность выбрать попеременное движение. Однако параметры, которые имеются в этой закладке, относятся только к расположению траектории объекта. Поэтому если требуется получить попеременное (или фактически повторяющееся) действие вращения, изменения размера или другого подлежащего анимации свойства объекта, не следующего по заданной траектории, необходимо воспользоваться описанными выше режимами, выбираемыми из всплывающего меню в лаборатории развитого движения.

Пульсирующий свет


Пульсирующий свет служит еще одним примером применения режима повторения анимации наряду с благоразумным использованием кривых распределения времени в лаборатории развитого движения. В данном случае происходит не перемещение объектов, а изменение яркости и видимости источников света. Вначале источники света оказываются яркими, а затем они постепенно гаснут. Анимация, собственно, происходит в течение первых пяти кадров, а затем она повторяется, и благодаря этому возникает пульсация в течение всей анимационной последовательности. На рис. 15.43 показаны фрагменты анимации пульсирующего света, которую можно полностью посмотреть в файлах PULSINGLIGHT.MOV и PULSINGLIGHT в папке настоящей главы на сопровождающем книгу CD-ROM.

Рисунок 15.43 Анимация пульсирующего света, в которой яркость пульсирующих источников света постепенно ослабевает


Рассмотрим, каким образом осуществляется анимация источников света. Несмотря на то что каждый из трех источников света настроен в редакторе распределения времени иначе, их анимация, в основном, осуществляется сходным образом. Итак, выделите все три источника света и перейдите в лабораторию развитого движения. Чтобы увидеть все свойства источников света, которые подлежат анимации, придется немного развернуть иерархический список. Для упрощения вида этого списка непременно выберите режим Show Animated из всплывающего меню AML Options, а затем щелкните на наименовании любого источника света.
В данном случае анимации подлежат следующие два свойства источников света: яркость (Intensity) и материал (Material). Для свойства Intensity установлены два ключевых кадра, которые соответствуют большой и малой яркости источника света. В качестве свойств материала источника света анимации подлежат свойства Base Density и Fuzzy Factor. (Несмотря на то что в лаборатории развитого движения указывается также подлежащее анимации свойство Volume Softness, оно не оказывает заметного влияния на анимацию.) Каким же образом выбираются свойства материала, которые подлежат анимации? В связи с тем что в диалоговом окне Edit Light установлен режим Volume Visible и благодаря тому что видимость объема регулируется в лаборатории материалов, анимации подлежат те свойства объема, которые делают его менее видимым, что согласуется с уменьшением яркости света во втором ключевом кадре. Два ключевых кадра, установленных для свойств материала, определяющих большую и малую плотность объема, соответствуют ключевым кадрам, установленным при большой и малой яркости источника света.
Анимация каждого источника света начинается и завершается одновременно, хотя и с некоторыми едва заметными особенностями настройки согласования этого процесса во времени. Пульсация света определяется выбранной кривой распределения времени, которая оказывается разной для каждого пульсирующего источника света. В частности, кривая для находящегося справа зеленого источника света представляет собой прямую линию, изменяющую яркость от максимальной до минимальной величины. Для желтого источника света применяется стандартная кривая понижения/повышения инерционности движения. А кривая для находящегося справа источника света сделана более пологой слева (т.е. там, где свет оказывается ярким). Это означает сначала медленное, а затем постепенно ускоряющееся понижение яркости света.
К другим возможным примерам применения подобного рода анимации можно отнести краткую вспышку света в полной, темноте, а также постепенное увеличение и уменьшение яркости света. Во втором примере такой анимации, приведенном в файле PULSE-PENDULUM. MOV, режим анимации был изменен с Make Repeat на Make Pendulum, благодаря чему яркость света то постепенно увеличивается, то постепенно уменьшается. В этом случае происходит повторяющееся изменение наклона кривой распределения времени то в одну, то в другую сторону, как показано в среднем ряду на рис. 15.42.

Орбита


В анимации солнца и орбиты планеты (приведенной в файле ORBIT-ORIGIN в папке настоящей главы на сопровождающем книгу CD-ROM) для создания орбиты точка начала отсчета одного объекта (планеты) была перемещена за его пределы. Эта точка размещена в центре солнца, поэтому когда планета вращается вокруг солнца, она на самом деле вращается по солнечной орбите.

Установка орбиты на основании точки начала отсчета


В данной сцене принимают участие три основных объекта: солнце, планета и луна. После создания этой сцены основным действием в ней является вращение объектов. На рис. 15.45 приведены три следующих друг за другом кадра с изображением орбиты в каркасном виде сверху.

Рисунок 15.45 Каркасный вид орбиты сверху в трех следующих друг за другом кадрах анимации


Такое расположение небесных тел обладает одним недостатком. В настоящей вселенной луна все время обращена одной стороной к планете, однако планета не все время обращена одной стороной к солнцу, как это имеет место в созданной выше модели. Она вращается вокруг собственной оси, а также вокруг солнца. Чтобы реализовать разные виды вращения небесных тел, нам пришлось применить другой подход, создав отдельный объект для орбиты: круговой путь.

Создание кругового пути (траектории)


В качестве первого этапа создания пути для перемещения по орбите была создана идеальная круговая траектория, а затем на ней была установлена планета для перемещения по этой траектории и одновременного вращения вокруг собственной оси, в то время как луна продолжала перемещаться как прежде.

Создание кругового пути (траектории)


Для создания круговой траектории был открыт файл новой сцены. Создание объекта пути является промежуточным этапом, поэтому для завершения работы над круговой формой пути была использована копия сцены орбиты. Прежде всего был создан цилиндр, который затем увеличен таким образом, чтобы окружность его основания совпадала по размеру с каркасным представлением плоскости земли. Этот цилиндр служит в качестве шаблона, обозначающего идеальную форму окружности. Его высота в данном случае не имеет никакого значения, поэтому она была уменьшена до такой степени, чтобы цилиндр стал практически плоским.
Далее была создана сфера в активном режиме Auto-Key. После перехода к виду сверху сфера была размещена на верхнем краю цилиндра в точке, соответствующей 12 часам (рис. 15.46а). Этот процесс был повторен для установки сферы в последующих положениях. После продвижения вперед на 10 кадров (это число выбрано для удобства) в результате нажатая 10 раз на кнопке точки (.) сфера была перемещена в следующее положение, соответствующее 3 часам. Для этого пришлось нажать 16 раз клавишу стрелки, указывающей в одном направлении, а затем еще 16 раз клавишу стрелки, указывающей в другом направлении. После этого ползунок временной шкалы был перемещен еще на 10 кадров вперед, а сфера — в положение, соответствующее 6 часам. Затем было совершено продвижение еще на 10 кадров вперед, а сфера была перемещена в положение, соответствующее 9 часам (рис 15.46б).

Рисунок 15.46 Размещение точек идеальной окружности. Вид сверху: а). После размещения начальной точки; б). После размещения второй точки; в). После размещения третьей точки; г). После размещения четвертой точки


Чтобы замкнуть круг, было совершено продвижение еще на 10 кадров вперед, а сфера перемещена в произвольное положение (причина этого будет объяснена несколько ниже). Для окончательного замыкания круга потребовалось щелкнуть на кнопке Make Circular в закладке Animation диалогового окна Object Attributes. При этом получилась не круговая, а ромбовидная траектория (рис. 15.47а). Здесь на помощь пришла клавиша Т, позволяющая регулировать натяжение кривой. В каждой созданной выше точке была установлена величина натяжения -0.4. После этого траектория практически совпала с контуром цилиндра, став идеально круговой (рис. 15.47б). Далее эта траектория была превращена в путь.

Рисунок 15.47 3амыкание и корректировка формы окружности. Вид сверху: а). После создания круговой траектории; 6Х После регулировки величины натяжения -0.4 во всех точках траектории


Как только путь создан, его можно скопировать и вставить в файл другой сцены либо сохранить в качестве объекта пути в библиотеке предварительно заданных объектов для последующего применения в файлах других сцен.

Восстановление сцены


В используемой копии файла исходной сцены работать прежде всего пришлось со сферой планеты. Для этого точка начала отсчета этой сферы была возвращена в ее центр. (Эта операция может быть выполнена следующими двумя способами: щелкните на точке начала отсчета, удерживая нажатой клавишу Shift, либо введите соответствующие ее координаты в диалоговом окне Object Attributes, разблокировав взаимосвязь между объектами планеты и луны и приведя координаты точки начала отсчета в соответствие с координатами положения сферы.) После этого луна отдалилась от планеты, поскольку ее взаимосвязь с планетой определяется ее смещением относительно точки начала отсчета земли, которая была перемещена из центра солнца в центр планеты (чтобы увидеть это, нажмите клавишу 2 для перехода к виду сверху).
В связи с тем что луна является порожденным объектом планеты, в результате возврата точки начала отсчета планеты в исходное положение луна переместилась в новое положение, чтобы сохранить неизменным соотношение между положением луны и точки отсчета планеты. Для того чтобы положение точек отсчета луны и планеты совпадало, в диалоговом окне Object Attributes были введены те же самые координаты точки отсчета луны, которые были предварительно отмечены для точки отсчета планеты. При этом координаты положения луны остались без изменения, поскольку необходимо было сохранить неизменным соотношение между положением луны и точки отсчета планеты. Как только были изменены координаты точки отсчета луны, в лаборатории развитого движения произошли два изменения в подлежащих анимации свойствах. Во-первых, в самом конце анимации был введен ключевой кадр, обозначающий завершение вращения планеты. И во-вторых, в свойстве вращения луны произошла смена режима с Make Repeat на Make One-Shot. Поэтому в лаборатории развитого движения был выделен и удален завершающий ключевой кадр на временной шкале свойства Rotation, а затем был выполнен щелчок на метке Rotation при одновременно нажатой клавише Shift для выбора режима Make Repeat из всплывающего меню.
Несмотря на все указанные выше изменения в лаборатории развитого движения, луна вращается таким же образом, как и в исходной сцене. А вот планета вращается на месте и не перемещается по орбите вокруг солнца. В исходной сцене вращение планеты, по существу, определяло ее положение. Однако на сей раз положение планеты отделено от ее вращения, и поэтому она вращается свободно.
На следующем этапе основное внимание было уделено положению планеты.
Напомним, что для этого ранее был создан круговой путь. Поэтому этот путь был загружен из библиотеки предварительно заданных объектов в данную сцену, а затем его размер был удвоен с помощью клавиши * (умножения). Далее сфера планеты была связана с круговым путем, а ее положение было ограничено точкой 0 на этом пути.
В связи с тем что в данном варианте анимации помимо вращения планеты по солнечной орбите и вращения луны по планетарной орбите планета вращается вокруг собственной оси, для получения правильного соотношения между разными видами вращения масштаб времени всей анимации (ее продолжительности) был увеличен почти в четыре раза (до 384 кадров). В соответствии с новой общей продолжительностью анимационной последовательности пришлось расширить рабочий диапазон анимации. Затем планете было сообщено вращение вокруг собственной оси х в течение пяти кадров. Следует заметить, что в данном случае все виды вращения продолжались до -359.5°, поскольку вращение с полным оборотом ±360° оказывалось неверным. (Способ идеального вращения с полным оборотом на 360° будет рассмотрен в разделе "Объектный фильм формата QTVR" далее в этой главе.) После этого ползунок временной шкалы был перемещен к завершающему ключевому кадру, а положение планеты ограничено точкой 100.0 на круговом пути.
После установки всех ключевых кадров в лаборатории развитого движения была проведена небольшая очистка. В частности, в самом конце анимационной последовательности вращения планеты был удален завершающий кадр (подобно тому, как это было сделано ранее со свойством вращения луны), а затем в свойстве Rotation был установлен режим Make Repeat.
На рис. 15.48 показан каркасный вид сцены сверху в начале анимационной последовательности наряду со свойствами объектов планеты и луны.

Рисунок 15.48 Вид орбиты вращения системы небесных тел солнце-планета-луна и диалогового окна Object Attributes с параметрами настройки планеты и луны


Движение по спирали


Движение по спирали является разновидностью смещения точек начала отсчета и вращения. Чтобы сообщить объекту движение по спирали, достаточно изменить расстояние от этого объекта до его точки начала отсчета во времени, а затем повернуть его вокруг точки начала отсчета.

Винтовая спираль


В сцене движения по спирали (см. файлы HELIX и HELIX.MOV) три пирамиды изменяют свое положение с высокого на низкое. В этой сцене точки начала отсчета пирамид были перемещены из центра этих объектов. В частности, точка начала отсчета объекта, расположенного на сцене слева (рис. 15.49), остается на неизменном расстоянии до объекта. А у двух других пирамид (расположенных посередине и справа) точка начала отсчета находится в центре в самом начале анимационной последовательности. По мере перемещения такого объекта вниз его точка начала отсчета все дальше и дальше удаляется от исходной центральной точки. Две последние пирамиды перемещаются вниз по более широкой спирали, тогда как левая пирамида перемещается прямо вниз по спирали, образуемой стороной воображаемого цилиндра.

Рисунок 15.49 Анимация движения по спирали, которая формируется в результате вращения и размещения точки начала отсчета объекта в разном положении. Точка начала отсчета объекта, находящегося слева, смещена на постоянное расстояние, а положение точек начала отсчета объектов, находящихся посередине и справа, постепенно изменяется от центра объекта в начале анимационной последовательности до максимального смещения в ее конце


Для создания анимации движения по винтовой спирали с постоянным смещением точки начала отсчета (подобно тому, как это происходит с левой пирамидой) выполните пункты следующей процедуры (в активном режиме Auto-Key):
  1. Создайте объект, сделайте видимой его точку начала отсчета, а затем сместите ее относительно центра объекта.
  2. Разместите объект в начале спирали. Если объект спускается по спирали, то его следует разместить повыше (рис. 15.50а).
  3. Переместите ползунок временной шкалы к новой временной отметке и разместите объект в конце спирали, т.е. пониже. В данном случае получается простая смена высокого положения объекта на низкое (рис. 15.506).
  4. Оставаясь на новой временной отметке, поверните объект вокруг его оси у. (Чтобы ограничить пошаговое вращение объекта углом 45°, нажмите клавишу Shift во время вращения.) Не выполняйте вращение с полным оборотом на 360° или кратно 360° (720, 1080 и т.д.) (рис. 15.50в).
  5. Проверьте полученную анимацию движения по спирали. (Для примера обратитесь к файлу сцены HOW HELIX 1-2-3).
Рисунок 15.50 Создание простой винтовой спирали в виде сверху, а). Пирамида со смещенной точкой начала отсчета, расположенная высоко в начале анимационной последовательности; б). Пирамида, расположенная низко в конце анимационной последовательности; в). Пирамида, повернутая в конце анимационной последовательности для создания спирали


Спираль


Для формирования спирали, радиус которой со временем изменяется, выполните пункты следующей процедуры:
  1. Создайте объект, сделайте видимой его точку начала отсчета, а затем разместите его в начале спирали (в данном случае в высокой точке). Вид данной сцены спереди показан на рис. 15.51а.
  2. Переместите ползунок временной шкалы к новой временной отметке и расположите объект в конце спирали, т.е. пониже (рие. 15.516).
  3. Щелкните на кнопке Hide Trajectory в закладке Animation диалогового окна Object Attributes. Затем переместите точку начала отсчета объекта влево, чтобы изменить ее положение. Для ограничение перемещения по оси х нажмите клавишу Control/Ctrl. Результат выполнения этого шага приведен на рис. 15.51в.
    Причина скрытия траектории заключается в том, что управляющие точки траектории обладают большим приоритетом по сравнению с точкой начала отсчета. Благодаря скрытию траектории этот приоритет отдается точке начала отсчета.
  4. Щелкните на кнопке Show When Selected в закладке Animation диалогового окна Object Attributes, чтобы сделать траекторию вновь видимой. Полученный результат должен выглядеть аналогично рис. 15.51г. Следующий этап заключается в смещении точки начала отсчета в исходное положение в конце анимационной последовательности.
  5. Вернитесь в начало анимационной последовательности. Проверьте свойства объекта, отметив положение точки начала отсчета по оси х (рис. 15.51д). Перейдите в конец анимационной последовательности и откройте диалоговое окно Object Attributes. Введите отмеченное выше числовое значение положения точки начала отсчета по оси х (в данном случае нуль). Естественно, что положение точки начала отсчета по оси у изменилось, поскольку изменилось вертикальное положение объекта. А ее положение по оси z не изменилось, поскольку в п. 3 перемещение точки начала отсчета было ограничено по оси х (рис. 15.51е).
    С другой стороны, можно снова ограничить перемещение точки начала отсчета по оси х таким образом, чтобы она заняла положение ниже предыдущего. А поскольку траектория в данном случае видна, перемещаться будет не одна лишь точка начала отсчета, а весь объект. Поэтому для точного перемещения точки начала отсчета придется обратиться к диалоговому окну Object Attributes.
  6. Завершающий этап состоит во вращении объекта вокруг его оси у в конце анимационной последовательности. Избегайте вращения с полным оборотом на 360° или кратно этому значению (рис. 15.51ж).
  7. Проверьте полученную анимацию.
Рисунок 15.51 Создание спирали, которая расширяется по мере продвижения объекта вниз: а). Вид объекта вместе с его точкой начала отсчета в начале анимационной последовательности; б). Вид объекта в конце анимационной последовательности; в). Вид объекта после скрытия траектории и смещения его точки начала отсчета; г). Вид объекта после повторного отображения траектории; д). Свойства объекта в начале анимационной последовательности; е). Свойства объекта в конце анимационной последовательности, когда точка начала отсчета возвращается в исходное положение по оси x, ж). Вид объекта после вращения


Создание спиралей с помощью путей


Еще один способ создания спиралей состоит в формировании конкретного спирального пути. Это разновидность описанного выше метода создания кругового пути. Чтобы траектория равномерно снижалась (или повышалась), в каждой четверти круга следует нажать клавишу Page Down (или Page Up). Следует заметить, что параметры настройки конечных точек траектории иные, чем у тех, что находятся посередине траектории: величина непрерывности (Continuity) в этих точках равна 1.00, а величина натяжения (Tension) — 0.3. Обратите внимание на то, что это положительные значения. Естественно, что поскольку объект перемещается по спиральной траектории, его начальное положение не совпадает с конечным. Поэтому в данном случае в диалоговом окне Object Attributes не был выбран режим Make Circular. Каркасный вид сцены из файла HELIX TRAJECTORY приведен на рис. 15.52.

Рисунок 15.52 Спиральная траектория, полученная в результате анимации объекта с использованием метода формирования кругового пути, где вертикальное положение объекта изменялось в каждой четверти круга


Безусловно, траектория служит в качестве основания для формирования пути. Преимущество пути состоит в том, что его размер может быть изменен в целом. На рис. 15.53 показан путь, сформированный на основании траектории, показанной на рис. 15.52, удлиненной по вертикали и в то же время укороченной по горизонтали.

Рисунок 15.53 Спиральный путь, сформированный из траектории, удлиненной по вертикали и укороченной по горизонтали


Для создания фильма, демонстрирующего спиральный путь (HELIX PATH.MOV), перемещение сферы было ограничено этим путем. Несмотря на то что сфере не было сообщено вращение во время скатывания по спирали, нам все же удалось правильно передать ускоренное движение сферы вниз по спирали с помощью стандартной кривой распределения времени (эта кривая имеет в начале пологий наклон, который постепенно становиться круче).
Еще более интересного результата движения по спирали удалось добиться в сцене RINGS N THINGS, приведенной на рис. 15.54, где перемещение целого ряда торов ограничивается заданным путем. Эти торы не подлежат анимации. Чтобы обратить все эти торы в нужном направлении, мы установили их в режим слежения за центральным цилиндрическим объектом по оси х. Если бы они оказались выровненными по заданному пути, то в силу присущей пути извилистости и кривизны создание подобной сцены оказалось бы совершенно безнадежным делом.

Рисунок 15.54 Разновидность спирального пути в сцене RINGS N THINGS, показанной: а). В каркасном виде; б). В визуализированном виде


Помимо этого, для формирования пути из спиральной траектории можно изменить высоту расположения объекта (в сторону повышения или понижения), а также размер окружности, с тем чтобы спираль свивалась плотнее. Это оказалось непростым делом, но в итоге получился путь, приведенный на рис. 15.55.

Рисунок 15.55 Спиральная траектория: а). Вид камеры; 6). Вид сверху. Спиральная форма траектории была получена благодаря изменению высоты и размера круга с использованием цилиндров и направляющих


Зубчатые колеса


Отвлекшись от сцен природных ландшафтов и углубившись в детали механизмов, мы получили свой вариант сцены The Way Things Work (Принцип действия), созданной Дэвидом Маколэем (David Macaulay), для исследования принципа действия зубчатых колес. В итоге получилась сцена, показанная на рис. 15.56. Число зубов у зубчатого колеса прямо пропорционально длине его окружности, поэтому у большего зубчатого колеса, число зубов в два раза больше, чем в меньшего зубчатого колеса. (Длина окружности равна удвоенному ее радиусу по оси х или z, умноженному на число р.) Зубчатые колеса вращаются в противоположных направлениях, причем меньшее зубчатое колесо вращается в два раза быстрее большего зубчатого колеса.

Рисунок 15.56 Соотношения для двух зубчатых колес, используемые в их конструкции и анимации: размер и число зубов меньшего зубчатого колеса в два раза меньше, чем у большего зубчатого колеса, а вращается оно в два раза быстрее


Объектный фильм формата QTVR


Объектный фильм формата QTVR представляет собой интерактивный фильм, который дает возможность рассматривать объект со всех сторон. В результате разделения интерактивного фильма на отдельные неподвижные изображения объекта получается множество видов объекта по двум осям. Этот ряд видов необходимо сформировать для создания собственного фильма формата QTVR. Поэтому объект следует отснять во всех видах, как показано на рис. 15.57а. Каждое пересечение белых трубок на этом рисунке представляет собой точку наблюдения объекта. С другой стороны, для создания такого фильма можно ограничить число видов, из которых наблюдается объект, как следует из рис. 15.57б. Ниже будет показано, каким образом в Вгусе создается традиционный объектный фильм формата QTVR для просмотра объекта со всех сторон.

Рисунок 15.57 Съемка объекта со всех или многих сторон: а). Во всех видах с указанием углов вращения; б). В отдельных видах


Для более подробного ознакомления с фильмами формата QTVR мы рекомендуем обратиться к упоминавшейся ранее книге Сьюзен Китченс The QuickTime VR Book (Справочное пособие по QuickTime VR), которая вышла в издательстве Peachpit Press. В этой книге приведено подробное описание процесса создания фильма формата QTVR, а здесь будет лишь показано, каким образом в В гусе формируются движения камеры, необходимые для создания объектного фильма формата QTVR.

Методика создания объектного фильма


Для создания фильма из видов, полученных в точках пересечения белых трубок, приведенных на указанном выше рисунке, камеру необходимо вращать вокруг объекта с математической точностью. Чтобы сформировать фильм надлежащим образом, необходимо иметь ряд кадров, расставленных на равных интервалах друг от друга, причем эти интервалы определяются величиной угла поворота между точками съемки объекта в разных видах.

Однорядный фильм


Для создания простого, горизонтального объектного фильма формата QTVR необходимо установить равные интервалы. Дело в том, что движение выглядит более плавным, когда разность между последовательными видами составляет 10°. Таким образом, для создания однорядного фильма требуется 36 кадров. В связи с тем что в Вгусе первым считается кадр 0, последний кадр имеет номер 35. Поэтому чтобы последовательность кадров начиналась с кадра 1, можно создать временный первый кадр. Для этого начальное условие формируется в кадре 0, а затем осуществляется переход к кадру 1, где устанавливается ключевой кадр. Благодаря визуализации отдельных изображений, можно просто отбросить кадр 0. Таким образом, математические расчеты можно выполнять, начиная с 1, а не с 0. Как же добиться вращения с точным приращением? Допустим, что требуется получить 36 изображений в результате полного оборота вокруг объекта с интервалом в 10°. Казалось бы, проще всего установить последовательность из 36 кадров, а затем определить один ключевой кадр для угла поворота 0° и другой ключевой кадр для угла поворота 360°. Однако не все так просто. Против такого порядка действий можно выдвинуть два аргумента. Во-первых, в Вгусе угол поворота 0° ничем не отличается от угла поворота 360°, и поэтому анимация между ключевыми кадрами, установленными при этих углах, оказывается невозможной. И во-вторых, в результате вращения от 0 до 360° на самом деле получается 37 кадров, поэтому для получения 36 кадров вращение должно начинаться с 0° и завершаться при 350°.
Чтобы добиться требуемого результата, можно переместить точку начала отсчета камеры в центр снимаемого объекта, а затем поворачивать камеру. С другой стороны, можно ограничить перемещение камеры круговым путем, однако это не позволит добиться такой точности, которая требуется для создания объектного фильма формата QTVR.
Мы испробовали оба указанных выше метода, а полученные результаты приведены для сравнения в виде сверху на рис. 15.58, где показан один кадр фильма COMPOSITE OBJECT. MOV формата QTVR. В этом фильме сравниваются два варианта создания фильма формата QTVR для одного и того же объекта. В первом варианте (приведенном слева на указанном выше рисунке) камера перемещается по заданному пути, а в другом варианте (приведенном справа на этом же рисунке) камера вращается вокруг своей точки начала отсчета, расположенной в центре объекта. В виде сверху показаны две окружности с 36 конусами, соответствующими положению камеры, которое изменяется через каждые 10° для съемки всех 36 видов объекта. Оба фильма были объединены в один фильм, в котором они действуют параллельно кадр за кадром. Откройте файл этого фильма и выполните перетаскивание влево или вправо для выполнения анимации. Обратите внимание на то, что конусы выравнивания, расположенные в нижней части кадра, смещаются влево и вправо при перемещении камеры по заданному пути, тогда как при ее вращении они остаются на месте. Несмотря на то что в варианте перемещения камеры по заданному пут ключевые события установлены при углах поворота 90°, 180°, 270° и 350°, промежуточные точки не являются фиксированными, как это имеет место в варианте вращения камеры. Именно поэтому и наблюдается их сдвиг.

Рисунок 15.58 Кадр из фильма формата QTVR, в котором для сравнения показаны методы перемещения камеры по заданному пути и вращения вокруг ее точки начала отсчета (последний метод оказывается более предпочтительным)


Многорядный фильм


Многорядный объектный фильм формата QTVR оказывается более сложным, чем однорядный фильм. В нем используется два вида вращения. Помимо вращения камеры вокруг объекта по горизонтали, как это имело место в примере однорядного фильма, когда камера вращалась вокруг оси у, в данном случае происходит также вращение по вертикали. Если вращение камеры по горизонтали вокруг оси у можно сравнить с долготой, то вращение камеры по вертикали вокруг оси х соответствует широте ее положения. Вращение по вертикали определяет положение камеры выше, ниже или на уровне объекта. Для создания убедительного фильма вращение камеры должно происходить с равномерным приращением. В примере, который рассматривается в этом разделе, камера располагается с равными промежутками 20° как по вертикальной, так и по горизонтальной осям.
Как упоминалось выше, вращение камеры с интервалом 10° между отдельными видами обеспечивает наиболее плавное воспроизведение объектного фильма формата QTVR. Тем не менее, следует заметить, что при сокращении интервалов съемки фильма с 20 до 10° общее число кадров быстро увеличивается со 180 до более чем 600. На рис. 15.59 показан ряд положений камеры на окружностях, обозначающих вращение камеры по вертикали и горизонтали в разрезе (вертикальная и горизонтальная оси вращения показаны на рис. 15.57а), при съемке с интервалом 20 и 10°. Резкое увеличение числа снимаемых видов обусловлено тем, что общее число горизонтальных видов умножается на обшее число вертикальных видов. В табл. 15.1 дано для сравнения число горизонтальных видов, число вертикальных видов и общее число видов для создания фильма при вращении камеры вокруг обеих осей с приращением 10, 15, 20 и 35 градусов.

Рисунок 15.59 Сравнение плотности расположения камеры при съемке с интервалом 20 и 10°. В верхнем ряду показан вид сбоку, если смотреть вдоль оси л; а в нижнем ряду - вид сверху, если смотреть вниз вдоль оси y


Таблица 15.1. Общее число кадров или видов для создания фильма формата QTVR в сравнении с числом градусов в промежутках между отдельными видами
Число градусов в промежутках между видами 10° 15° 20° 30°
По вертикали (180°) 19 13 19 7
По горизонтали (360°) 36 24 18 12
Общее число видов (по вертикали х по горизонтали) 684 312 180 84


Для съемки с интервалом 20° создан шаблон фильма QTVR MULTIROW OBJECT MOVIE. Здесь камера и ее анимация уже настроены. Если объект должен просматриваться в фильме со всех сторон, тогда воспользуйтесь одной из сцен, приведенных в указанном выше файле, выключите режим Auto-Key на время создания сцены или объекта и настройте наложение камеры. Кроме того, можно изменить соотношение между положением камеры и ее точкой начала отсчета, однако это следует сделать только по оси z для удаления камеры от объекта.
Покажем, каким образом рассчитывается общее число кадров для объектного фильма формата QTVR. Во-первых, следует определить число градусов в промежутках между видами. Число 180 необходимо разделить на это число нацело, после чего к полученному результату следует добавить 1, чтобы, таким образом, получить общее число рядов. Например, если взять интервал 20°, тогда 180/20 = 9, а общее число рядов составит 9 + 1 = 10. Во-вторых, для получения числа горизонтальных видов (столбцов) необходимо разделить число 360 на выбранное число градусов в промежутках между видами: 360/20 = 18. А для получения общего числа кадров следует умножит число рядов на число столбцов: 10 х 18 = 180. Если объектный фильм формата QTVR создается для исследования суши, визуализацию положений камеры при ее вращении вокруг оси х следует выполнить только для вращения в положительном направлении, поскольку вращение вокруг оси х в отрицательном направлении приводит к расположению камеры ниже уровня земли. Благодаря тому что последовательность кадров начинается со съемки сверху, для исключения съемки ниже уровня земли достаточно ограничить продолжительность объектного фильма.
Если же требуется создать частично объектный фильм, тогда камера должна перемещаться в заданном направлении до конца ряда, а для перехода к следующему ряду ее следует переместить в начало текущего ряда, с тем чтобы камера всегда перемещалась в одном направлении в каждом ряду. (Зигзагообразное перемещение по рядам для формирования объектного фильма не годится.)

Создание анимационной последовательности в формате QTVR


Ниже приведена процедура для самостоятельного создания объектного фильма формата QTVR:
  1. Определите общее число кадров, которое требуется для анимации выбранной сцены.
  2. Установите формат отображения времени в кадрах. Затем сделайте первый кадр временным, создав два ключевых события в начальном состоянии: одно в кадре 0, а другое в кадре 1. Это упростит дальнейшие расчеты.
  3. Разместите камеру в самой высокой точке над объектом (рис. 15.60). Установите ключевой кадр. Перейдите к кадру, соответствующему последнему виду в данном ряду. Затем поверните камеру в этом положении. Если все виды снимаются с интервалом 20°, как в приведенном выше примере объектного фильма продолжительностью 180 кадров, тогда кадру 18 будет соответствовать угол поворота 340°. Установите еще один ключевой кадр. Если воспользоваться приведенной выше аналогией часов, то начать следует с 6 часов и продолжить вращение по часовой стрелке до 5 часов.

    Рисунок 15.60 Установка ключевых кадров для объектного фильма формата QTVR в виде сбоку и сверху


  4. Перейдите к следующему кадру. Поверните камеру на 20° вокруг оси у (чтобы вернуть ее в начальное положение). Затем поверните камеру на 20° вокруг оси х (чтобы переместить ее в следующий ряд). Установите ключевой кадр. Далее поверните камеру в этом ряду на 340° и установите ключевой кадр. Продолжите вращение и установку ключевых кадров в каждом последующем ряду.
СОВЕТ
Камера является единственным объектом в Вгусе, анимацию вращения которого можно осуществить численным методом. Обратите внимание на постепенное увеличение числовых значений по мере вращения камеры вокруг конкретной оси. В каждый последующий момент времени эти числовые значения обозначают суммарный характер вращения, чего не наблюдается ни в одном из остальных типов объектов в Вгусе.

На рис 15.61 наглядно представлена вся процедура установки ключевых кадров при создании объектных фильмов. Места установки ключевых кадров обозначены стрелками, направленными вниз. Фактическое число кадров показано для вращения камеры с приращением 10, 15, 20 и 30° в пяти рядах фильма. Для анализа этих цифр придется вооружиться карандашом и бумагой.

Рисунок 15.61 Установка ключевых кадров в Вгусе для вращения камеры с лриращением 10,15,20 и 30 градусов при формировании объектного фильма формата QTVR


Визуализация в объектный фильм формата QTVR


После установки всех ключевых кадров проверьте их расположение в лаборатории развитого движения, чтобы убедиться в том, что они установлены в нужном месте и в нужное время. Если временные отметки в каждом ряду распределены равномерно, значит все в порядке. В противном случае необходимо проанализировать причину возникшей ошибки. Для внесения корректив достаточно переместить ту или иную временную отметку в нужное положение.
А теперь можно приступать к визуализации фильма. Выполните визуализацию в виде последовательности изображений, чтобы упростить выбрасывание первого кадра.
В некоторых программах, предназначенных для создания объектных фильмов формата QTVR (в частности, в свободно доступной утилите Edit QTVR Object для Macintosh), формирование фильма требуется начинать с файла формата QuickTime. Если визуализация выполняется в фильм, то для этого необходимо принять следующие меры. Прежде всего, следует непременно избавиться от ключевых кадров в визуализированном фильме, как показано в диалоговом окне, приведенном на рис 15.62. В некоторых кодеках применяется временное сжатие данных, при котором в последующем кадре регистрируются только изменения, произошедшие в предыдущем кадре, в то время как в ключевых кадрах фиксируются целые кадры изменений. Временное сжатие ключевых кадров не годится для формирования объектных фильмов, где совершаются переходы вверх, вниз, влево и вправо и не применяется принцип строгой последовательности кадров. Вторая мера состоит в том, чтобы избавиться от кадра 0, установив начало рабочего диапазона анимации с кадра 1.

Рисунок 15.62 Исключение ключевых кадров при визуализации в фильм формата QuickTime благодаря сбросу флажка Key frame every в диалоговом окне Compression Settings, доступном из диалогового окна Animation Setup


Для преобразования визуализированных изображений или фильма формата QuickTime в объектный фильм формата QTVR имеются самые разные приложения: QuickTime VR Authoring Studio компании Apple (только для Mac OS), Object Worx из комплекта VR Toolbox либо полнофункциональное коммерческое приложение VR Worx (для Mac OS и Windows). Для тех, кто пользуется Mac OS, компания Apple предлагает весьма простой способ формирования объектного фильма с помощью бесплатно доступной утилиты Edit QTVR Object, которая может быть загружена из Web-сайта QuickTime компании Apple по следующему адресу: http://www.appKe.com/quicktime/deveIopers/tools.html.

О применении путей в анимации


Этот небольшой раздел, посвященный применению путей в анимации, мы начнем с краткого обзора того, что уже известно о путях: Применяя в анимации указанные выше особенности пути в определенном сочетании, можно создать замечательные эффекты. Кроме того, это дает возможность формировать сложное движение нескольких объектов, не прибегая к анимации каждого из них в отдельности.
Ниже приведен ряд способов применения путей в анимации, которые более подробно будут рассмотрены несколько ниже:
Многократное тиражирование объектов вдоль заданного пути


При размещении множества объектов вдоль одного пути удобным оказывается их многократное тиражирование вдоль этого пути. Если путь ограничивает перемещение объекта, этот объект можно сдублировать, причем путь будет также ограничивать перемещение вновь полученного объекта. Но при этом возникает некое внутреннее противоречие: новый объект оказывается в том же месте, что и старый, однако в поле Constrain диалогового окна Object Attributes для вновь полученного объекта указывается значение 0.0. Это противоречие нетрудно преодолеть, перетащив объект в требуемое положение вдоль заданного пути. В результате дублирования нескольких объектов вдоль заданного пути появится множество объектов в новых местах этого пути. Тем не менее, стоит лишь начать их перемещение, как все сдублированные объекты оказываются в одном месте под указателем мыши.
Если дублируется путь, ограничивающий перемещение нескольких объектов, эти объекты оказываются в одном месте (кроме объекта, перемещение которого по заданному пути ограничивается точкой 0).
По зрелом размышлении можно прийти к выводу о том, что наилучший способ многократного тиражирования объектов вдоль заданного пути состоит в обычном дублировании каждого объекта в отдельности (с помощью комбинации клавиш Cmd+D/Ctrl+D) и последующем его перетаскивании вдоль этого пути. Для перемещения объекта вдоль заданного пути можно воспользоваться комбинациями клавиш, аналогичными пошаговому перемещению объектов.

Соединение нескольких объектов с заданным путем


Ограничение перемещения нескольких объектов заданным путем открывает ряд интересных возможностей анимации. Что касается формирования неподвижного изображения, то для создания ожерелья можно, например, выстроить ряд жемчужин или камней вдоль заданного пути. На рис. 15.63 показан простой пример ограничения объектов камней заданным путем для создания ожерелья из бирюзы. Эти камни перемежаются серебряными бусинами. Другие пользователи Вгусе применили этот метод для создания связанной цепочки, имеющей конфигурацию, отличную от прямолинейной.

Рисунок 15.63 Ожерелье из бирюзы и серебра, созданное из объектов, ограниченных заданным путем


Что же касается анимационных сцен, то рассмотрим анимацию геометрической формы пути и всех находящихся на нем объектов на примере гусеницы и эксцентричных подводных растений.

Гусеница


Гусеница, приведенная на рис. 15.64, представляет собой путь со множеством сфер, которые ограничены и связаны с этим путем. Для получения предсказуемых результатов анимации можно воспользоваться полем Percentage диалогового окна Object Attributes для размещения объектов вдоль заданного пути. В зависимости от числа объектов они могут быть не совсем равномерно расположены на протяжении всего пути. Поэтому сферы были сначала расположены на глаз, а затем перемещены вручную в требуемое положение. Для имитации движения гусеницы была осуществлена анимация пути во времени. При этом путь изменяет свою геометрическую форму и местоположение.

Рисунок 15.64 Гусеница, состоящая из множества объектов, расположенных на пути: а). Каркасный вид конструкции; б). Гусеница в начале своего пути; б). Гусеница посередине своего пути


Эксцентричные растения


Рассмотрим еще один пример связывания объектов с подлежащим анимации путем. Это не реальный, а скорее пародийный пример (Слыханное ли дело, чтобы водоросли состояли из пирамид?) Ветви растения прикреплены одним концом ко дну, а другой их конец плавно раскачивается в разные стороны. Движение этого объекта позволяет обнаружить, из чего он состоит и каково его окружение, о чем свидетельствует поведение подводных эксцентричных растений, приведенных на рис. 15.65.

Рисунок 15.65 Растение, раскачивающееся под водой и состоящее из множества объектов, ограниченных несколькими путями: а). Каркасный вид конструкции; б). Один кадр анимации; в). Другой кадр анимации


Соединение одного пути с другим


Ничто не обеспечивает столь удобное управление движением нескольких объектов в сложной сцене, как со единение одного пути с другим. В сцене реактивной гонки (см. файл сцены JET RACE и файл соответствующего фильма JET RACE.MOV), приведенной на рис. 15.66, имеются три реактивных летательных аппарата, связанных с заданным путем. В качестве реактивных летательных аппаратов были использованы простые удлиненные конусы, поскольку в данном случае важнее было показать принципы анимации, а не сложную конструкцию этих объектов. Назовем один путь реактивным, а другой — путем движения.

Рисунок 15.66 Неподвижные изображения анимационной сцены реактивной гонки, в которой реактивные летательные аппараты (конусы) связаны с одним путем, перемещающимся по другому пути


В данной сцене имеются следующие пять элементов движения: Все указанные выше изменения разделены и показаны в фильме JET RACE.MOV, файл которого находится в папке настоящей главы на сопровождающем книгу CD-ROM. Этот фильм состоит из ряда фильмов в каркасном представлении, в каждом из которых описанные выше виды анимации показаны отдельно до их объединения в завершающую анимацию.
Аналогичного эффекта удалось добиться с помощью небольших желтых шаров, которые движутся по спиральному склону в бездну, представленную в виде перевернутого вверх дном синего полого конуса. В данном случае шары связаны с путем, который перемещается вдоль спирального пути. Для того чтобы объекты были обращены нужной стороной, каждый желтый шар следит за скрытым объектом, расположенным в центре спирали (см. рис. 15.67, а также файлы DOWNHILL SPIRAL.MOV и DOWNHILL SPIRAL на сопровождающем книгу CD-ROM).

Рисунок 15.67 Спиральный склон, где один путь перемещается по другому: а). Каркасный вид; б). Визуализированный вид


Эксперименты с многократным тиражированием объектов


До сих пор рассматривались самые разные способы связывания: одних объектов с другими, объектов с путями и одних путей с другими. А в следующем примере рассматриваются объекты, последовательно связанные друг с другом в цепочку. Благодаря применению многократного тиражирования объектов можно добиться весьма интересных результатов.

Многократное тиражирование связанных в иерархию объектов


Рассмотрим интересный пример иерархий объектов, связанных по принципу инь-янь (женского и мужского начала).
  1. Создайте новую сцену. Откройте диалоговое окно Preferences (из меню Edit) и установите режим Create Objects at World Center (Создание объектов в центре мирового пространства). Переместите элемент управления Trackball вправо, удерживая нажатой клавишу Control/Ctrl, чтобы ограничить перемещение по горизонтали. Остановите перемещение, когда центральная линия сетки плоскости земли будет проходить сверху вниз (рис. 15.68).

    Рисунок 15.68 Вид сцены после разворота режиссерского вида перпендикулярно сетке плоскости земли


  2. Выберите режим Camera to Director из всплывающего меню Camera в палитре управления. При этом синий контур камеры исчезает, поскольку камера оказывается в точке наблюдения. Щелкните на пиктограмме Director/Camera в палитре управления, чтобы появилась пиктограмма камеры. Теперь наблюдение за сценой осуществляется в виде камеры.
  3. Установите режим Auto-Key из всплывающего меню Animation Options, чтобы не создавать вручную ключевые кадры, поскольку в данном случае предстоит создать множество подлежащих анимации объектов. Создайте конус.
    Далее будет выполнено многократное тиражирование этого конуса, в результате которого на земле будет образован круг из конусов.
  4. Выберите команду меню Edit > Multi-Replicate. Введите значение 30 в поле Quantity диалогового окна Multi-Replicate (рис. 15.69). Чтобы конусы оставались на земле, их необходимо тиражировать только вокруг оси у. Круг составляет 360°, а у нас имеется 30 объектов (на самом деле их 31, считая исходный объект, хотя в данном случае это особого значения не имеет), поэтому для получения числа градусов в промежутке между копиями конуса разделите: 360/ 30 — 12. Введите значение 12 в поле Rotate Y. И наконец, введите значение 5 в поле Offset X. Поскольку все конусы должны находиться на одной плоскости, смещение должно быть введено по оси х или z . Не выходите пока что из данного диалогового окна!
    Рисунок 15.69 Параметры настройки тиражирования конуса


  5. А теперь наступает самый интересный момент! Воспользуйтесь следующим специальным приемом для связывания каждого последующего конуса с предыдущим: щелкните на кнопке с отметкой, удерживая нажатой клавиши Option/Ctrl+Alt, чтобы выйти из данного диалогового окна. Полученный результат должен выглядеть аналогично рис. 15.70.

    Рисунок 15.70 Вид сцены после многократного тиражирования конусов с помощью специальной комбинации клавиш, связывающей каждый последующий конус с предыдущим


  6. Удалите плоскость земли. При этом объекты могут погрузиться ниже уровня земли и исчезнуть. Выделите все конусы снова (С другой стороны, если требуется видеть, что же происходит под землей, плоскость земли можно сделать отчасти прозрачной.)
  7. Переместите ползунок временной шкалы к некоторой временной отметке. Эта отметка выбирается в зависимости от размера экрана монитора и режима расположения интерфейса (на краях экрана или рабочего окна). В данном случае рекомендуется выбрать временную отметку, соответствующую приблизительно 64 кадрам или продолжительности анимации немногим более 4 секунд (при частоте 15 кадров в секунду).
  8. Сохраните сцену. К этому состоянию сцены еще придется вернуться. А если это занятие окажется увлекательным и интересным, то выбрав команду Save As и присвоив новой сцене другое имя, можно продолжить создание дополнительных файлов сцен.
  9. Воспользуйтесь элементами управления Rotate, Reposition и Resize, чтобы сообщить движение совокупности объектов.
    Они уже вращаются вокруг оси у, дополнительно раскручиваясь или закручиваясь относительно этой оси. А что произойдет при вращении относительно оси х или z?
    Попробуйте изменить размер объектов, сделав их мельче или крупнее, и посмотрите, что из этого получится.
    Пробуйте также изменить положение объектов по одной или нескольким осям.
    На рис. 15.71 показан один из примеров применения элементов управления Rotate, Reposition и Resize.

    Рисунок 15.71 Один из примеров применения элементов управления Rotate, Reposition и Resize к совокупности связанных объектов, полученных путем многократного тиражирования


  10. Добившись удовлетворительного результата, нажмите клавишу обратной косой черты (\), чтобы воспроизвести полученный фильм. Сохраните его под другим именем, если он того заслуживает. (Скорее всего, добиться приемлемого результата с первого раза не удастся, поэтому сохраните исходную сцену в файле.)
  11. Выполните визуализацию полученной выше анимации.
СОВЕТ
Попробуйте выполнить многократное тиражирование связанных объектов в мировом пространстве, а также в пространстве объектов, поскольку это далеко не одно и то же!

Различные особенности анимации


Прежде чем завершить тему развитых методов анимации, рассмотрим различные особенности анимации, которые читателю следует взять на вооружение.

Анимация текстур и материалов


Анимация текстур и материалов в Вгусе оказывается не таким уж простым делом. Это связано с рядом программных ошибок в Вгусе. Увы, это одна из тех коварных и неудобных для пользователя особенностей, которые требуют совершенного владения предметом, чтобы постичь ошибочное поведение данной программы и найти способы его обхода. Теперь, когда читатель знаком с рассматриваемым здесь предметом, мы можем поделиться с ним некоторыми секретами. Это делается для того, чтобы читатель смог обходить подводные камни на пути создания подлежащих анимации текстур и материалов.

Материалы в лаборатории развитого движения


Прежде всего, следует пояснить, каким образом материалы появляются в иерархическом списке лаборатории развитого движения. Материал, принадлежащий объекту, перечислен в этом списке в качестве одного из свойств на временной шкале объекта. Увы, если создать объект пути в активном режиме Auto-Key, для этого пути в лаборатории развитого движения будут автоматически назначены свойства материала, что без всякой надобности усложняет дело. Временные шкалы свойств объекта имеют несколько иной вид в зависимости от того, приходится ли работать в активном или неактивном режиме Auto-Key. При создании ключевого кадра анимации материала этот материал отображается в лаборатории развитого движения в одном из трех состояний. Прежде всего, серый материал, назначаемый для объектов по умолчанию, никак не отображается (рис. 15.72а), т.е. место, где обычно отображается наименование свойства, в данном случае оказывается пустым (это происходит только в активном режиме Auto-Key). Возможно, в данном случае анимация в Вгусе не предполагается, и поэтому ничего не отображается, а место наименования материала оказывается незаполненным. Как только с назначаемым по умолчанию материалом произойдут какие-нибудь изменения, связанные со сменой цвета, перемещением ползунков в его каналах либо с назначением текстуры для управления одним из свойств материала, данный материал будет отображен во втором состоянии с меткой "Material", что уже похоже на ожидаемый результат (рис. 15.726). В третьем состоянии отображается конкретное наименование материала (рис. 15.72в). У любого материала, хранящегося в библиотеке предварительно заданных материалов (Material Preset Library), имеется конкретное наименование. Если этот материал применяется к подлежащему анимации объекту, тогда его наименование будет отображено в иерархическом списке свойств данного объекта.

Рисунок 15.72 Три способа отооражения материала объекта в иерархическом списке лаборатории развитого движения: а). Назначаемый по умолчанию материал не отображается (только в активном режиме Auto-Key); б). Общий материал; в). Материал с конкретным наименованием (выбираемый из библиотеки предварительно заданных материалов). В каждом случае иерархический список показан в свернутом и развернутом виде


Текстуры в качестве подмножества материалов


В лаборатории материалов текстуры управляют одним или несколькими свойствами материала. Если источник текстуры не назначается в лаборатории материалов для управления одним из свойств материала, тогда этот источник текстуры исключается при выходе из лаборатории материалов. Текстура находится в непосредственной зависимости от конкретного свойства материала. Эта же зависимость находит свое отражение в том, как текстура отображается в лаборатории развитого движения.
В Вгусе имеется три места, где отображается взаимосвязь между текстурой и материалом. Во-первых, это сетка каналов материала в лаборатории материалов, где специальными маркерами обозначаются источники текстур, которые управляют конкретными свойствами материала. Во-вторых, это всплывающие иерархические меню Add и Remove Keyframe в лаборатории материалов, которые существуют отдельно для материала и любой текстуры. И в-третьих, это иерархический список в лаборатории развитого движения, в котором текстуры отображаются в виде подмножества свойств материала с назначенной текстурой. На рис. 15.73 приведены примеры двух мест лаборатории материалов, в которых появляются текстуры (ниже будут показаны соответствующие места и в лаборатории развитого движения).

Рисунок 15.73 Отображение текстур среди свойств материала в лаборатории материалов: источники текстур назначаются для свойств материала в сетке его каналов и кроме того появляются во всплывающих меню Add и Remove Keyframe


Наличие во всплывающем меню лаборатории материалов отдельных списков для материала и текстуры может навести на мысль о том, что в иерархическом списке свойств материала в лаборатории развитого движения должно быть наименование текстуры, которое разворачивается до свойств текстуры. Однако это не так. Текстура и ее свойства содержатся среди соответствующих свойств материала. На рис. 15.74 показан иерархический список материала, где текстура содержится среди свойств цвета рассеяния (Diffuse Color) и общего цвета (Ambient Color). Тем не менее, отображение текстур не ограничивается единственной текстурой. Благодаря возможности иметь три текстуры, которые одновременно управляют свойствами материала (двумя свойства в сочетании текстур А-В либо тремя свойствами в сочетании текстур А-В с альфа-каналом текстуры С), в иерархическом списке свойств материала может находиться до трех текстур, как показано на рис. 15.75.

Рисунок 15.74 Обманчивый внешний вид иерархического списка свойств материала, в котором показаны свойства материала, содержащие текстуры Свойства материала не выделены белым цветом, обозначающим элемент списка, содержащий дополнительные элементы


Рисунок 15.75 Временная шкала свойства материала может содержать до трех текстур: а). Одна текстура; б). Две текстуры, применяемые в сочетании А-В; в). Три текстуры, применяемые в сочетании текстур А-В с альфа-каналом текстуры С


Вернемся к рассмотрению свойства материала, содержащего текстуру. В силу присущей Вгусе программной ошибки состояние подлежащего анимации свойства материала может отображаться неверно. Прежде всего можно заметить, что свойство материала Diffuse Color (Diff Clr) не выделяется белым цветом в качестве содержащего дополнительные свойства. Поэтому чтобы раскрыть содержимое конкретного свойства материала и, таким образом, увидеть временные шкалы всех дополнительных свойств, связанных с текстурами, следует щелкнуть на нем, удерживая нажатой клавишу Option/ Alt.
Возможно, причина такого поведения Вгусе связана с неоднозначностью, присущей свойству материала. Рассмотрим, например свойство материала Diffuse Color (Diff Clr): оно может быть элементом иерархического списка, содержащим дополнительные свойства, обычным подлежащим анимации элементом либо и тем, и другим.
Рисунок 15.76 Свойство материала в качестве: а). Свойства, содержащего текстуры; б). Подлежащего анимации свойства; в). Свойства, содержащего текстуры и подлежащего, анимации


Продолжим рассмотрение анимации текстур, обратившись к временной шкале текстуры. Временная шкала текстуры содержит свойства текстуры. При этом ее наименование выделяется белым цветом в иерархическом списке. Однако здесь не все так просто. Можно ли, глядя на временную шкалу текстуры, сказать, что она содержит конкретные данные анимации? Рассмотрим, например, рис. 15.77, где временная шкала текстуры показана в свернутом и развернутом виде. В данном случае используются три источника текстуры. (На самом деле, это текстура, вид которой в лаборатории материалов показан на рис. 15.73.) Можно ли, глядя на рис. 15.77а, сказать, какая именно текстура подлежит анимации? Вряд ли. Обратите внимание на то, что на временной шкале данного свойства материала (Diffuse Color) отсутствуют временные отметки, поскольку оно не подлежит анимации, и в то же время присутствует цветная полоса, поскольку оно содержит дополнительное свойство, подлежащее анимации. А на временной шкале текстуры, содержащей дополнительные свойства, аналогичная полоса отсутствует. Тем не менее, при развертывании данной текстуры и соответствующей временной шкалы для отображения ее содержимого оказывается, что одно из свойств текстуры все же подлежит анимации. Таким образом, временная шкала текстуры, содержащей дополнительные свойства, неверно отображает состояние ее содержимого. В этом и заключается одна из странных особенностей поведения версии Вгусе 4.0.1.

Рисунок 15.77 Как временная шкала текстуры вводит в заблуждение и как заставить ее верно отображать состояние содержимого текстуры: а). В свернутом виде; 6). В развернутом виде


Можно ли каким-то образом заставить временную шкалу текстуры правильно отображать ее состояние с помощью соответствующей цветной полосы? Конечно можно! Для этого необходимо сделать видимой временную шкалу текстуры, содержащей дополнительные свойства, а затем изменить масштаб временной шкалы с помощью элемента управления Scale. В итоге на временной шкале текстуры появится цветная полоса, указывающая на анимацию (рис. 15.78). Если изменить масштаб временной шкалы, не отображая содержимое текстуры, тогда ничего не получится. Подобное "преобразование" в файле сцены не сохраняется. Если сохранить сцену в измененном состоянии, затем закрыть и снова открыть ее, то ключевой кадр в отображаемом с самого начала элементе текстуры будет отсутствовать. Можно ли было предположить, что для того лишь чтобы увидеть текущее состояние анимации в лаборатории развитого движения, придется манипулировать элементом управления Scale для правильного отображения того, что и без того должно отображаться всегда?

Рисунок 15.78 Принудительное обновление: временная шкала развернутой текстуры отображается надлежащим образом после настройки всех временных шкал с помощью (обведенного) элемента управления Scale


Анимация текстур


Теперь, когда читатель знаком с особенностями отображения временных шкал свойств материала и текстуры в иерархическом списке, а также в области Sequencer лаборатории развитого движения, уделим основное внимание тому, что необходимо сделать для анимации текстур.
В связи с тем что текстура находится в прямой зависимости по меньшей мере от одного из свойств материала, для каждого свойства материала, которым управляет текстура, следует установить единственный, начальный ключевой кадр.
При создании объекта в активном режиме Auto-Key начальные ключевые кадры создаются для свойств материала автоматически, причем дополнительные ключевые кадры создавать не требуется. А во время работы в неактивном режиме Auto-Key начальный ключевой кадр приходится создавать для каждого свойства вручную, используя всплывающее меню Add Keyframe. На самом деле, требуется не анимация данного свойства материала во времени, а лишь создание одного ключевого кадра в начале последовательности. (Жалобы пользователей на то, что анимация текстуры не действует, связаны с тем что они скорее всего работали в неактивном режиме Auto-Key. Упомянутый выше этап создания ключевого кадра свойства материала в документации по Вгусе вообще не поясняется, как, впрочем, и пути решения подобной задачи в Вгусе.)
После установки ключевого кадра свойства материала можно приступать к анимации текстуры. Если работать приходится в неактивном режиме Auto-Key, тогда, безусловно, необходимо установить один ключевой кадр для начального условия, а также один или более последующих ключевых кадров на протяжении всей анимации. Если же приходится работать в активном режиме Auto-Key, тогда можно переместить ползунок временной шкалы к требуемому моменту времени, а затем внести изменения в текстуру. Однако если приходится иметь дело с материалом (а следовательно, и текстурой) из библиотеки предварительно заданных материалов, тогда начальный ключевой кадр необходимо устанавливать вручную. При загрузке предварительно заданного материала начальное состояние текстуры не регистрируется в Вгусе автоматически.

Почему не следует удалять ключевые кадры свойства материала


Существует еще один вид ошибочного поведения Вгусе во время анимации, который требует отдельного рассмотрения. Как правило, считается, что для удаления ключевых кадров анимации объекта или одного из его свойств в лаборатории развитого движения достаточно нажать клавишу Shift одновременно с кнопкой мыши на наименовании соответствующего элемента в иерархическом списке, а затем выбрать пункт Delete All Keyframes из всплывающего при этом меню. Однако при некоторых особых обстоятельствах эта операция не действует. Так, если имеется объект с материалом, обладающим рядом управляемых текстурой свойств, причем одна из применяемых текстур подлежит анимации (даже если она содержит единственный, начальный кадр), тогда не стоит предпринимать попытку удалить все ключевые кадры анимации любого управляемого текстурой свойства материала. Если попытаться удалить в лаборатории развитого движения любое управляемое текстурой свойство материала, тогда как минимум исчезнут другие временные шкалы и как максимум все ключевые кадры анимации данного объекта. В связи с тем что удаление ключевых кадров в лаборатории развитого движения не подлежит отмене, перед обращением к лаборатории развитого движения для очистки ключевых кадров определенно имеет смысл сохранить сцену в файле. С другой стороны, подобных затруднений можно избежать, если удалить ключевые кадры анимации отдельных свойств материала в лаборатории материалов, воспользовавшись для этого всплывающим меню, доступным с помощью кнопки Remove Keyframe.

Краткое перечисление особенностей анимации текстур и материалов


Ниже вкратце перечислены те 'особенности, которые следует непременно иметь в виду во время анимации текстур в Вгусе:
Анимация и группы объектов


Если анимация группы объектов осуществляется таким образом, чтобы изменилось ее положение, а в итоге и траектория, после чего группа расформировывается, все члены группы наследуют ее траекторию, а в конечном счете траектория оказывается у каждого объекта. То же самое происходит и со связанными объектами. (В конце концов, группа является родительским объектом для всех ее членов.) Когда разрывается связь между порожденным объектом и подлежащим анимации родительским объектом, порожденный объект наследует траекторию родительского объекта.
Если принять во внимание указанное выше обстоятельство, то при расформировании группы после ее анимации с помощью траектории движения появляется несколько траекторий вместо существовавшей ранее одной траектории. Таким образом, имеется три возможности: сделать один объект родительским для других объектов, сохранить группу либо примириться с наличием нескольких разных траекторий.

Объединение анимационных сцен, а также копирование и вставка подлежащих анимации объектов


Естественно, что если создается анимация особого рода, возникает искушение увеличить ее эффективность, создавая разные элементы в разных сценах, а затем их объединяя. Это отличный метод. Объединенные, скопированные и вставленные объекты сохраняют всю свою анимационную информацию.
Рассмотрим два момента, касающихся сохранения анимационной информации. Суть первого из них состоит в том, что если после создания анимации осуществлено масштабирование временной шкалы, скопированный объект, подлежащий анимации, будет вставлен в новую сцену с учетом масштаба его временной шкалы. В лаборатории развитого движения имеется возможность не только изменять масштаб временной шкалы с несколькими временными отметками ключевых событий, но и вернуться к исходному масштабу при условии, что у данного объекта имеется немного свойств, подлежащих анимации. Второй момент менее приятен. Его суть состоит в том, что в результате копирования, вставки и объединения все объекты, перемещение которых ограничено заданным путем (например, земляные черви, водоросли и жемчужины ожерелья), переходят в одно общее место.

Переход к следующей теме


Итак, читатель проработал эту и предыдущую главы, посвященные анимации. Теперь он может вполне приступать к анимации собственных сцен, руководствуясь реальными примерами анимации, приведенными в главе 17.
Hosted by uCoz