Porsche — Underwater road
3d award

VRayEnvironmentFog в интерьерной визуализации. Конкурсный урок

 VDream 2.03.0 22 июля 2013 в 13:53

Всем привет! Данный урок расскажет о том, как создать объемный свет в 3sd max+VRay с помощью VRayEnvironmentFog. Этот эффект может пригодиться в интерьерной визуализации, чтобы например, украсить рендер красивым лучиком солнца из окна, или показать луч от проектора при визуализации домашнего кинотеатра. Урок будет подробным и понятным даже начинающим. В первой его части создадим сцену имитирующую интерьер, во второй смоделируем в сцене освещение солнца с лучиком из окна, а в третьей сымитируем проектор для кинотеатра. Урок был сделан в 3ds Max 2013 c визуализатором VRay 2.40.03. Также он актуален для всех версий этих программ, которые поддерживают VRayEnvironmentFog.

Часть 1. Создание сцены, имитирующей комнату с окном.

Собственно, не будем углубляться в теорию, а сразу перейдем к практическим действиям:

Прежде всего, необходимо установить единицы измерения в сцене. В данном случае удобнее будет работать с сантиметрами. По желанию можно также установить в качестве единиц измерения миллиметры. Запустите 3ds Max. Выберите в меню Customize (Настройка) команду Units Setup (Единицы измерения), чтобы открыть одноименное диалоговое окно (рис. 1.1). Установите переключатель Display Units Scale (Единицы шкалы отображения) в положение Metric (Метрические) и выберите в расположенном ниже раскрывающемся списке вариант Centimeters (Сантиметры). Не забудьте также, нажав кнопку System Unit Setup (Установка системных единиц), в появившемся диалоговом окне выбрать из списка Centimeters (Сантиметры).

1.1.jpg
Рис. 1.1. Диалоговые окна настройки единиц измерения

Далее нужно указать параметры координатной сетки. Выберите в меню Tools (Сервис) команду Grid and Snaps (Сетка и привязки)4Grid and Snap Settings (Настройка сетки и привязок) и перейдите на вкладку Home Grid (Исходная сетка) открывшегося диалогового окна. В поле Grid Spacing (Шаг сетки) введите значение 1,0 см (рис. 1.2). В результате расстояние между вспомогательными линиями координатной сетки составит 1 см. Остальные параметры оставьте без изменений. Закройте диалоговое окно. Сохраните файл под любым названием, у нас он будет называться Sun_Fog.max.

1.2.jpg
Рис. 1.2. Окно настройки параметров координатной сетки

Теперь создадим сцену, имитирующую интерьер с окном, чтобы извне мог проникнуть луч солнца. В окне Perspective (Перспектива) создайте примитив типа Box (Параллелепипед) размером с небольшую комнату. Чтобы сделать это на командной панели Create (Создать) нажмите кнопку Geometry (Геометрия), в раскрывающемся списке выберите Standard Primitives (Стандартные примитивы) и нажмите кнопку Box (Параллелепипед). Появится курсор в виде белого креста с темной серединой. Затем в окне проекции Top (Вид сверху) нажмите левую кнопку мыши и, не отпуская ее, растяните будущий параллелепипед до размера примерно 400  500 см, ориентируясь по сетке, или по меняющимся значениям в поле Length (Длина) и Width (Ширина) раскрывающегося списка Parameters (Параметры). Отпустив левую кнопку и перемещая мышь в направлении главного меню и панели инструментов, задайте высоту объекта примерно 240 см. Когда нужная цифра проявится в поле Height (Высота), щелкните левой кнопкой еще раз для фиксации высоты. Для выхода из режима моделирования, щелкните правой кнопкой. Перейдите в окно Perspective (Перспектива) (рис. 1.3). При необходимости вручную поправьте размеры примитива в указанных выше полях. Назовите объект Wall.

1.3.jpg
Рис. 1.3. Примитив Box (Параллелепипед) как основа для будущей модели помещения 

совет
Чтобы быстрее перемещаться между видовыми окнами программы 3ds Max удобно использовать «горячие клавишы». Например, для быстрого перехода в окно Top (Вид сверху) достаточно нажать на клавиатуре букву T, а для установки перспективного вида необходимо нажать клавишу P. Выделенный в сцене объект станет прозрачным, с видимыми гранями, если нажать сочетание клавиш Alt+X, что впоследствии нам очень пригодится. Клавиша Z установит оптимальный масштаб сцены в видовом окне. Ну и «пропавшие стрелочки» можно вернуть, нажав клавишу X. Подробнее о горячих клавишах и их сочетаниях для программы 3ds Max можно прочесть в официальной справке к 3ds Max.

Чтобы сымитировать толщину стен и в одно действие сделать коробку полой внутри воспользуемся булевой операцией. Данными операциями пользуются крайне редко из-за того, что после применения их сетка объектов, как правило, имеет безобразный вид и её приходится долго редактировать. Однако в данном случае, булевая операция вычитания наоборот нам поможет сделать стены, потолок и пол модели комнаты единым объектом. Убедитесь, что объект Wall по-прежнему выделен, и выберите в меню Edit (Правка) команду Clone (Дублировать). Откроется диалоговое окно Clone Options (Параметры дублирования) (рис. 1.4). Установите переключатель Object (Объект) в положение Copy (Копия), введите в поле Name (Имя) слово «Operand» и щелкните на кнопке OK. Аналогично можно нажать сочетание Ctrl+V и точно также проделать вышеуказанные операции. Таким образом, мы создали операнд для последующего вычитания его из основного объекта с тем, чтобы создать толщину стен.

