Электронная библиотека » Владимир Верстак » » онлайн чтение - страница 26


  • Текст добавлен: 16 апреля 2014, 14:39


Автор книги: Владимир Верстак


Жанр: Программы, Компьютеры


Возрастные ограничения: +12

сообщить о неприемлемом содержимом

Текущая страница: 26 (всего у книги 46 страниц)

Шрифт:
- 100% +

3. В свитке Coordinates (Координаты) задайте следующие значения параметров:

для координат по горизонтали (U) установите смещение (Offset (Смещение)) равным 0,05 и количество повторений (Tiling (Повторения)) – 10, по количеству каналов анализатора. Смещение позиционирует маску в середине используемого полигона;

для координат по вертикали (V) установите смещение (Offset (Смещение)) равным 0,025 и количество повторений (Tiling (Повторения)) – 20, по количеству сегментов одного канала анализатора.

4. В этом же свитке укажите минимальное размытие карты, задав параметру Blur (Размытие) значение 0,01.

5. В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) установите для первого флага белый цвет (карта прозрачности работает с градациями монохромного цвета от белого до черного).

6. Передвиньте второй флаг, который находится в позиции 50, в позицию 80 и установите для него черный цвет.

7. В этом же свитке выберите из списка Gradient Type (Тип градиента) строку Box (Параллелепипед), а из списка Interpolation (Интерполяция) – строку Solid (Сплошной) (рис. 8.101).

8. Перейдем к построению составной карты, для чего справа от имени градиентной карты прозрачности, с которой мы работали, щелкните на кнопке Gradient Ramp (Улучшенный градиент).

9. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Mask (Маска) и щелкните на кнопке OK для подтверждения выбора и закрытия окна. В результате выполненных действий появится окно с вопросом Keep old material as sub-material? (Оставить старый материал в качестве компонента?). Ответьте на него утвердительно.

10. После выбора карты Mask (Маска) в окне редактора материалов автоматически появятся параметры этой карты. В свитке Mask Parameters (Параметры маски) щелкните на кнопке None (Отсутствует) справа от Mask (Маска) и выберите в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) еще одну карту Gradient Ramp (Улучшенный градиент).


Рис. 8.100. Настройки карты Gradient Ramp (Улучшенный градиент) для основного цвета


Рис. 8.101. Настройка параметров градиентной карты для создания сегментов анализатора


11. Как и для предыдущей карты градиента, в свитке Gradient Ramp Parameters (Параметры улучшенного градиента) для первого флага установите белый цвет.

12. Для второго флага задайте черный цвет. Его положение не имеет значения.

13. Щелкните на втором флаге правой кнопкой мыши и выберите из контекстного меню строку Edit Properties (Правка свойств).

1 4. В появившемся окне Flag Properties (Свойства флага) в поле имени наберите новое имя флага, например LevelMask (рис. 8.102). Это позволит при последующей анимации проще находить нужные объекты. Закройте окно Flag Properties (Свойства флага).

15. В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) выберите из списка Interpolation (Интерполяция) строку Solid (Сплошной).

16. В свитке Coordinates (Координаты) задайте параметру W столбца Angle (Угол) значение –90, что позволит развернуть карту в вертикальное положение (рис. 8.103).

17. Вернитесь на верхний уровень к многокомпонентной карте, для чего трижды щелкните на кнопке Go to Parent (Вернуться к исходному), расположенной на панели инструментов редактора материалов.

Итак, мы создали составной материал на основе трех градиентных карт и карты маски. Их хватит для решения наших задач. На рис. 8.104 показано дерево материала на данном этапе редактирования. Чтобы посмотреть дерево материалов, щелкните на кнопке Material/Map Navigator (Путеводитель по материалам/картам текстур)

Если вы все сделали правильно, то у вас должно быть точно такое же изображение.


Рис. 8.102. Окно Flag Properties (Свойства флага)


Рис. 8.103. Настройки градиентной карты маски


Сейчас необходимо анимировать положение флага LevelMask в соответствии с уровнями кривой звукового контроллера. Можно было бы использовать один из контроллеров Audio Controller (Контроллер звука), присвоенных вспомогательным объектам для управления динамиками, но я хочу показать, как можно создавать собственные параметры объекта и использовать их для решения задач анимации.

