УДК 004.94

Особенности произведения рендера интерьерных сцен в 3ds Max с точки зрения оптимизации по времени выполнения

Акатьев Ярослав Алексеевич – ассистент кафедры Практической и прикладной информатики МИРЭА – Российского технологического университета.

Анищенко Екатерина Игоревна – студент магистратуры кафедры Практической и прикладной информатики МИРЭА – Российского технологического университета.

Аннотация: В данной работе рассматриваются основные понятия произведения фотореалистичного рендера с учетом специфики программно-инструментального средства 3ds Max, а также ряд функций применяемых с точки зрения оптимизации процесса по времени выполнения.

Ключевые слова: моделирование, 3D-моделирование, фотореалистичный рендер, 3ds Max.

Одним из методов дизайн-проектирования интерьеров является 3D-моделирование и визуализация. Данный процесс представляет собой создание трехмерной модели будущего помещения с использованием определенных программных средств, которые позволяют передать визуализации практически со стопроцентной точностью. Для создания реалистичной картинки в одной из самых популярных сред моделирования 3ds Max необходимо придерживаться всех этапов создания интерьерной сцены: создание коробки помещения, моделирование мебели, постановка камеры и выстраивание композиции кадра, настройка освещения, работа с материалами, декорирование и рендер. В данной работе будет произведен подробный разбор построения фотореалистичного рендера и будет сделан вывод о возможных способах оптимизации процесса с точки зрения времени выполнения.

Рендеринг является финальной стадией получения фотореалистичного изображения проектного дизайнерского решения. Он нужен, чтобы наглядно представить все сложные предшествующие процессы. Среди них анализ проекта, на котором принимается решение о рендере, дизайн, где определяются характеристики объекта, а также 3D-моделирование, включающее перечисленные ранее этапы создания цифровой модели помещения. Процесс рендеринга – это процесс создания плоского растрового изображения на основе 2D- или 3D-данных с помощью компьютерной программы или движка. 

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

Для получения высокой степени реалистичности выделяется так называемый многопоточный рендеринг, представляющий собой вычисления в нескольких потоках отдельно, то есть произведение обработки теней, отражений и цвета в несколько проходов. Затем все этапы объединяются и корректируются послойно. При этом существуют различные методы растеризации изображения, такие как Скайнлайн (Skanline) или алгоритм построчного сканирования поверхности объекта, Рейкастинг (Ray Casting, метод бросания лучей), Радиосити (Radiosity) – метод, при котором отраженный свет освещает область вокруг поверхности и рассеянные лучи отражаются по разным направлениям, Трассировка лучей (Ray Tracing) или симуляция лучей света, Трассировка пути (Path Tracing), то есть метод получения максимально близкого поведения света в сцене, а также Перспективная проекция, при которой удаленные предметы в помещении кажутся меньше относительно тех, которые расположены ближе к виртуальной камере.

На реалистичность рендера интерьерной сцены влияют не только методы растеризации, алгоритмы, и грамотно настроенные материалы, но и различные особенности. В реальном мире не бывает идеально гладких или кристально чистых поверхностей предметов, а также их расположение не может быть абсолютно параллельным или перпендикулярным относительно других, следовательно, чтобы добиться фотореалистичности необходимо на этапе расстановки предметов мебели и декора не следует располагать их под углом 90 градусов относительно цели камеры, а применять небольшой отклонение в несколько градусов. При этом никакие из объектов не должны «висеть» в воздухе, а лежать четко на поверхности. Добиться такого эффекта можно с помощью инструмента привязки (Snaps Toggle) или Align. Также предметы не должны стоять ровно относительно друг другу, можно использовать инструмент вращения по оси Z, если преобразования совершаются в Viewport Perpective. Помимо того, что каждый материал должен быть настроен максимально детализировано с использованием процедурных карт и текстур высокого качества и большого расширения, следует также настраивать отражающие свойства материалов, настраивая параметр glossiness, который отвечает за глянцевость материала, с использованием дополнительных текстур, по которым будет происходить размытость блика (это могут быть, например, отпечатки пальцев и другие). На Рисунке 1 представлен пример изображения вазы с небольшими «загрязнениями» или отпечатками. Стоит отметить, что данный параметр glossiness настраиваться индивидуально для каждого вида материала (пластик, стекло и тд). Таким образом для большинства поверхностей необходимо создавать малозаметные шероховатости, разводы и применять карты Dirt или отпечатков. Такие тонкости позволяют сделать рендер более реалистичным, соответствующим реальной картине мира. Немаловажную роль играет композиция кадра и правильно настроенный ракурс с соблюдением правил вертикалей и горизонталей. Грамотно настроенный свет также позволяет сделать сцену более объемной и выгодно подчеркнуть текстуру материалов, в то время как плохо настроенный свет сделает все ровно наоборот. Обычно используется комбинация искусственного света, который исходит от люстр, светильников или подсветок, и естественного с помощью применения HDRI карт и дополнительных инструментов рендера, таких как «небо», «солнце» и другие. В частности, у стороннего движка Corona Render есть инструменты Corona Sun и Corona Sky Environment. Основной принцип, которого здесь следует придерживаться, это принцип баланса и равновесия.