1.4.jpg
Рис. 1.4. Дублирование объекта при помощи команды Clone (Дублировать)

Теперь выделим объект Operand и уменьшим его размеры по ширине и длине на 40см от первоначальной величины, а по высоте на 20см. Выделив объект Wall и нажав сочетание клавиш Alt+X для придания ему прозрачности, увидим, что объект Operand, расположенный внутри него необходимо поднять, так как нижние плоскости этих объектов пересекаются. Это в дальнейшем может привести к созданию нижней стенки (пола) объекта с нулевой толщиной и к появлению артефактов при визуализации. Выделите и переместите инструментом Select and Move (Выбрать и переместить) объект Operand вверх по оси Z на 10 см (рис 1.5.).

1.5.jpg
Рис. 1.5. Расположение вспомогательного объекта для дальнейшего создания стен в модели помещения

Вновь выделите объект Wall, нажмите кнопку Geometry (Геометрия) на командной панели Create (Создать), выберите из списка пункт Compound Objects (Составные объекты) и нажмите кнопку Boolean (Булевы объекты). По умолчанию все настройки установлены так, как нам необходимо (рис. 1.6). Имя выделенного операнда отобразится в поле операций. Нажмите в свитке параметров кнопку Pick operand B (Указать операнд B) и, наведя указатель в окне проекции на объект с названием Operand, нажмите левую кнопку мыши, проследив, чтобы в поле Operation (Операция) переключатель стоял в положении Substraction A-B (Вычитание A-B). Объект станет булевым, операнд, который вычитался, исчезнет, а в месте его расположения образуется пустое пространство размером с него. Результат можно увидеть только при условии придания объекту прозрачности (сочетание Alt+X).

1.6.jpg
Рис. 1.6. Создание стен путем применения булевой операции вычитания

совет
При создании булевых объектов тщательно проверяйте все параметры операндов. После назначения объектам свойств булевых операндов вернуть им первоначальный вид можно, только отменив операцию кнопкой Undo (Отменить) сразу после ее выполнения. Управляя булевыми операндами (масштабируя или перемещая их), можно изменять результат проведения операции.

Чтобы получить модель имитирующую комнату с окном, необходимо прорезать в одной из стен прямоугольное отверстие, предварительно преобразовав объект в редактируемую сетку. Для этого перейдите на вкладку Modify (Модификация) командной панели и правой кнопкой щелкните на типе объекта Boolean (Булевы объекты). В открывшемся выпадающем меню выберите Editable Poly (Редактируемый полигональный объект) и преобразуйте объект в полигональный щелкнув левой кнопкой мыши. Там же на панели модификации откройте список подобъектов Editable poly (Редактируемый полигональный объект) нажав на плюсик, или в свитке Selection (Выделение) выберите подобъект Polygon (Полигон). В сцене выделите внешний и внутренний полигоны ближайшей к зрителю стены (рис. 1.7).

1.7.jpg
Рис. 1.7. Преобразование объекта в полигональную сетку с последующим выделением полигонов

В раскрывающемся свитке Edit Polygons (Редактировать полигоны) нажмите кнопку Inset (Вставить). В видовом окне курсор изменит свой вид на крестик с прозрачным квадратом и точкой в середине. Нажмите левую кнопку мыши и не отпуская сместите курсор вниз по экрану. В результате на выделенных полигонах появится вставка, связанная ребрами с крайними вершинами этих полигонов (рис. 1.8). Щелкнув правой кнопкой мыши, выйдите из режима вставки полигонов.

1.8.jpg
Рис. 1.8. Применение операции Inset (Вставить) на выделенных полигонах

Полигоны, получившиеся после вставки необходимо привести к одному размеру, для чего воспользуемся редактированием при помощи перемещения вершин с привязкой. Перейдите в видовое окно Front (Вид спереди) и выберите подобъект Vertex (Вершины) свитка Selection (Выделение). На панели инструментов сделайте активной привязку 2,5, нажав кнопку Snap Toggle (Привязка) и выбрав данный вид привязки из списка. Инструментом Select and Move (Выделить и переместить) совместите четыре точки внешнего полигона с точками внутреннего (рис. 1.9).

1.9.jpg
Рис. 1.9. Совмещение вершин, путем их перемещения с использованием привязки

Выключите режим привязки, отжав кнопку Snap Toggle (Привязка) и выделив рамкой по паре точек, перемещением сделайте размер будущего окна приблизительно 100х140 см, ориентируясь по сетке видового окна. Перейдите в видовое окно Perspective (Перспектива) и выделите внутренний и наружный полигоны окна. В свитке Edit Polygons (Редактировать полигоны) однократно нажмите кнопку Bridge (Переход). В результате в стене будет проделано отверстие, для имитации окна в комнате (рис. 1.10).

