Для придания реализма моделируемым сценам, помимо добавления атмосферных эффектов, нередко прибегают к внедрению в них множества очень мелких однотипных объектов, количество и вид которых изменяются с течением времени. Такие объекты принято называть системами частиц, и они незаменимы при моделировании струй дождя, брызг фонтана и хлопьев снега, искр огня, фейерверка и салюта, воздушных пузырьков и пыли, звездного неба и летящей стаи птиц и т.п. Именно с данным типом объектов мы и познакомимся в настоящем уроке.
Системы частиц (Particle Systems) — это совокупность управляемых с помощью параметров малоразмерных объектов, количество и вид которых различны в каждом кадре анимации. В 3D Studio MAX предусмотрено семь видов систем частиц:
| · Spray (Брызги) и Super Spray (Супербрызги) — обеспечивают эф-фект водяных брызг; · Snow (Снег) и Blizzard (Метель) — создают эффект падающего сне-га и даже настоящей метели; · PCloud (Облако час-тиц), РАrrау (Массив частиц) и PF Source (Источник Particle Flow) — предназначе-ны для моделирования широкого спектра эффектов. |

За создание систем частиц отвечает категория ParticleSystems (Системы частиц) панели Create (Создать), при выборе которой становятся доступными все типы систем частиц.
| Технология их создания напоминает создание других объектов геометрии. Например, при формировании систем Spray, Snow, Blizzard и Super Spray достаточно просто выбрать тип системы частиц и перетащить мышь при нажатой левой кнопке по диагонали, а затем на панели Modify откорректировать параметры системы объектов. При создании любого типа частиц создается генерирующий их объект — эмиттер. Он определяет площадь, с которой будут падать частицы, и направление их перемещения (задается направлением вектора, выходящим из центра эмиттера). Эмиттер не визуализируется и в самом простом случае является двумерным. В окнах проекций он отображается в виде прямоугольника. Частицы, в отличие от эмиттера, визуализируются, хотя в нулевом кадре их не видно, но они прекрасно отображаются в любом кадре, отличном от нулевого. |


Для большей части систем частиц эмиттер не только генерирует частицы, но и сам их испускает. Исключение составляют системы ParticleArray и ParticleCloud, в которых испускание частиц производится с другого (предварительно выбранного пользователем) объекта сцены, а за эмиттером сохраняется функция генерирования частиц в соответствии с указанными параметрами.
Spray
Система частиц Spray (Брызги) позволяет генерировать падающие частицы, сохраняющие при перемещении постоянную ориентацию и направление, и предназначена для имитации эффекта падающей воды: водяных брызг, дождевых струй и т.п.
Для примера создайте систему частиц типа Spray (Брызги). Выберите Create => Geometry => ParticleSystems (в открывающемся списке, где по умолчанию выбрано Standart Primitivs), щелкните на кнопке Spray и в окне проекции Top нарисуйте прямоугольный эмиттер — никаких частиц при этом видно не будет, но это лишь потому, что кадр нулевой. Нажмите на панели анимации кнопку Play, и частицы тут же появятся, причем их количество и положение в каждом кадре будет меняться.