1

Рисунок 1. Демонстрация применения процедурных карт dirt.

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

Конечно же, можно производить большое количество различных настроек для придания финальному изображению максимальной реалистичности, однако процесс рендера, особенно ориентированный на получение реалистичной картинки, требует больших вычислительных мощностей и очень часто можно сталкиваться с такой проблемой как долгий рендер. Его скорость очень важна при работе над проектом. Если рендер медленный, значит программа не может хорошо работать. Долгий рендеринг говорит о сильной нагрузке на систему, что может привезти к поломками и сбоям. На скорость влияют процессор (лучше использовать четрыёхядерный восьмипоточный), оперативная память (нормой считается 16 Гб, 32 Гб и выше), видеокарта, а также SSD от 256 Гб.

Помимо перечисленных характеристик, которые влияют на скорость и качество рендера, существует метод оптимизации сцены, который крайне важен, так как не всегда мощность процессора может решить проблемы долгого рендера. Выделяют различные способы, с помощью которых можно оптимизировать интерьерную сцену в 3ds Max.

В случае, когда сцена нагружена большим количеством моделей, необходимо мониторить общее число полигонов в сцене, так как данный фактор напрямую влияет на зависания при вращении или перемещении в окне Viewport. Чтобы отследить количество полигонов в сцене, достаточно нажать на горячую клавишу «7», если есть необходимость посмотреть количество полигонов для одной модели, то ее можно изолировать от сцены и число полигонов пересчитается для выбранной модели.

2

Рисунок 2. Отображение количества полигонов в сцене.

Важно отметить, что не всегда стоит создавать очень плотную сетку модели, так как, например, для небольших предметов, которые не являются акцентными для финального рендера, это не имеет смысла. Если сократить количество полигонов у таких моделей, то разница будет незначительная, а иногда ее может и не быть. При применении модификатора Turbo Smooth, если количество итерации составляет больше 1 или 2, то необходимо установить галочку напротив Render Iters и установить требуемую степень сглаживания модели, а Iteration установить до самого возможного минимального значения. Так в сцене будет отображаться модель с минимальным количеством полигонов, а при рендере – необходимое.

3

Рисунок 3. Установление необходимого количества полигонов.

Если на определенном ракурсе часть объектов не видна, то при финальном и интерактивном рендере имеет смысл скрыть часть невидимых моделей с помощью Hide Selection, это позволит ускорить процесс работы и разгрузить сцену при работе с определенным ракурсом и камерой.

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