1.10.jpg
Рис. 1.10. Создание отверстия для имитации окна с помощью операции Bridge (Переход)

Закройте список подобъектов  Editable Poly (Редактируемый полигональный объект) на панели модификации. Теперь наполним сцену объектами-примитивами разного размера, формы и цвета. Можно этого и не делать, но глобальное освещение в пустой сцене будет выглядеть не очень выразительно, так как, по сути, является диффузно отраженным от других объектов светом. То есть, чем больше в сцене объектов разного цвета, формы, фактуры и степени отражения, тем более презентабельным будет выглядеть сама сцена при расчете глобального освещения. Чтобы не загружать сцену моделями реальных объектов интерьера, для наглядности просто будем использовать различные примитивы. На командной панели Create (Создать), нажав кнопку Geometry (Геометрия) выберите из списка Standard Primitives (Стандартные примитивы) и выбирая между различными объектами на свой вкус заполните трехмерную комнату данными примитивами (рис. 1.11). По вертикали все эти объекты лучше расположить на уровне пола, чтобы они не создавали эффект «висения» в воздухе. Приблизительно 20-30 примитивов разной формы и размера будет достаточно.

1.11.jpg
Рис. 1.11. Заполнение помещения различными примитивами 

совет
Если отображение габаритного контейнера трехмерных объектов в видовых окнах мешает при редактировании, его можно убрать, нажав клавишу J на клавиатуре. Причем включение и отключение габаритного контейнера происходит только в том видовом окне, которое в текущий момент является активным.

Прежде чем назначить объектам сцены материалы, проделаем одно действие. Выделите объект Wall, на командной панели перейдите на вкладку Display (Дисплей) и в свитке Hide (Скрыть) нажмите кнопку Hide Selected (Скрыть выделенное). Этим действием мы скроем объект, имитирующий стены помещения, чтобы он не мешал нам присваивать материалы остальным объектам сцены. Чтобы в дальнейшем отобразить его достаточно нажать кнопку Unhide All (Показать все), или кнопку Unhide by Name (Показать по имени ) и в открывшемся окне выбрать объекты, которые необходимо отобразить (рис. 1.12).

1.12.jpg
Рис. 1.12. Диалоговое окно инструмента скрывающего/отображающего объекты сцены 

Чтобы открыть редактор материалов нажмите на клавиатуре букву M, или в меню Rendering (Визуализация) выберите пункт Material Editor (Редактор материалов) и один из 2-х вариантов редактора – Compact или Slate. В нашей сцене удобнее будет работать с первым видом редактора, так как никаких сложных материалов мы создавать не планируем и обойдемся стандартными функциями. Работать мы будем с материалом VRayMtl (Стандартный материал визаулизатора VRay) и необходимо, чтобы данный визуализатор был установлен в качестве рабочего в окне Rendering (Визуализация) в раскрывающемся свитке Assign Renderer (Назначить визуализатор) (рис. 1.13).

1.13.jpg
Рис. 1.13. Редактор материалов и свиток установки рабочего визуализатора 

Если в редакторе материалов по умолчанию не установлены VRayMtl, то необходимо открыть окно Get Material (Взять материал) и перенести его в любой слот редактора. Назовите материал m1 и измените его диффузный цвет, например на красный. Перетащите готовый материал в пять, или более соседних слотов и также измените их диффузные цвета на любые другие. Не забудьте дать этим материалам разные названия, например m2, m3 и т.д. Выделяя по очереди объекты в сцене и нажимая в редакторе материалов кнопку Assign Material to Selection (Назначить материал выделению) присвойте все созданные разноцветные материалы всем объектам сцены (рис. 1.14).

1.14.jpg
Рис. 1.14. Создание материалов с присвоением их объектам сцены

Отобразите объект Wall и скопировав любой VRayMtl присвойте его данной модели. Диффузный цвет материала сделайте серым, примерно 128 по шкале. Также назовите материал, например, wall. Скопируйте его еще в два слота и назовите один floor (пол), а другой ceiling (потолок). Диффузный цвет материала пола сделайте темно-серым, а потолка соответственно белым. Теперь чтобы присвоить материал полигонам, имитирующим пол и потолок отдельно от остальной части объекта, выберите подобъект Polygon (Полигон) и выделите полигон внутри объекта Wall и далее присвойте ранее созданный материал (рис. 1.15). Точно такую же операцию проделайте с полигоном потолка.

1.15.jpg
Рис. 1.15. Создание материалов и присвоение их полигонам потолка, стен и пола

Первая часть урока завершена, во второй части мы установим солнечное освещение в сцене и настроим видимый луч света из окна.

Часть 2. Лучик солнца из окна.

Сцена для демонстрации эффекта видимого луча объемного света готова. Теперь нужно осветить её светом, имитирующим солнечный, установить параметры визуализации, видовую камеру и настроить объемный свет при помощи VRayEnvironmentFog. Для чего произведем следующие действия:

