Архитектурная визуализация в Unreal Engine 4

Архитектурная визуализация в Unreal Engine 4

1549
ПОДЕЛИТЬСЯ

Работая над проектом, архитекторы и дизайнеры прибегают к такому способу подачи, как 3D визуализация. Почаще всего это статичное изображение , приобретенное с помощью визуализаторов vRay, MentalRay, Corona и остальных.

Разглядим все плюсы и минусы, а также поделюсь своими впечатлениями и опытом на примере готового проекта: В данной статье речь пойдет о визуализации строительных проектов на движке Unreal Engine.

Моделирование
UE4 воспринимает 3D модели в формате .obj и .fbx.

не должны превосходить 100 тыщ треугольников, т.к. Моделировать и экспортировать объекты можно в любом 3D редакторе (3ds Max, Blender, Maya и пр.) Лучше, чтоб модель имела неплохую топологию и полигонаж в разумных пределах (раз говорить о интерьерах, то главные объекты, такие как диванчик, кровать и др. Лучше, естественно, делать ретопологию каждой модели вручную, но для заслуги применимого результата можно обойтись и автоматическими средствами, програмками либо плагинами. это сильно сказывается на производительности).

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

Материалы
Для построения логики в UE4 употребляют нодовую систему Blueprint. Она подменяет собой необходимость в программировании, но не исключает возможность писать на C++.

Ниже показаны главные шейдеры, используеммые в сцене, построенных на Blueprint:

Дерево:

Так-как для сотворения рельефных поверхностей движок просит лишь normal карту, то есть возможность процедурно сделать эту карту из чёрно-белоснежного изображения c помощью нода NormalFromHeightmap

Испачканный сплав:

В данном примере была применена чёрно-белоснежная карта, смешанная с числовыми значениями и использована в характеристики Metallic и Roughness

Стекло:

На прозрачность материала влияет свойство Opacity, которое регулируется float нодом (значение от 0 до 1)

Объединение их совместно разными методами дозволяет создавать фактически хоть какой вероятный тип физической поверхности в настоящем мире. Дальше приведены примеры 4 главных параметров, которые определяют физическую природу материала.

Base Color
Metallic
Specular
Roughness

Освещение
В сцене употребляется три типа освещения:

Directional Lights — Обеспечивает солнечный свет для всей сцены, является основой для просчёта Global Illumination (Глобального Освещения)
Point Lights — Точечные источники света, имитирующие свет от электрических лампочек. Источают свет во всех направлениях, есть возможность применять IES-текстуру
Spot Lights — Располагаются в конкретной близости от оконных просветах, моделируя окружающий свет из окон

Опосля того, как все объекты и источники света были расположены, нужно просчитать сцену:

Проще говоря, отбрасывает и запекает тени. Это некоторый аналог рендера, который просчитывает взаимодействия всех статичных источников света со статичными моделями.

Раз опосля просчёта модель либо источник света были передвинуты либо удалены, тень остается и придётся поновой пересчитать сцену.

Пример:

Интерактив
Для улучшения строительного проекта, рекомендую добавить некие интерактивные элементы, такие как открывание и закрывание дверей, музыкальное сопровождение, разные звуковые и зрительные эффекты. Ниже мы разглядим некие из их.

Открывание и закрывание двери 1.
Разглядим обычный вариант, когда дверь раскрывается автоматом, раз приближается игрок и закрывается, раз игрок отдаляется:

Сама дверь состоит из 2-ух частей: статичная модель дверного проёма и интерактивное дверное полотно, логика которого описана в Blueprint.

В составляющие чертежа заходит статичная 3D модель дверного полотна и фигура Box, которая играет роль триггера:

Нодовая структура смотрится последующим образом:

Ноды OnComponentBeginOverlap и OnComponentEndOverlap отвечают за коллизию с триггером.
Timeline_0 — это анимация с функцией Float Track (New Track 0).
Make Rot делает вращение по хоть какой оси, в данном случае по оси Z (Yaw).

Функция Float Track (New Track 0):

Значение от 0 до -90 градусов меняется в течение 1 секунды

Нам остаётся скомпилировать Blueprint и добавить его в сцену, выровняв точно под дверной просвет.

2. Звуковые эффекты
К примеру, пустить ненавязчивую музыку на задний план либо добавить звуковой эффект при открывании/закрывании дверей. Вы сможете оживить ваш проект, добавив в сцену Ambient Sound.

Постобработка 3.
В широком смысле, постобработка — это все то, что происходит опосля главных действий по построению изображения.
Выполнить постобработку вы сможете или в камере, или блоком Post Process Volume, добавив его в проект и корректируя габариты. Войдя в этот блок, начнётся процесс постобработки.

К примеру, блок Post Process Volume с увеличенной яркостью рекомендуется ставить в плохо-освещённые помещения:

Так Post Process Volume смотрится в сцене:

Unreal Engine 4 поддерживает множество эффектов для постобработки, далековато не все они могут для вас понадобиться, но некие из их я перечислю:

Vignette (Виньетка) — затемнение либо осветление краёв кадра
Depth of Field (Глубина резкости) — всё, что находится поближе либо далее дистанции фокусировки, равномерно теряет резкость и размывается
Bloom (Свечение) — засвет, получаемый от ярчайших источников освещения
Lens Flare (Блик) — воспроизводит эффект преломления солнечных лучей в объектив камеры
Film (Шум) — даёт анимированный шум, имитируя плёночную кинокамеру

Подведём итоги
Невзирая на кажущуюся сложность работы, редактор Unreal Editor 4 смотрится приветливым. А с ростом производительности компьютерного оборудования GPU рендер может поменять обычный подход к работе визуализаторов, дизайнеров и архитекторов.

habrahabr.ru На данный момент достигнуть фотореалистичной рисунки не просто, но раз уйти в проект с головой и издержать больше времени, то можно.Размер готового билда может превосходить 1GB, что может затруднить обмен посреди коллег и заказчиков. На текущее время далековато не каждый комп способен выдать постоянные 25-30 FPS в заполненном 100 м² интерьере. Из минусов желаю отметить пару моментов.