В одном из окон проекций выделите объект analyzer_wave. Выполните команду Animation ► Parameter Editor (Анимация ► Редактор параметров), в результате откроется окно Parameter Editor (Редактор параметров). В свитке Attribute (Свойства) выберите из раскрывающегося списка Add to Type (Добавить к типу) строку Selected Object’s Material (Материал выделенного объекта). Это позволит добавить создаваемый параметр материалу анализатора звука – объекту analyzer_wave. Введите в поле Name (Имя) значимое имя параметра, например soundwave (рис. 8.105).

В свитке Attribute (Свойства) щелкните на кнопке Add (Добавить), и новый параметр будет добавлен к выделенному объекту analyzer_wave. В результате в редакторе материалов в настройках многокомпонентного материала, присвоенного объекту, появится свиток Custom Attributes (Пользовательские свойства) с соответствующим параметром. Нам нужно присвоить этому значению Audio Controller (Контроллер звука), для этого обратимся к редактору кривых.


Рис. 8.104. Окно Material/Map Navigator (Путеводитель по материалам/картам текстур) на данном этапе редактирования многокомпонентного материала


Рис. 8.105. Окно Parameter Editor (Редактор параметров)


1. Выполните команду Graph Editors ► Track View – Curve Editor (Графические редакторы ► Просмотр треков – редактирование кривых).

2. В левой части редактора кривых перейдите по дереву иерархии к многокомпонентному материалу объекта analyzer_wave, выберите строку sound_wave (созданный нами атрибут) (рис. 8.106) и щелкните на ней правой кнопкой мыши.


Рис. 8.106. Окно редактора кривых с выделенным дополнительным параметром


3. В появившемся контекстном меню выберите строку Assign Controller (Назначить контроллер). В открывшемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите из списка строку AudioFloat (Звук, использующий значения с плавающей точкой).

4. В открывшемся окне Audio Controller (Контроллер звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.

5. В области Controller Range (Диапазон контроллера) увеличьте значение параметра Max (Максимум) до 5. Данное значение можно впоследствии скорректировать с таким расчетом, чтобы колебания уровней анализатора звука длительное время не превышали максимального значения.

6. Установите переключатель Channel (Канал) в положение Mix (Смешивание). Для строящегося анализатора звука мы возьмем один смешанный канал, хотя можно было бы использовать все три.

7. В области Sample (Выборка) задайте параметру Oversampling (Усреднение) значение 500 (рис. 8.107). Для имитации анализатора частотных характеристик звука мы используем кривую уровня звука, поэтому увеличение значения этого параметра позволит частично сгладить пороговые значения кривой.


Рис. 8.107. Настройки окна Audio Controller (Контроллер звука) для атрибута sound_wave


8. Закройте окно Audio Controller (Контроллер звука).

В окне редактора кривых присвоим флагу LevelMask карты улучшенного градиента, используемого в канале прозрачности, контроллер Float Expression (Выражение с плавающей точкой). Для этого в левой части редактора кривых выберите из иерархического списка объект analyzer_wave и, передвигаясь по его компонентам, перейдите к параметру Position (Положение) флага LevelMask из канала прозрачности первого материала (рис. 8.108).


Рис. 8.108. Окно редактора с активным параметром Position (Положение) флага LevelMask


Щелкните на выбранном параметре Position (Положение) правой кнопкой мыши и выберите строку Assign Controller (Назначить контроллер) в контекстном меню. В появившемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите из списка строку Float Expression (Выражение с плавающей точкой). В области Create Variables (Создать переменную) открывшегося окна Expression Controller (Контроллер управления по алгоритмическому выражению) введите в поле Name (Имя) имя создаваемой переменной (например, wave) и щелкните на кнопке Create (Создать). В результате будет создана пользовательская переменная, которой необходимо присвоить значение контроллера звука. Для этого щелкните на кнопке Assign to Controller (Назначить контроллеру) и укажите в открывшемся окне Track View Pick (Выбрать трек) на трек с именем созданного нами атрибута sound_wave (рис. 8.109).

В поле Expression (Выражение) запишите формулу, которая будет управлять поведением флага LevelMask согласно звуковой волне: floor(wave/0.05)*0.05 (рис. 8.110). Щелкните на кнопке Evaluate (Оценить) для присвоения функции анимируемому параметру.

Разберем записанную формулу. Начнем с параметров. Несмотря на то что в настройках диапазона звукового контроллера мы задали максимальное значение равным 5, позиция флага градиентной карты использует значение от 0 до 1. Кроме того, наш анализатор звука имеет 20 сегментов, и смещение значений положения флага должно происходить с учетом количества этих сегментов. Таким образом, первое, что мы делаем в этой функции, – округляем в меньшую сторону значение звукового контроллера (присвоенное переменной wave), деленное на 20 частей (floor(wave/0.05)). Для округления необходимо, чтобы значение было больше нуля, что мы и делаем, используя для деления значение, уменьшенное в 100 раз, но для возврата к прежнему уровню уже округленного значения нам необходимо умножить полученный результат на 0,05. Таким образом, полностью выражение выглядит как floor(wave/0.05)*0.05. В результате расчетов значение положения флага LevelMask в каждом кадре анимации становится кратным 0,05.


Рис. 8.109. Окно Track View Pick (Выбрать трек)


Рис. 8.110. Окно Expression Controller (Контроллер управления по алгоритмическому выражению) после выполнения всех настроек


Теперь следует в настройках многокомпонентного материала анализатора в окне Material Editor (Редактор материалов) скопировать первый материал и вставить вместо расположенных ниже девяти материалов.

СОВЕТ

Прежде чем копировать созданную анимацию, желательно убедиться в том, что все сделано правильно. Для этого можно воспользоваться одним из двух способов. Первый способ: задать отображение анимации карты улучшенного градиента в окне проекции (для этого перейдите в редакторе материалов к этой карте и щелкните на кнопке Show Map in Viewport (Показать карту в окне проекции)

Второй способ: выполнить эскиз анимации текстуры, используя кнопку редактора материалов Make Preview (Создать эскиз)

Для создания копий настроенного материала перейдите к верхнему уровню многокомпонентного материала. В свитке Multi/Sub-Object Basic Parameters (Базовые параметры многокомпонентного материала) щелкните на кнопке с именем первого материала и, не отпуская кнопку мыши, перетащите ее на кнопку с именем второго материала. После того как вы отпустите кнопку мыши, появится окно, в котором в качестве метода копирования выберите Copy (Независимая копия объекта). Новый материал для второго канала создан. Теперь необходимо изменить настройки этого материала, чтобы анимация уровней каналов отличалась друг от друга. Для этого обратитесь к редактору кривых и выберите из иерархического списка анимированный флаг LevelMask для градиентной карты второго материала (рис. 8.111).

Перейдите к параметру Position (Положение) этого флага и, щелкнув на нем правой кнопкой мыши, выберите из контекстного меню строку Properties (Свойства). В результате откроется окно Expression Controller (Контроллер управления по алгоритмическому выражению). После копирования это окно содержит функцию и параметры анимации первой карты. Изменить значения анимации можно следующим образом:

■ изменить время, задаваемое в поле Tick Offset (Смещение в тиках) области Variable Parameters (Параметры переменной) для созданной нами переменной;

■ изменить значение переменной wave в записанной формуле.

На рис. 8.112 представлен пример измененного контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с использованием описанных выше способов.

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


Рис. 8.111. Редактор кривых с выделенным флагом LevelMask второго материала


Рис. 8.112. Окно контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с измененными параметрами для второго материала


И в завершение несколько советов к данному упражнению.

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


Рис. 8.113. Визуализация одного из кадров анимации


Рис. 8.114. Окно контроллера Float Script (Сценарий, использующий значения с плавающей точкой)


Более простой способ сглаживания анимации анализатора – при котором визуализируется каждый третий кадр анализатора. Естественно, что в этом случае необходимо использовать раздельную анимацию, при которой анализатор визуализируется с альфа-каналом для последующего совмещения его с остальной композицией в программе постобработки или в модуле Video Post (Видеомонтаж). При добавлении такой анимации в качестве нового слоя необходимо увеличить в три раза отображение каждого кадра. В модуле Video Post (Видеомонтаж) это делается при помощи параметра Multiplier (Усилитель) в окне Image File List Control (Файл контроля списка изображений) при выборе последовательности кадров.

Улучшить эффект анимации анализатора можно, добавив к анимации эффект Glow (Сияние). Проще всего для этого использовать одну из программ постобработки (например, Combustion), предварительно выполнив послойную визуализацию. Можно также применить модуль Video Post (Видеомонтаж), но в данном случае мы используем для анимации один объект и несколько карт прозрачности, что может создать определенные трудности при непосредственной анимации всей сцены. Для создания такого эффекта можно также применить предварительно визуализированные в отдельном слое кадры с анимацией анализатора.

ПРИМЕЧАНИЕ

Если у вас возникли трудности с присвоением и настройкой контроллеров, загрузите для анализа файл с готовой анимацией sound_wave_end.max, который находится на прилагаемом DVD в папке ExamplesГлава 08Sound_wave. В папке Videol7iaBa 08 имеется готовая анимация sound_wave.avi.

Песочные часы

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

В данном разделе мы рассмотрим более простые, но не менее интересные подходы к анимации песка. Загрузите с DVD, который прилагается к книге, файл sandglass_start.max, находящийся в папке ExamplesГлава 08sandglass (рис. 8.115).

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

1. В окне проекции Front (Спереди) выделите стеклянную колбу часов или выберите ее (объект Glass) из списка объектов сцены, воспользовавшись клавишей H.

2. Создайте копию объекта, выполнив команду Tools ► Snapshot (Инструменты ► Снимок). В открывшемся окне Snapshot (Снимок) переключатель в области Snapshot (Снимок) должен быть установлен в положение Single (Единичный), а переключатель Clone Method (Метод клонирования) – в положение Mesh (Сетка). Щелкните на кнопке OK.

3. Используя клавишу H, откройте окно Select From Scene (Выбор из сцены) и выберите в нем созданную копию – объект Glass01.

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

5. Перейдите на вкладку Modify (Изменение) командной панели и переключитесь в режим редактирования подобъектов Element (Элемент).

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

7. Удалите выделенный элемент, нажав клавишу Delete.

8. Снова щелкните на объекте для выделения внутренней поверхности стекла и в области Normals (Нормали) свитка Surface Properties (Свойства поверхности) нажмите кнопку Flip (Обратить). Таким образом мы установим правильное направление нормалей (у внутренней поверхности стекла они были обращены внутрь).

9. Перейдите на уровень редактирования вершин, выделите нижнюю половину оставшейся внутренней поверхности стекла и удалите ее.

10. Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать)

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


Рис. 8.115. Визуализация модели песочных часов


11. Выйдите из режима редактирования вершин, повторно щелкнув в свитке Selection (Выделение) на кнопке Vertex (Вершина)

12. Установите режим использования центра трансформаций на середину выделения, для чего щелкните на кнопке Use Selection Center (Использовать центр выделения)

главной панели инструментов.


Рис. 8.116. Нижняя часть отредактированного объекта


13. Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать)