Файл Sun_Fog.max у нас остается открытым. На панели модификации перейдите на вкладку Create (Создать), нажмите кнопку Lights (Осветители) и в раскрывающемся списке выберите VRay. Появится список источников света визуализатора VRay. Нажмите кнопку VRaySun (Солнечный свет), щелкните левой кнопкой мыши  в любом месте сцены и не отпуская переместите курсор в любом направлении, создав тем самым источник света имитирующий солнце. При этом появится диалоговое окно с предложением автоматически добавить карту VRay Sky (Небесный свет) на слот Environment (Окружение) сцены (рис. 2.1). На предложение диалогового окна ответьте утвердительно.

2.1.jpg
Рис. 2.1. Установка в сцену источника солнечного света

Направьте источник солнечного света снаружи помещения в окно, приподняв над ним так, чтобы лучи от него проникали внутрь под большим углом. Проделать это можно с помощью инструмента Select and Move (Выбрать и переместить), по очереди выделяя и перемещая источник солнечного света и его цель. Установите параметры источника (далее ИС) как на рис. 2.2. Они практически не отличаются от установленных по умолчанию, за исключением Turbidity (Запыленность) – установите 7 для придания свету желтоватого оттенка, Size Multiplier (Размер яркости) – установите 2 для смягчения краев границы тени света , Shadow Subdivs (Образцы теней) – установите 16 для улучшения качества теней от данного ИС.

2.2.jpg
Рис. 2.2. Параметры настройки источника солнечного света

Для установки видовой камеры на панели модификации нажмите кнопку Cameras (Камеры) и из списка выберите VRay. Нажмите кнопку VRayPhysicalCamera (Физическая камера VRay) и в окне вида Top (Вид сверху) установите камеру в сцене также как мы устанавливали ИС солнечного света, с той лишь разницей, что камеру необходимо установить внутри помещения в углу, а цель её направить по диагонали в противоположный угол (рис. 2.3).

2.3.jpg
Рис. 2.3. Установка в сцену физической камеры VRay

Параметры камеры установите как рис. 2.4. Подробное описание настроек физической камеры VRay выходит за рамки данного урока. Стоит лишь отметить, что данные настройки с небольшой корректировкой подходят для визуализации большинства сцен помещений с дневным светом при условии, что параметры освещения и визуализации установить как в данном уроке. Теперь перемещением камеры и цели добейтесь вида из камеры как на рис. 2.4. Не забудьте после установки камеры нажать на кнопку Guess Vertical Shift (Указать вертикальный сдвиг), чтобы исправить перспективные искажения и выровнять вертикали.

2.4.jpg
Рис. 2.4. Параметры настройки физической камеры VRay

совет
Чтобы быстро сменить один из видов (Top, Front, Left…) на вид из камеры, достаточно нажать на клавиатуре букву С.

Теперь настроим параметры рендера, для чего на панели инструментов нажмите кнопку Render Setup (Установки визуализации). Откроется одноименное окно с пятью вкладками. Многие параметры для получения приемлемого результата можно оставить по умолчанию. Подробно объяснять каждую настройку возможности не представляется ввиду обширности темы, поэтому просто установим параметры согласно изображениям. Перейдите на вкладку VRay и раскрывающихся свитках VRay: Frame buffer (Буфер кадра), VRay: Image sampler (Сглаживание изображения), VRay: Color Mapping (Распределение цвета) установите параметры как на рис. 2.5.

2.5.jpg
Рис. 2.5. Параметры буфера кадров, сглаживания изображения и распределения света визуализатора VRay

На следующей вкладке Indirect illumination (Непрямое освещение) настроек, которые необходимо будет изменить и установить гораздо больше, чем на предыдущей. Именно здесь мы настраиваем параметры глобального освещения, первичный и вторичный отскоки. Установите их согласно рис. 2.6. Можно добавить, что данные настройки подходят для визуализации несложных интерьерных сцен с оптимальным качеством и при приемлемой скорости расчета изображения.

2.6.jpg
Рис. 2.6. Настройки непрямого освещения для сцены, имитирующей помещение

Остальные параметры можно оставить по умолчанию. Единственное, что еще необходимо будет сделать на вкладке Settings (Установки), это установить флажок Optimized atmospheric evaluation (Оптимизировать атмосферные вичисления), так как мы собираемся визуализировать сцену с атмосферным эффектом VRayEnvironmentFog (Туман VRay). Если теперь визуализировать сцену с данными настройками, то мы получим изображение как на рис. 2.7.

2.7.jpg
Рис. 2.7. Сцена визуализированная с указанными выше параметрами

Так как основной задачей урока будет показать эффект объемного света из окна при помощи VRayEnvironmentFog (Туман VRay), на параметрах этого эффекта остановимся подробнее. Чтобы включить данный эффект, в меню Rendering (Визуализация) выберите Environment (Окружение). В открывшемся диалоговом окне на одноименной вкладке в свитке Atmosphere (Атмосфера) нажмите кнопку Add (Добавить) и выберите VRayEnvironmentFog (Туман VRay) (рис. 2.8). Нажав кнопку OK, добавьте его в список атмосферных эффектов.

2.8.jpg
Рис. 2.8. Диалоговое окно выбора атмосферных эффектов 3ds Max

Откроется свиток параметров (рис. 2.9), каждый из которых стоит описать более подробно:

  • Fog color (Цвет тумана) – цвет тумана, когда он освещен ИС. Изменение цвета не приводит к изменению объема тумана. Можно использовать как чистый цвет, так и любую текстурную карту.
  • Fog distance (Протяженность тумана) – отвечает за плотность тумана. Чем больше значение, тем менее плотным будет туман. Также можно управлять плотностью с помощью текстурной карты.
  • Fog emission (Светимость тумана) – управляет светимостью тумана, когда данный эффект не участвует в расчете глобального освещения.
  • Scatter GI (Рассеивание глобального освещения) – при установке, туман рассеивает не только прямое, но и глобальное освещение. Может быть заменено самосвечением тумана (параметр Fog emission). Глобальное освещение, рассеиваемое туманом, будет просчитываться согласно выбранному алгоритму (Irradiance Map, Light Cache).
  • Scatter bounces (Отскоки рассеивания) – при включении предыдущей функции задает число отскоков GI, вычисленных внутри тумана. Большее значение подразумевает лучшее качество эффекта.
  • Fog height (Высота тумана) – определяет высоту заполняемую туманом, если не указаны специальные габаритные контейнеры (Gizmo). Начинается с указанной высоты от нуля по оси Z и распространяется вниз без ограничений.
  • Subdivs (Образцы) – число образцов внутри тумана, в которых вычисляется объемное освещение. Чем больше число, тем менее шумным будет результат.

В случае, когда хотя бы один из объемных параметров, описанных выше, определяется текстурой, в силу вступает расчет эффекта по алгоритму отличному от простой экспоненциальной схемы вычисления. Это позволяет задействовать дополнительные параметры настройки:

  • Step size (Размер шага) – показывает  размер одного шага в объеме тумана. Меньшие значения дают более точный результат, но увеличивают время просчета. На практике достаточно размера шага в 2-3 раза  меньше значения Fog distance (Протяженность тумана).  
  • Texture samples (Сэмплы  текстуры) – отвечает за количество сэмплов текстуры для каждого шага.  
  • Cutoff threshold (Порог отсечки) – параметр согласно которому алгоритм трассировки заканчивает сканирование объема эффекта. Чем ниже значение, тем дольше и качественнее будет просчет. 
  • Max steps (Максимальное число шагов) – число шагов при проходе через объем тумана.
  • Gizmo falloff radius (Радиус затухания для габаритного контейнера) – помогает избежать резких границ эффекта внутри габаритного контейнера и указать радиус затухания.  
  • Gizmo falloff mode (Режим затухания для контейнера) – позволяет выбрать один из двух режимов затухания для эффекта ограниченного габаритным контейнером.
  • Gizmo merge mode (Режим присоединения контейнера) – также дает возможность выбора между двумя режимами соединения нескольких габаритных контейнеров для получения результирующего эффекта.

Кроме вышеозначенных параметров атмосферный эффект тумана имеет свиток со слотами для текстурных карт и свиток с двумя областями для указания объектов и источников света в виде габаритных контейнеров, а также свиток с флажками, указывающими влияние эффекта на фон сцены, отражение, преломление и другие свойства (см. рис. 2.9).

2.9.jpg
Рис. 2.9. Параметры настройки эффекта VRayEnvironmentFog

Если теперь визуализировать сцену с параметрами атмосферного эффекта по умолчанию, указав только высоту тумана 100 см, то мы получим изображение, часть которого будет закрыта черной пеленой, начиная от 100 см по оси Z (рис. 2.10а). То есть, как указано в параметрах по умолчанию, черный, с небольшой прозрачностью туман закрыл часть пространства сцены, изменив при этом освещение, а время визуализации возросло примерно в 1,5 раза. Если теперь изменить следующие параметры:

  • Fog color – сделайте слегка желтоватого цвета, чтобы сымитировать цвет луча солнца;
  • Fog distance – для уменьшения плотности тумана установите значение 1000 см;
  • Scatter GI – флажок установите для того, чтобы в тумане рассеивалось GI, это улучшает вид, но может увеличить время;
  • Scatter bounces – сделайте равным 4, этого количества отскоков будет достаточно для нормального качества эффекта;
  • Subdivs – установите 16, для менее шумного результата;
  • Fog height – для этого параметра можно установить значение 300 см, это будет чуть больше, чем высота нашего помещения;

Остальные параметры оставьте по умолчанию. В свитке VRayEnvironmentFog nodes (Привязки туманаVRay), в правом окошке Lights (Осветители) нажмите кнопку Add (Добавить) и щелкнув в любом видовом окне сцены на ИС VRaySun (Солнечный свет) добавьте его в список для того, чтобы данный источник участвовал в имитации объемного освещения.

Теперь, если визуализировать сцену с данными параметрами, мы увидим, что туман по-прежнему заполняет всю сцену, но в нем отчетливо виден источник солнечного света (рис. 2.10б). Время визуализации увеличилось примерно в 2 раза. Отличие параметров VRayEnvironmentFog (ТуманVRay) установленных по умолчанию от тех, что мы изменили можно увидеть на рис. 2.10в.

2.10..jpg
Рис. 2.10. Визуализация эффекта тумана с параметрами по умолчанию (а) и с параметрами указанными справа (б)

Настало время придать эффекту окончательный вид. Для этого необходимо ограничить объемный свет формой солнечного луча, чтобы вся сцена не была заполнена туманом. Помимо этого, время визуализации эффекта снизится за счет ограничения объема заполняемого туманом. Создадим Gizmo (Габаритный контейнер), который будет повторять форму солнечного луча в сцене. Естественно до миллиметра форму подогнать не получится, поэтому будем ориентироваться по отображению формы луча в видовых окнах редактора. На виде Top (Вид сверху) создайте примитив Box (Параллелепипед). Преобразуйте его в Editable Poly (Редактируемую полигональную сетку), или назначьте поверх объекта модификатор Edit Poly (Редактировать полигональную сетку). Далее, не меняя видового окна, выбрав подобъект Vertex (Вершины) перемещением точек, преобразуйте объект так, чтобы он имитировал форму луча источника VRaySun (Солнечный свет), который попадет в оконный проем (рис. 2.11). Назовите новый объект Gizmo.

2.11.jpg
Рис. 2.11. Расположение габаритного контейнера эффекта в сцене

Перейдя в видовое окно Left (Вид слева) доработайте форму объекта Gizmo в другой плоскости, чтобы она имела вид луча источника имитирующего солнце (рис. 2.12а). Окончательно придать форму, повторяющую падающий из окна солнечный свет можно в окне Perspective (Перспектива) (рис. 2.12б). Возможно, это может составить некоторую сложность для начинающих и придется немного потренироваться.

2.12..jpg
Рис. 2.12. Габаритный контейнер эффекта в разных видовых окнах

Необходимо некоторым образом уточнить форму объекта Gizmo в области окна, чтобы он сначала повторял форму и размеры оконного проема, а далее уже форму луча. Для этого на виде сверху выберите подобъект Edge (Ребра), мышью выделите четыре длинных ребра объекта Gizmo и в свитке Edit Edges (Редактировать ребра) нажмите кнопку Settings (Установки) рядом с кнопкой Connect (Соединить). Появится окно задания параметров данной операции, где параметру Slide (Сдвинуть) необходимо установить значение -90, или около того, что бы сдвинуть новое ребро к оконному проему, не меняя при этом форму основного объекта (рис. 2.13а). Щелкните мышью на значке флажка в этом окне, чтобы подтвердить операцию. Перемещением точек повторите форму оконного проема в пределах толщины стены (рис. 2.13б,в), причем точки перемещать необходимо как на виде сверху, так и на виде Left (Вид слева). Для более точного позиционирования можно применить привязки, но тогда лучше использовать трехмерную привязку в видовом окне Perspective (Перспектива).

2.13.jpg
Рис. 2.13. Уточнение формы габаритного контейнера с помощью перемещения вершин модели

Осталось внести объект Gizmo в список привязок к эффекту, только на этот раз в левое окно списка. Нажмите кнопку Add (Добавить) под левым окном со списком и в сцене щелкните по объекту Gizmo, в результате чего он будет добавлен в качестве привязки к эффекту (рис. 2.14). Теперь чтобы данный объект не мешал в сцене, его можно выделить и скрыть при помощи кнопки Hide selected (Скрыть выделенное) вкладки Display (Дисплей) на панели модификации.

2.14.jpg
Рис. 2.14. Список габаритных контейнеров в параметрах эффекта

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

2.15.jpg
Рис. 2.15. Финальная визуализация сцены с эффектом

На этом вторая часть урока завершена. Теперь вы можете использовать объемный свет в сценах, визуализированных при помощи VRay для придания дополнительного художественного эффекта. В третьей части урока мы рассмотрим создание объемного луча света из проектора.

Часть 3. Объемный луч из проектора.

Методика создания луча из проектора очень похожа на ту, что описывалась в предыдущей части, однако в ней есть свои особенности. В частности, нам придется использовать стандартный ИС типа Spot (Прожектор), так как VRay не имеет в своем арсенале подобного типа осветителей. Кроме того, стандартный прожектор позволяет корректировать размер конуса и область спада луча. Дополнительным преимуществом послужит возможность назначить карту проецирования для данного стандартного ИС, так как мы собираемся имитировать не только объёмный луч, но и эффект проецирования картинки на экран. Для этого проделайте следующие действия:

Сцену будем использовать ту же самую, за исключением того, что источник солнечного света придется отключить, либо удалить, так как нам нужна сцена, имитирующая вечерний свет. Кроме того, необходимо будет уменьшить множитель свечения карты имитирующей небо примерно до 0,03-0,1. Для большей наглядности можно использовать готовую модель, однако достаточно имитации данного устройства. Создайте параллелепипед с размерами 45х50х15 см, преобразуйте его в редактируемую полигональную сетку и любым известным способом (например при помощи булевой операции) проделайте в нем отверстие диаметром 8 и глубиной 10 см (рис. 3.1). Назовите новый объект Projector.

3.1.jpg
Рис. 3.1. Примитивная модель для имитации проектора

совет
Чтобы было удобнее работать с моделью и не мешали другие объекты, присутствующие в сцене, можно по очереди скрывать и отображать их. Однако есть другой более быстрый способ, он заключается в изоляции выделенного объекта от остальной сцены. Для этого нужно выделить объект, щелкнуть по нему правой кнопкой мыши и из появившегося контекстного меню выбрать Isolate Selection (Изолировать выделенное). В результате этого все объекты, кроме выделенного, перестанут отображаться в видовых окнах. Чтобы вернуть отображение объектам сцены, нужно отжать кнопку  Isolate Selection Toggle (Переключатель режима изоляции выделенного) в строке состояния.

Расположите объект имитирующий проектор в середине стены, около которой расположена камера и поднимите его по вертикали, повернув на угол примерно 5 градусов (рис. 3.2а,б). На противоположной от проектора стене расположите параллелепипед размерами 153х200 см и  назначьте на него материалом VRayMtl, диффузный цвет которого сделайте чисто белым. Назовите объект Ekran.

3.2.jpg
Рис. 3.2. Расположение в сцене модели, имитирующей проектор 

Теперь установим ИС проецирующий изображение на экран. На командной панели Create (Создать) нажмите кнопку Lights (Осветители) и выберите из списка Standard (Стандартные). Нажмите кнопку Target Spot (Направленный прожектор) и расположите его так, чтобы сам источник находился в отверстии проектора, а цель его была на экране (рис. 3.3).

3.3.jpg
Рис. 3.3. Установка в сцене ИС типа Target Spot (Направленный прожектор)

Из большого набора свитков параметров нам понадобится отредактировать четыре. Прежде всего в свитке General Parameters (Основные параметры) установите тени VRay Shadow (Тени VRay), чтобы данная система визуализации корректно просчитывала тени, получаемые с помощью стандартных источников. В свитке Intensity/Color/Attenuation (Интенсивность/Цвет/Затухание) установите значение Multiplier (Множитель) равным 100. В свитке Spot Light Parameters (Параметры пятна) установите параметры согласно рис. 3.4. В данном случае мы настроим параметры ИС, которые отвечают за форму светового пятна, размер и резкость его границы. Для каждого случая эти параметры необходимо настраивать индивидуально. Далее раскройте свиток и нажав кнопку Bitmap (Изображение) выберите любое изображение (как правило, кадр из фильма). И наконец, в свитке VRayShadows (Тени VRay) установите флажок Area Shadow (Пространственная тень) и число Subdivs (Разбиения) равным 16.

3.4.jpg
Рис. 3.4. Параметры осветителя для имитации проектора

Если теперь визуализировать сцену, то получим изображение наподобие рис. 3.5. При необходимости можно отредактировать высоту того или иного объекта, параметры конуса света и проецирования изображения. Кстати, если очень хочется, то можно сымитировать  объектив проектора с материалом стеклянной линзы. Изображение будет точно также спроецировано на экран, как и в случае открытого отверстия. Стоит еще учесть, что в связи с уменьшением света в помещении шумы от ИС станут более выраженными и для улучшения результата придется поднимать параметры качества визуализации.

3.5.jpg
Рис. 3.5. Визуализация сцены, где в качестве проектора выступает ИС редактора 3ds Max

Далее необходимо создать габаритный контейнер для эффекта, потому что как мы знаем из предыдущей части урока, луч от ИС хотя и будет виден, но туман будет присутствовать в остальной части сцены. Мало того, время визуализации сцены с эффектом будет существенно выше, по сравнению со сценой без эффекта. Итак, при помощи примитива Box (Параллеллепипед) с последующим преобразованием его в полигональную сетку и редактированием получим габаритный контейнер для эффекта по форме конуса светового потока ИС. Расположите контейнер как на рис 3.6. Назовите объект Gizmo_projector.

3.6.jpg
Рис. 3.6. Расположение в сцене габаритного контейнера эффекта

Добавьте в сцену эффект VRayEnvironmentFog (Туман VRay) так, как мы это делали в предыдущей части урока. Большого отличия в установке параметров эффекта для солнечного луча и луча из проектора не будет. Стоит лишь установить большую плотность тумана параметром Fog distance (Протяженность тумана). В сцене установлено значение плотности 400. Визуализируйте сцену и оцените внешний вид эффекта (рис. 3.7). Чтобы смягчить границы эффекта можно воспользоваться параметром Falloff (Спад), значение которого в данном случае установите равным 20.

3.7.jpg
Рис. 3.7. Визуализация сцены с эффектом луча из проектора

При желании можно добавить некоторую неравномерность в туман при помощи любой текстуры, например процедурной карты Noise (Шум), чтобы продемонстрировать его влияние на эффект тумана. Назначьте данную карту на слот параметра Fog density (Плотность тумана). Установите значение Size (Размер) карты Noise (Шум) равным единице и визуализировав изображение сравните получившийся эффект с рис. 3.7. Чтобы показать изменение внешнего вида эффекта при разных значениях параметра Size (Размер) были визуализированы четыре изображения со значениями параметра Size (Размер) – 0,1; 1; 10; 100 (рис. 3.8). Необходимо отметить, что если текстурная карта используется при анимации тумана, то имеет смысл увеличить параметр Texture samples (Сэмплы текстуры), при визуализации статичного изображения данный параметр на изменение внешнего вида эффекта практически не повлияет.

