3DS Max 7 - изучаем вместе! Выпуск 9. Системы частиц
Здравствуйте, друзья!
Пишите, пожалуйста, Ваши вопросы, пожелания и идеи сюда! Без Вашего участия выпуск
рискует стать скучным, пресным, а то и вовсе закрыться за отсутствием необходимости
читателю!
В связи с приходом целой кучи писем (две штуки) с вопросами о системах частиц,
выпуск и будет им посвящён.
В природе 3DMax'а совместно сосуществуют два типа систем частиц - Event-Driven
Particle System (Событийно-Управляемая Система частиц) и Non-Event-Driven Particle
System (соответственно, не-событийно-управляемая). Сначала о второй.
Это простые системы частиц, которые имитируют простые вещи, такие как снег, дождь,
спреи и т.д. Все они имеют в своих свойствах начала и конец испускания частиц,
длительность их жизни, скорость и кучу других. Все эти системы могут взаимодействовать
с разными силами (Forces) и препятствиями (Deflectors). Главное их отличие от
Событийно-Управляемых в том, что вы не можете управлять каждой частицей - вы задаёте
только простое поведение всех частиц в целом.
А вот Event-Driven системы - это действительно система, в полном смысле этого слова.
Здесь частицы управляются событиями, которые в свою очередь создаются пользователем, то
есть вами. Первое событие, с которого начинается жизнь частицы - это Birth (Рождение).
И изучать мы с вами будем самое сложное (а вы как думали?) - именно Event-Driven
Particle System. В эту группу входит всего один вид - Particle Flow (Поток Частиц,
далее - ПЧ).
Изучать будем, естественно, на примере - будем делать фейерверк. Чтобы сотворить это
чудо пиротехники на своём комьютере, сначала создайте этот самый ПЧ (Create->Particle
Systems->PF Source). Чтобы частицы летели туда, куда нам надо, поверните его на 180
градусов вокруг оси X или Y. В общем, убедитесь в том, что частицы летят вверх -
сдвиньте бегунок анимации на десяток кадров вперёд. Кроме него нам понадобятся ещё три
материала - ярко-красный, желтый и зелёный (в редакторе материалов сдейлайте три
материала соответствующего цвета, да ещё чтобы они светились в темноте, поставьте их
свойство Self-IlluminAation на 100).
Чтобы добраться до событий, нужно просто нажать 6. Откроется окошко, в которым есть
цетыре области. Сверху-слева находится рабочая область, правее неё - свитки со
свойствами, снизу-слева - так называемое депо (Depot), в нём перечислены все доступные
операторы, тесты и т.д., ну а справа-снизу - маленькая область подсказок.
В окне событий вы видите два события - первое (PF Source 01) отвечает за прорисовку
частиц при визуализации, второе (Event 01) - за их рождение. В начале нам нужна только
одна частица, поэтому ставим соответствующее свойство в зелёный оператор Birth (Amount
= 1). Чтобы она вылетела в 10-м кадре там же указываем Emit Start и Emit Stop = 10.
Далее к тому разнообразию операторов нужно добавить оператор материала (Material
Static) из нижней области. Просто перетащите его в событие рождения. Чтобы заодно
удалить поворот частицы, оператор материала тащите прямо на Rotate (на нём появится
красная линия - оператор заменит его). В свойствах оператора материала нажмите большую
кнопку сверху и укажите зелёный материал (в окошке выбора материала слева выберите
флажок Mtl Editor, и потом выберите нужный материал).
Теперь нужен взрыв. Для этого перетащите в самый низ события жёлтый тест проверки
возраста (Age Test). И в его свойствах обнулите Variation - нам нужем взрыв строго в
40-м кадре.
После проверки на возраст наша частица отправляется в следующие событие (сейчас мы
его создадим). В этом событии произодёт взрыв частицы и распад её на кучу других и
присвоение ей нового материала. Перетащите в любую свободную от событий области тест
Spawn. Он рождает новые частицы. Соедините его с предыдущим тестом - схватите мышкой
торчащую слева от Age Test точку и перетащите её на кружок над Spawn. Появится линия,
подтверждающая успешность этого действа. Потом известным уже способом добавьте к этому
событию оператор материала и укажите жёлтый. В свойствах Spawn'а указываем нужные
свойства - родить однажды (Once), удалить ракету-носитель (Delete Parent), сорок деток
(Offspring # = 40), унаследовать 20% от скорости (Inherited = 20) и разлетаться куда
попало (Divergence = 180).
Дальше уже снова добавьте проверку возраста... Все остальные действия очень похожи
на предыдущие, поэтому просто приложу готовую сцену - посмотрите на события, свойства
операторов, всё должно быть понятно. Если возникнут вопросы, нажмите F1 - очень хорошо
помогает. Если не поможет... Пишите мне.
Поделитесь алгоритмом создания зеркальной поверхности (как на
картинке с золотым чайником).
Андрей
Прозрачные поверхности создаются двумя способами:
В материале Raytrace есть параметр Reflect (Отражение). Там можно
задать цвет (поэкспериментируйте с ним, поймёте) либо указать процент
отражения (100 - полное, 0 - никакого).
В любом материале есть карта Reflect. То есть не карта, а слот для
карты. Вот туда обычно вставляются карты Raytrace, Reflect/Refract или Flat
Mirror. Последняя используется для создания только плоских зеркал,
остальные - для любых. Эти остальные различаются только набором параметров,
в которых можно покопаться.