Важным этапом оптимизации сцены является слияние геометрии, так как чем больше независимых друг от друга объектов, тем больше ресурсов нужно при работе с ними. Так, например, если работа над созданием модели, у которой несколько отдельных компонентов, закончена, то стоит произвести конвертацию в Editable Poly каждого из объектов и объединить их при помощи attach. Тогда предмет станет единым объектом. Частой ошибкой является объединение объектов в группу объектов, которые затем также могут добавляться в еще одну группу и так далее. Таким образом создается вложенность, влияющая на скорость работы как рендера, так и на работу в самой сцене. Простым примером является моделирование стола: если создается отдельно столешница и четыре ножки, то количество элементов у стола будет 5, тогда как при применении attach стол становится атомарным объектом. При этом оперативная память уже обрабатывает не 5 объектов по отдельности, а один. Если бы создавалась группа объектов, это бы ускорило работу с данной моделью на начальном этапе, однако возможно понадобилась бы необходимость добавить стол в группу к стульям, и возникла бы вложенность.

4

Рисунок 4. Слияние геометрии.

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

Для сцены с «тяжелыми» объектами, то есть выскополигональными, существует несколько способов ее «облегчения». Можно выделить такой объект и применить свойство «display as box» во вкладке Display, тогда вместо самого объекта будут отображаться его габариты в виде пустого контейнера с границами. Это упростит отображение данного объекта и ускорит работу во Viewport.

Также можно переводить «тяжелые» объекты в Proxy. Proxy – это особый компьютерный алгоритм. Он исключает из сцены большее количество полигонов сложной модели. При этом они не исчезают и не удаляются. Этот метод переносит их в специальный proxy-файл, где они хранятся вплоть до рендеринга сцены. Также их можно вернуть в любой момент. Это позволит разгрузить оперативную память и ускорить работу, а сама сцена будет меньше весить.

Если в сцене есть объект, который плохо видно на рендере, и он не требует высокой детализации, то стоит уменьшить размер текстуры. Чем выше разрешение текстуры, тем сильнее нагружена ОЗУ. Тоже самое относится и к другим моделям: не следует каждый раз добавлять текстуры только в разрешении 4К и выше. Иногда от этого может быть только вред.

Немаловажную роль при рендере и работе над интерьерной сценой играет настройка автосохранения. Данная функция очень полезна при работе, и отключать ее, конечно, же не рекомендуется, однако стоит обратить внимание на то, как часто происходит autosave. Если сцена пересохраняется достаточно часто, то это довольно сильно тормозит все процессы в 3ds Max. Изменить промежуток времени между сохранениями можно в Preference Settings – Auto Backup – Backup Interval (minutes).

5 1

Рисунок 5. Определение настроек автосохранения.

Также, как и упоминалось ранее, многие особенности в работе со сценой зависят от выбранного рендер движка. Поэтому следует использовать источники света только того движка, который выбран основным. «Родные» источники света не дадут реалистичного падения, отражения и преломления света. Тоже самое касается материалов, лучше применить конвертацию всех материалов и источников света.

Таким образом в ходе данной работы рассмотрены основные возможности и особенности построения фотореалистичного рендера с точки зрения ускорения процесса создания и предоставления конечному пользователю готового изображения. Многие особенности выведены эмпирическим методом и представляют собой наборы готовых инструкций. Отмечено влияние оптимизации по времени выполнения на качество итогового продукта.

Список литературы

  1. Инженерная и компьютерная графика/Конакова И. – Москва: Издательство ЛитРес 2017.
  2. Обучение компьютерной графике с использованием свободно распространяемого программного обеспечения/Панюкова А. – Москва: Издательство ЛитРес 2021.
  3. Разница сплайнового и полигонального моделирования [Электронный ресурс] URL: ttps://koloro.ua/blog/3d-tekhnologii/ (Дата обращения: 19.12.2022).
  4. Полигональное моделирование [Электронный ресурс] URL: https://klona.ua/blog/3d-modelirovanie/poligonalnoe-modelirovanie-znachenie-osobennosti-rekomendacii-v-rabote (Дата обращения: 18.12.2022).
  5. Виды моделирования [Электронный ресурс] URL: https://habr.com/ru/post/448228 (Дата обращения: 18.12.2022).
  6. Руководство пользователя Autodesk 3Ds Max (англ. 3Ds Max Learning Center) [Электронный ресурс] URL: https://help.autodesk.com/view/3DSMAX/2020/ENU (Дата обращения: 19.12.2022).

Интересная статья? Поделись ей с другими: