Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

Раздел: VRay, Скрипты

25. Однако есть ещё одна загвоздка (да сколько ж их!) — перемещая слайдер анимации, можно заметить, что боксы движутся по направлению вниз. В наши планы это не вписывается.

3ds max глюки3ds max глюки

26. Заставить боксы оставаться на своих местах можно, перейдя в оператор Speed и задав нулевую скорость.

3ds max Pflow speed3ds max Pflow speed

27. Помните, в операторе Birth мы оставили количество частиц равным 200? Вернёмся к нему и изменим параметр Amount на 2000 или больше. Именно столько станет деревьев в нашей сцене.

Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

28. Если боксы налазят друг на друга, то их можно заставить выдерживать между собой дистанцию. В операторе Position Object имеется параметр Separation (Разобщение), в котором задайте, чему будет равна эта дистанция. Также может возникнуть ситуация, что для каких-то боксов попросту не останется места, другие боксы в связи с заданной дистанцией оттеснят их настолько, что им некуда будет деваться. Для этих случаев предусмотрен параметр If Location Is Invalid: Delete Particles (Если расположение недопустимо: удалить частицы). Ещё, если хотите изменить общее расположение частиц на поверхности, здесь же можете поклацать кнопку New (Новое) в графе Uniqueness: Seed (Уникальность: посев).

3ds max pflow настройки position object3ds max pflow настройки position object

29. Все деревья одинаковыми по размеру быть не могут. В операторе Scale настройте, в пределах какого диапазона будет разниться размер ёлок. Это делается в группе параметров Scale Variation (Варьирование масштаба). Я задал диапазон в 20%. Если хотите, можете изменить исходный масштаб модели, указав желаемое значение в Scale Factor (Коэффициент масштабирования).

3ds max pflow scale3ds max pflow scale

30. Саму иконку Particle Flow стоит сделать более заметной, далее поймёте, почему. Если она находится в центре планеты, вытащите её на открытое пространство. Щёлкните по генератору частиц PF Source в окне Particle View и настройте размер иконки на более крупный. Кроме того, здесь у меня по умолчанию в Quantity Multiplier (Множитель количества) стояло 100% отображения частиц в окнах проекций. Если у вас не так, то исправьте.

Икона pflow 3ds maxИкона pflow 3ds max

31. Верните отображение ели (напомню, мы её скрыли в окне Manage Layers) и клонируйте модель.

3ds max клонирование3ds max клонирование

32. Сделайте ёлке Reset XForm, перейдите на вкладку Modify > Collapse All из контекстного меню через ПКМ в стеке модификаторов.

3ds max collapse all3ds max collapse all

33. Щёлкните правой кнопкой мыши по копии ели > V-Ray Mesh Export. Здесь мы будем делать из модели дерева его прокси версию. Укажите, куда хотите экспортировать файл с моделью. Тут я выбрал вариант экспорта, при котором опорная точка остаётся на своём месте. В противном случае она бы переместилась в начало координатной оси (0,0,0). Ещё поставьте галочку напротив Automatically create proxies (Автоматически создать прокси), чтобы прокси-объект появился в сцене незамедлительно, заменив собой исходный.

vray proxy meshvray proxy mesh

34. А это — прокси-версия ёлки с куда более скромным количеством полигонов. Если хотите, можете настроить его отображение в максимально упрощённом варианте, выбрав Bounding box (Ограничительный бокс) или Point (Точка).

настройки vray proxyнастройки vray proxy

35. Теперь, для того, чтобы заменить каждый бокс нашим прокси, воспользуемся вот этим скриптом particle_replace.rar [233 b] (cкачиваний: 69). Скачайте его себе, разархивируйте эти несчастные 200 байт (а иначе и не закачаешь сюда такой файл) и вызовите в 3ds Max через меню MAXScript > Open Script (Открыть скрипт). Вот так выглядит листинг скрипта:

3ds max вызов скрипт3ds max вызов скрипт

36. Выберите в меню Tools > Evaluate All (Инструменты > Запустить на исполнение всё) и кликните по иконке Particle Flow в окне проекции (вот поэтому мы и сделали её такой большой).


3ds max evaluate all3ds max evaluate all

Замещение произведено. Под боксами образовались деревья, в точности повторяющие их расположение, масштаб, направление и пр.

Замещение объектов 3ds maxЗамещение объектов 3ds max

37. Как было сказано в самом начале, карликовая планета Вирея покрыта снегом, а на данный момент она отображает черно-белую текстуру с картой высот. В редакторе материалов сделайте активным материал с этой текстурой и измените его тип со Standard на Multi/Sub-object.

Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

38. Сохраним старый материал в качестве подматериала.

3ds max multi subobject

39. В Set Number (Установить кол-во) зададим количество материалов равным 2, и в качестве второго материала выберем VRayMtl.

Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

40. Тут или сами настройте материал VRay под снег, или закиньте уже готовый вариант отсюда. Так как Mat ID геосферы равен 1, то материалы нужно поменять местами, поставив снег на ID = 1.

Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

41. Поскольку карта высот стала теперь в другом ID материала, нужно это указать в Particle Flow. Раскроем ещё раз окно Particle View и в операторе Position Object выставьте Use Sub-Material > Mtl ID = 2 (Использовать подматериал > Идентификатор материала = 2).

3ds max use sub material

42. Скроем боксы, чтобы они нам не мешали рендерить планету. В принципе, их можно просто удалить, но лучше всё же скрыть, вдруг захочется что-то переделать. Щелчком мыши по операторам Shape Instance и Display сделайте их неактивными.

3ds max убираем боксы

43. Ставим свет, как вам угодно, камеру и рендерим. Вот что вышло у меня с небольшой постобработкой. Правда, наверное, ёлки тоже должны были быть заснеженными, ну да ладно smile

Particle Flow в 3ds Max: размножение объектов по поверхности c подменой на Proxy

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


Назад Вперед

Другие материалы:

Здесь с 23.01.2013
47 комментариев
Откуда: Россия
Репутация: 0

        

#1 добавил KLICKSTOP

19 января 2014 13:59 | Комментариев: 47
Полезный урок, спасибо! good
Здесь с 23.08.2011
30 комментариев
Репутация: 0

   

#2 добавил harry

20 января 2014 20:31 | Комментариев: 30
Интересный урок, но ИМХО можно было сделать гораздо быстрее с помощью замечательного плагина multiscatter)
Здесь с 21.01.2010
1288 комментариев
Откуда: Earth
Репутация: 9

#3 добавил DDT

20 января 2014 20:43 | Комментариев: 1288
Конечно, мультискаттером такое можно сделать :) Это всего лишь один из способов, как это можно сделать ещё. Плюс с частицами можно вытворять много чего такого, для чего мультискаттер просто не предназначен :) Например, на основе частиц можно построить интересную анимацию этого всего.