определять размер прямоугольников), а параметру W/H Ratio (Отношение ширины к высоте) задайте значение 2,5 (в результате прямоугольники станут растянутыми по ходу движения частиц). Кроме того, необходимо определить ориентацию частиц в пространстве, выбрав в списке Orientation (Направление) строку Align to Speed Follow (Выровнять по ходу следования) (рис. 6.54).
Рис. 6.54. Настройки оператора Shape Facing (Плоская форма)
СОВЕТ
Чтобы увидеть, как будут располагаться в пространстве частицы, представленные плоскостями, можно задать для оператора Display 01 (Отображение 01) режим отображения геометрии. В результате в окнах проекций тики будут заменены плоскостями.
Последнее, что осталось выполнить перед визуализацией, – применить к геометрии материал. Для этого необходимо добавить к списку событий оператор Material Dynamic (Материал динамики), перетащив его из списка операторов в очередь событий на место перед оператором Collision (Столкновения). Выделите его, в свитке Material Dynamic 01 (Материал динамики 01) щелкните на кнопке None (Отсутствует). В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) установите переключатель Browse From (Просмотреть из) в положение Mtl Editor (Редактор материалов) и выберите из списка материал Blobs (рис. 6.55).
Рис. 6.55. Окно Material/Map Browser (Окно выбора материалов и карт)
В результате список событий для источника частиц PF Source (Источник потока частиц) будет выглядеть так, как представлено на рис. 6.56.
Рис. 6.56. Окончательный вид списка событий и настройки оператора Material Dynamic (Материал динамики)
Осталось только выполнить визуализацию созданной сцены. На рис. 6.57 представлена визуализация сцены в 285 кадре анимации с использованием эффекта Motion Blur (Размытие движения).
Рис. 6.57. Визуализация фонтана
ПРИМЕЧАНИЕ
В папке ExamplesГлава 06Fountain прилагаемого к книге DVD находится итоговый файл fountain_end.max с объектами сцены. В папке VideoГлава 06 располагается файл fontain.avi с готовой анимацией созданного в данном разделе фонтана.
Глава 7 Динамика. Модули reactor, Hair and Fur и Cloth
? Общие сведения о динамике в 3ds Max
? Практическое задание. Стелем скатерть
? Практическое задание. Развешиваем шторы
? Практическое задание. Боулинг
? Практическое задание. Вывеска на ветру
? Практическое задание. Анимация движения автомобиля
? Практическое задание. Круги на воде
? Практическое задание. Парикмахерское искусство
? Практическое задание. Создаем ткань при помощи модификатора Cloth (Ткань)
7.1. Общие сведения о динамике в 3ds Max
Когда мы говорим о динамике, то в первую очередь представляем себе движущиеся объекты. Наверное, многие из вас помнят из школьной программы, что динамика является одним из разделов механики и изучает движение различных объектов под воздействием приложенных к ним сил.
Программа 3ds Max способна автоматически создавать анимацию, базируясь на физических расчетах положения и поворота объектов в пространстве, их взаимодействии, силе тяжести и трения. В 3ds Max динамика представлена тремя направлениями.
? Объемные деформации (Space Warps) – это один из способов использования различных сил для воздействия на объекты сцены. Объемные деформации не визуализируются, а лишь создают силовые поля, которые влияют на объекты, которые к ним привязаны. Одиночные деформации могут быть привязаны к большому количеству объектов, равно как и один объект может быть привязан к нескольким объемным деформациям. Воздействие объемных деформаций во многом напоминает работу модификаторов, с той лишь разницей, что объемные деформации оказывают влияние не в пространстве объекта, а в пределах глобального пространства. В большинстве случаев использование объемных деформаций пространства – это простой и быстрый способ получения анимационных эффектов, таких, как волны, рябь, взрыв, ветер и т. д.
? Объекты динамики (Dynamics Objects) – в их число входят два объекта деформации: Damper (Амортизатор) и Spring (Пружина). Они во многом похожи на другие полигональные объекты сцены, но, кроме того, могут имитировать действие сил давления или упругости на те объекты, которые к ним привязаны. Оба объекта имеют настраиваемые параметры для быстрого построения геометрии и привязки объектов, с которыми они будут взаимодействовать (например, для Spring (Пружина) это диаметр, количество витков, форма сечения и т. д.).
? Модуль reactor – это модуль, разработанный фирмой Havok. Он предназначен для расчета и моделирования физических взаимодействий. В отличие от традиционной анимации, при которой необходимо вручную создавать состояния объектов в ключевых кадрах, модуль reactor определяет движения объектов, базируясь на их свойствах. Это позволяет разгрузить пользователя 3ds Max от монотонной работы по созданию множества ключевых кадров. Используя физические взаимодействия и свойства (например, масса, эластичность, трение и т. д.), объекты сцены могут взаимодействовать с внешними силами (гравитация, ветер и т. д.) и (или) ограничителями (такими, как сила пружины). Модуль reactor использует всю эту информацию и рассчитывает последовательность состояний объекта. Результат расчета может быть показан в виде анимации в реальном времени (если позволяют возможности аппаратного обеспечения) либо преобразован в ключевые кадры для воспроизведения в сцене.
В данной главе мы рассмотрим несколько простых примеров, которые дают общее представление о работе с модулем reactor.
Кроме того, эта глава содержит практические задания, в которых описывается работа с модулем Hair and Fur, предназначенным для создания волос и шерсти, а также с модулем Cloth, который позволяет создать имитацию ткани.
7.2. Практическое задание. Стелем скатерть
Разработчики компьютерной графики рано или поздно сталкиваются с моделированием интерьера. Можно потратить много времени на создание моделей мебели и предметов быта, но изображение не будет выглядеть реалистичным без добавления мелких деталей. Одной из таких деталей может быть скатерть на столе или легкие шторы, которые колышутся от ветра. Попробуем выполнить эти предметы при помощи модуля reactor.
Первое, что вам понадобится, – модели, с которыми предстоит работать. Для этого постройте простую модель стола и скатерть. В качестве стола используйте примитив Cylinder (Цилиндр) радиусом 600 мм и высотой 30 мм с количеством сторон от 20 до 40. Для скатерти подойдет примитив Plane (Плоскость) с размерами 1500 x 1500 и количеством сегментов по длине и ширине, равным 30.
ВНИМАНИЕ
Желательно, чтобы объекты, которые будут играть роль тканей, имели не больше 3000 полигонов, иначе возможны сбои в работе модуля.
Скатерть должна иметь больший размер, чем стол (чтобы покрыть его), и достаточно большую плотность сетки (чтобы складки, образованные свободно свисающими краями, выглядели естественными). Расположите эти два объекта так, чтобы скатерть находилась немного выше стола и отображалась в окне проекции Top (Сверху) ровно посередине его. На рис. 7.1 показаны объекты в окне проекции Perspective (Перспектива).
Теперь нужно указать программе, в роли каких тел взаимодействия будут выступать объекты. Для этого выполните следующие действия.
1. На вкладке Create (Создание) командной панели щелкните на кнопке Helpers (Вспомогательные объекты)
и выберите в раскрывающемся списке разновидностей объектов строку reactor.
2. Нажмите кнопку RBCollection (Коллекция твердых тел) и затем в любом окне проекции щелкните для создания коллекции твердых тел (положение и размер значка значения не имеют).
3. Добавьте в сцену коллекцию тканей, к которой будет относиться скатерть, для чего нажмите кнопку CLCollection (Коллекция тканей) и также щелкните в производном месте любого окна проекции.
В результате в окнах проекций появятся два значка, представляющие коллекции твердых тел и тканей (рис. 7.2).
Рис. 7.1. Модели стола и скатерти, подготовленные для просчета динамики
Рис. 7.2. Сцена со значками коллекций твердых тел и тканей
Для добавления в коллекцию твердых тел модели стола выделите в окне проекции значок RBCollection (Коллекция твердых тел) и нажмите кнопку