уменьшите объект на небольшую величину (например, до 99,5 %).

ВНИМАНИЕ

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

Для окончания редактирования этого объекта дайте ему более понятное имя, например Sandtop, и присвойте ему материал песка. Используя клавишу M, откройте редактор материалов, выберите материал Sand и перетащите его на объект Sand_top в одном из окон проекций. Затем вернитесь к отображению полной сцены, для чего щелкните на кнопке Exit Isolation Mode (Выйти из режима изолирования).

Анимируем построенный объект следующим образом.

1. Выделите объект Sand_top, если он не остался выделенным.

2. Назначьте ему модификатор Slice (Сечение), выполнив команду Modifiers ► Parametric Deformers ► Slice (Модификаторы ► Параметрические деформации ► Сечение).

3. В свитке Slice Parameters (Параметры сечения) установите переключатель в положение Remove Top (Отсечь верх).

4. Перейдите на уровень редактирования подобъектов модификатора Slice (Сечение), для чего в стеке модификаторов щелкните на плюсике рядом с именем модификатора и выберите строку Slice Plane (Секущая плоскость).

5. Используя инструмент Select and Rotate (Выделить и повернуть), в окне проекции Left (Слева) поверните секущую плоскость на 90° по оси X или Y и передвиньте ее вверх так, чтобы она заняла горизонтальное положение в середине объекта Sand_top (рис. 8.117).


Рис. 8.117. Положение секущей плоскости в пространстве и ее параметры


ПРИМЕЧАНИЕ

