Подписка на RSS

Уроки 3D: обзор частиц в трехмерной графике (1 часть)

Сегодня пройдемся немного по частицам, которые используются в Maya и 3d max. В интернете достаточно много уроков 3D, которые освещают работу с флюидами, но письменной теории не так много. Потому, сегодня поговорим именно об этом. Постараюсь рассказать о контейнерах для флюидов, эмитерах и свойствах.

Начнем, пожалуй, с контейнеров флюидов.

Контейнер флюида – это прямоугольный 2D или 3D ограничитель, определяющий пространство, в котором находится флюид. Флюид-эффект не может существовать вне контейнера. Таким образом, контейнер является принципиальным элементом всякого динамического или не динамического флюид эффекта. Исключение составляет эффект открытой воды, который может существовать без контейнера.

Контейнер флюида разделяется на трехмерную сетку, каждая ячейка которой называется воксель (voxel).

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

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

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

2D контейнеры

2D контейнер флюида — это 3D контейнер, толщиной в один воксель. Размер вокселя определяется размером контейнера по оси Z.

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

3D контейнеры

3D контейнер – это контейнер флюида толщиной в два и более вокселя.

Эмиттеры флюида

Вы можете добавлять в контейнер свойства флюида (Плотность (Density), Температура (Temperature), Энергия (Fuel) и Цвет (Color)) используя эмиттер флюида. Эмиттер содержит значения этих свойств и заполняет воксели контейнера в процессе расчетов. Эмиттер флюида обязан находиться внутри контейнера.

Содержимое контейнера

Вы можете задать флюид-эффект, определяя значения следующих свойств флюида внутри контейнера: Плотность (Density), Скорость (Velocity), Температура (Temperature), Энергия (Fuel) и Цвет (Color).
Можно использовать разные методы определения этих свойств, в зависимости от эффекта, который Вы хотите произвести и должен ли эффект быть динамическим или нет.

Density (Плотность)

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

Velocity (Скорость)

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

Temperature (Температура)

Температура действует на поведение динамических флюидов, заставляя их подниматься или опускаться.

Fuel (Энергия)

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

Color (Цвет)

Цвет флюида. Цвет применяется только там, где есть плотность.

Примеры

Данный пример комбинирует Плотность, Температуру, Энергию и скорость для имитации пламени.

Есть два пути применить цвет к флюидам:

Использование цвета встроенного шейдера

Встроенный шейдер предоставляет простой путь для окрашивания флюидов.

Использование сетки

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

Комбинирование свойств флюида для создания динамических эффектов.

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

2 комментария на «Уроки 3D: обзор частиц в трехмерной графике (1 часть)»

  1. Автору респект, спасибо за статью!

  2. Спасибо за статью! Хотелось бы продолжения и более подробно все рассмотреть!

Ваш отзыв


Video Tutorials