3.8.jpg
Рис. 3.8. Визуализация эффекта с различным значением Size (Размер) карты Noise (Шум), назначенной параметру плотности тумана 

Если установить камеру со стороны окна, то визуализация эффекта будет выглядеть приблизительно как на рис. 3.9.

3.9.jpg
Рис. 3.8. Визуализация эффекта из камеры расположенной в области окна модели помещения 

В завершение данного урока хочется добавить, что если при расчете атмосферного эффекта тумана учитывается глобальное освещение, то для улучшения качества отображения эффекта VRayEnvironmentFog (Туман VRay), кроме увеличения параметров сэмплирования данного эффекта необходимо также улучшать параметры настройки глобального освещения и количество Subdivs (Разбиения) в настройках VRayShadows (Тени VRay) источника освещения. Разница во времени визуализации сцены с эффектом и без такового составляет примерно 30%. Правда здесь стоит отметить, что использование текстурных карт при реализации тех, иных свойств описанного выше эффекта может существенно замедлить визуализацию сцены.

В данном уроке были рассмотрены, конечно, не все возможности атмосферного эффекта VRayEnvironmentFog (Туман Vray). Кроме тех, что были описаны в этом уроке, с помощью данного эффекта можно сымитировать утренний туман, городской смог, клубы дыма и даже самые настоящие облака для экстерьерных сцен в 3ds Max.

Всем удачи, жду отзывов на этот урок!

Автор: Рябцев Дмитрий

Конкурс уроков проводится порталом www.3dmir.ru совместно с интернет-магазином «Третье измерение»

Комментарии (Всего: 8)

Online|Offline Kremlinist 3.0 135.4 22 июля 2013 в 14:14 #2

Аватар Kremlinist
Здорово, полезный урок.

Online|Offline ThePoloid 2.0 68.4 22 июля 2013 в 19:05 #0

Аватар ThePoloid
Хороший урок! спаибо

Online|Offline Jedence 4.4 82.8 22 июля 2013 в 21:16 #0

Аватар Jedence
Супер, то что нужно

Online|Offline lerick 15.8 24.6 22 июля 2013 в 21:52 #0

Аватар lerick
Дим, отлично!
Впрочем как всегда) Пиши уже новую книгу.

Online|Offline VDream 2.0 3.0 23 июля 2013 в 06:17 #0

Аватар VDream
Благодарю за хорошие отзывы.

Online|Offline School73 2.4 90.0 22 августа 2013 в 13:36 #0

Аватар School73
Именно то, что искал. Спасибо!

Online|Offline rechtweisendrogue 0.0 0.0 23 сентября 2013 в 11:33 #0

Аватар rechtweisendrogue
Хороший урок.

Online|Offline denisdemin 0.0 0.0 5 ноября 2013 в 02:28 #0

Аватар denisdemin
Отличный урок, единственно чего мне как чайнику не хватило, это как:-
"Кроме того, необходимо будет уменьшить множитель свечения карты имитирующей небо примерно до 0,03-0,1. "
и еще:-
"придется поднимать параметры качества визуализации."
на поиск ответа на первый вопрос ушло пару часов. :)
пошел искать ответ на второй вопрос
Что бы оставить комментарий вам необходимо войти или зарегистрироваться!

Советуем почитать

Создание воды в VRay

Cегодня рассмотрим, как настроить воду в визуализаторе VRay, на примере морской воды. Но по этой технологии можно делать любую воду в зависимости от карты Displace.

Комментарии 14 Рейтинг 22 Просмотры 56 723 Автор: Zvonovsky Max 3 октября 2012 в 15:10

Создание каустики

Подробный и простой Урок, по созданию каустики в рендере VRay.

Комментарии 21 Рейтинг 0 Просмотры 44 250 Автор: diablo_ 19 января 2006 в 00:00

Режимы вычисления карты освещенности (Irradiance m

В этом уроке, мы испытаем разные режимы вычисления карты освещенности, при рендеринге статической сцены из разных камер.

Комментарии 8 Рейтинг 3 Просмотры 41 059 Автор: diablo_ 19 июля 2007 в 00:00

Настройки материала VRayMtl

Это перевод урока, который поможет вам разобраться практически со всеми настройками материалов типа VRayMtl. Урок ориентирован на начинающих пользователей.

Комментарии 51 Рейтинг 11 Просмотры 153 331 Автор: seaman 11 ноября 2007 в 00:00

Displacement в VRay

Урок о применение Displacement в VRay.Displacement - это смещение поверхности объекта.

Комментарии 4 Рейтинг 0 Просмотры 50 589 Автор: diablo_ 12 июня 2006 в 00:00

3D моделиприслатьещё

Форумещё

Блогиещё

Популярные урокиещё

Реклама

3dmir.ru - Вся компьютерная графика
      www.megastock.ru