Секущую плоскость необходимо повернуть потому, что объект, имитирующий стекло, строился при помощи вращения кривой контура в окне проекции Front (Спереди). В результате скопированный и отредактированный объект Sand_top унаследовал локальную систему координат объекта-предка.

Анимируем секущую плоскость таким образом, чтобы она с течением времени срезала все большую часть объекта Sand_top.

1. Передвиньте ползунок таймера анимации в 280 кадр.

2. Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto Key (Автоключ), в результате чего кнопка выделится цветом

3. Передвиньте секущую плоскость вниз так, чтобы она оказалась в середине стеклянной колбы, а песок в верхней части часов был полностью отрезан секущей плоскостью. В результате будет создано два ключа анимации: в нулевом и 280 кадре.

4. Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

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

Два небольших штриха помогут нам получить законченную анимацию. Отредактируйте кривую анимации. Для этого откройте редактор кривых, выполнив команду Graph Editors ► Track View – Curve Editor (Графические редакторы ► Просмотр треков – редактирование кривых). В левой части открывшегося окна выберите объект Sand_top и далее строку с именем Y Position (Положение по оси Y). В результате в правой части окна Track View – Curve Editor (Просмотр треков – редактирование кривых) появится кривая. Манипулятор второй точки необходимо опустить вниз, чтобы получилась плавная кривая, постепенно поднимающаяся вверх (рис. 8.118).


Рис. 8.118. Кривая анимации положения секущей плоскости


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

И последнее, что необходимо сделать для объекта Sand_top, – применить к нему модификатор Cap Holes (Накрыть отверстия), чтобы закрыть дыру, образованную секущей плоскостью (рис. 8.119).

Теперь можно переходить к моделированию песка внизу. Воспользуемся объектом Top, который создан при помощи вращения профиля кривой. Он до сих пор был спрятан и не показывался в окнах проекций. Для его отображения перейдите на вкладку Display (Отображение)

командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide All (Отобразить все).


Рис. 8.119. Стек модификаторов объекта Sand_top


Учитывая форму стекла часов, песок в нижней части проще всего анимировать при помощи булевой операции.

1. Используя горячую клавишу H, откройте окно Select From Scene (Выбор из сцены) и выберите в нем объект Glass.

2. Скопируйте его при помощи команды Snapshot (Снимок) меню Tools (Инструменты) таким же образом, как мы это делали для песка в верхней части часов.

3. Еще раз откройте окно Select From Scene (Выбор из сцены) и выберите в нем объекты Glass01 (скопированный объект) и Top.

4. Перейдите в режим изолированного отображения объектов, нажав сочетание клавиш Alt+Q, и выделите объект Glass01.

5. Откройте вкладку Modify (Изменение) командной панели и перейдите в режим редактирования подобъектов Element (Элемент).

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

7. Снова щелкните на объекте Glass01 для выделения внутренней поверхности стекла и в области Normals (Нормали) свитка Surface Properties (Свойства поверхности) нажмите кнопку Flip (Обратить).

СОВЕТ

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

8. Выполните команду Create ► Compound ► Boolean (Создание ► Составные объекты ► Булев), в результате чего на командной панели появятся свитки для работы с составным объектом.

9. Щелкните на кнопке Pick Operand B (Указать операнд Б) и в одном из окон проекций выберите объект Top.

10. В свитке Parameters (Параметры) установите переключатель Operation (Операция) в положение Intersection (Пересечение).

11. Уменьшите немного масштаб объекта, воспользовавшись инструментом Select and Uniform Scale (Выделить и равномерно масштабировать)

Как я уже говорил, такое уменьшение предотвратит появление артефактов при визуализации.

1 2. Используя описанные выше действия, примените к построенному объекту материал песка Sand.

13. Переименуйте построенный объект в Sand_bottom и вернитесь к отображению полной сцены, для чего щелкните на кнопке Exit Isolation Mode (Выйти из режима изолирования).

Сцена на данном этапе моделирования и анимации показана на рис. 8.120.


Рис. 8.120. Объекты сцены в нулевом кадре на данном этапе моделирования


Анимируем построенный объект. Это можно сделать, анимировав перемещение одного из операндов в вертикальной плоскости.

1. Перейдите на вкладку Modify (Изменение) командной панели и переключитесь в режим редактирования подобъектов, выделив строку Operands (Операнды).

2. В области Operands (Операнды) свитка Parameters (Параметры) выделите операнд Top (рис. 8.121).