Вид проекции Top Вид проекций со Spray-частицами в одном из
со Spray-эмиттером промежуточных кадров
в нулевом кадре
При необходимости несложно отрегулировать положение частиц, их количество и характер движения через свитки параметров на панели Modify. Так, в области Particles можно определить следующие параметры:
- ViewportCount — максимальное число частиц, отображаемых в окне проекций в любой момент времени;
- RenderCount — максимальное число частиц, видимых в каждом отдельном кадре итоговой визуализации; как правило, для окончательной визуализации сцены следует задавать достаточно большую величину этого параметра — порядка 1000;
- DropSize — размер частиц;
- Speed — средняя начальная скорость каждой частицы в момент отрыва от источника, в дальнейшем, если на частицы не действует какая-либо из объемных деформаций (например, гравитация), то они движутся с этой же скоростью, в противном случае скорость меняется в зависимости от вида и настроек гравитации;
- Variation — разброс значений начальных скоростей и направлений распространения частиц, от значения которого зависит область их распространения — чем больше значение данного параметра, тем шире область распространения.
Кроме того, здесь же выбирается вариант отображения частиц в окнах проекций — Drops (Лучи), Dots (Точки) и Ticks (Крестики).
Вид частиц при рендеринге задается в области Render, где предусмотрено два варианта отображения:
| · Tetrahedron — частицы визуализируются в виде вытянутых тетраэдров, длина которых равна значению параметра DropSize, напоминая дождевые капли; · Facing — частицы визуализируются в виде квадратных полигонов, размеры которых совпадают с размерами частицы; форму данных полигонов можно изменять посредством наложения материалов на основе текстурных карт с масками непрозрачности. В области Timing регулируется время жизни частиц: · Start — номер кадра, в котором начнется испускание частиц; по умолчанию данный параметр равен 0, в результате чего в 0-м кадре частицы не видны; если же требуется, чтобы все частицы, задаваемые полями счетчиков, присутствовали уже в 0-м кадре, то в данном поле устанавливается отрицательное значение; · Life — продолжительность жизни частицы в кадрах; чем больше значение данного параметра, тем дольше виден след, оставляемый частицами; если Life = 0, то частицы следа за собой не оставляют; · BirthRate — число новых частиц, появляющихся в каж-дом следующем кадре анимации. Если значение данного параметра превышает максимально допустимое значение — MaxSustainableRate,вычисляемое как частное параметров RenderCount и Life, то генерация частиц производится прерывисто. Для получения устойчивого потока частиц значение BirthRate должно быть меньше или равно MaxSustainableRate. Данный параметр можно изменять только при сброшенном флажке Constant. В области Emitter определяются размеры эмиттера — его ширина (Width) и длина (Length), здесь же можно отказаться от отображения эмиттера в окнах проекций, для чего требуется включить опцию Hide (скрыть). |

Чтобы разобраться с особенностями настройки названных параметров, активируйте созданную систему Spray-частиц, включите режим анимации с автоматическим созданием ключей, переключитесь на последний кадр и на панели Modify увеличьте размер частиц (DropSize) до 5, а скорость их движения (Speed) до 20. Отключите режим автоматического создания колючей, вернитесь в 0-й кадр и проиграйте анимацию в окне проекции Perspective и увидите, что при увеличении номера кадра размер частиц увеличивается, равно как и скорость их падения.

Создание ключей анимации для параметров DropSize и Speed

Вид частиц в 20-м (слева) и 100-м кадрах
| Установите вариант ото-бражения частиц в окнах проекций в виде точек (Dots) — обратите внима-ние, что теперь изменение размеров частиц не будет фиксироваться в окнах проекций. Уменьшите вре-мя их жизни (Life) до пяти кадров и проиграйте ани-мацию, где сразу станет заметно, что уменьшилось не только время, в течение которого виден след от частиц, но и область их распространения. |

| Верните первоначаль-ное значение параметра Life. Отключите флажок Constant, а затем уве-личьте значение пара-метра BirthRate до 10. Это приведет к порции-онной генерации час-тиц, где на некоторых кадрах на экране одно-временно будут нахо-диться не одно, а сразу 2 облака частиц. Вклю-чите флажок Constant — частицы вновь станут испускаться эмиттером равномерно. |

Вид частиц в 5-м (сверху) и 100-м кадрах — в обоих случаях четко видна граница максимального распространения частиц
Удалите для параметров DropSize и Speed созданные ранее ключи анимации, увеличьте размер частиц до 4 и проведите рендеринг для одного из промежуточных кадров анимации. Обратите внимание, что все частицы движутся одинаково. Увеличьте разброс значений начальных скоростей и направлений частиц (Variation) до 3 — частицы станут разлетаться не в одном, а сразу в нескольких направлениях (рис. 12). Создайте AVI-файл — примените команду Rendering => Render, на вкладке CommonParameters активизируйте переключатель ActiveTimeSegment (Активный сегмент времени), укажите имя файла и щелкните на кнопке Render. Просмотрите созданную анимацию в окне встроенного проигрывателя — частицы будут хаотично перемещаться, но количество их окажется невелико. Поэтому увеличьте значение параметра RenderCount примерно до 1000-1500 и вновь проведите визуализацию — поток частиц станет гораздо мощнее (рис. 13).

Вид сцены при одинаковом Вид сцены при хаотичном движении частиц и
движении частиц соответствующие ему настройки базовых параметров
|