3. Передвиньте ползунок таймера анимации в 20 кадр и включите запись ключей анимации, воспользовавшись кнопкой Auto Key (Автоключ)

4. Используя инструмент Select and Move (Выделить и переместить) главной панели инструментов, переместите операнд To p вниз на такую величину, чтобы он скрылся за нижней кромкой стекла.

5. Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

6. Выделите ключ, автоматически созданный в нулевом кадре, и переместите его в последний (300) кадр шкалы анимации.

7. Запустите воспроизведение анимации, воспользовавшись кнопкой Play Animation (Воспроизвести анимацию), и проверьте правильность выполненных действий: верхняя часть песка должна уменьшаться, а нижняя, наоборот, увеличиваться.


Рис. 8.121. Свиток Parameters (Параметры) настроек объекта Sand_bottom


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

ПРИМЕЧАНИЕ

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

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

1. Выполните команду Create ► Particles ► PArray (Создание ► Частицы ► Массив частиц) главного меню и в произвольном месте окна проекции Top (Сверху) постройте значок массива частиц.

2. При помощи команды Create ► SpaceWarps ► Forces ► Gravity (Создание ► Пространственные деформации ► Силы ► Сила тяжести) главного меню в произвольном месте окна проекции Top (Сверху) постройте значок силы тяжести.

3. Выполните команду Create ► SpaceWarps ► Deflectors ► UDeflector (Создание ► Пространственные деформации ► Отражатели ► U-отражатель) главного меню и снова воспользуйтесь окном проекции Top (Сверху) для построения значка отражателя частиц.

4. При помощи команды главного меню Create ► Standard Primitives ► Cylinder (Создание ► Простые примитивы ► Цилиндр) постройте в окне проекции Top (Cверху) цилиндр с высотой, равной 0, и диаметром, соответствующим размеру внутреннего отверстия стекла в самом узком месте. Сразу же расположите построенный цилиндр в месте предполагаемого излучения частиц – немного выше середины стеклянной колбы (объект Glass).

На рис. 8.122 представлены созданные объекты в окне проекции Top (Сверху).

Все готово для выполнения анимации сыплющегося песка. Начнем с настройки системы частиц.

1. В окне проекции Top (Сверху) выделите значок системы частиц (объект PArray01) и перейдите на вкладку Modify (Изменение) командной панели.


Рис. 8.122. Вспомогательные объекты в окне проекции Top (Сверху)


2. В свитке Basic Parameters (Базовые параметры) щелкните на кнопке Pick Object (Указать объект) и выберите в качестве излучателя построенный цилиндр.

СОВЕТ

Для выбора труднодоступных или небольших объектов сцены лучше всего использовать окно Select From Scene (Выбор из сцены), которое можно вызвать, щелкнув на кнопке Select by Name (Выделить по имени) или нажав клавишу H.

3. Привяжите к системе частиц гравитацию, для чего на главной панели инструментов нажмите кнопку Bind to Space Warp (Связать с воздействием)

и в окне проекции Top (Сверху) щелкните кнопкой мыши сначала на значке системы частиц (PArray01), а затем на значке силы тяготения (Gravity01).

4. Аналогичным образом привяжите систему частиц к отражателю (UDeflector01), указав соответствующий значок в одном из окон проекций.

ПРИМЕЧАНИЕ

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

5. Вернитесь к настройкам объекта PArray01 (выделив в стеке модификаторов соответствующую строку) и в свитке Particle Generation (Генерация частиц) задайте параметрам следующие значения:

параметру Use Rate (Использовать коэффициент) в области Particle Quantity (Количество частиц) – 50;

всем параметрам в области Particle Motion (Движение частиц) – 0;

в области Particle Timing (Время частиц) установите такие значения: Emit Start (Начало излучения) – 0, Emit Stop (Конец излучения) – 280, Display Unit (Отображение единиц) – 300, а Life (Время жизни) – 20;

параметру Size (Размер) в области Particle Size (Размер частиц) – 0,36 мм.


Страницы книги >> Предыдущая | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | Следующая
  • 0 Оценок: 0

Правообладателям!

Это произведение, предположительно, находится в статусе 'public domain'. Если это не так и размещение материала нарушает чьи-либо права, то сообщите нам об этом.


Популярные книги за неделю


Рекомендации