Обновление рендеринга растительности в UNIGINE 2.8

июл. 15, 2019

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

В UNIGINE 2.8 мы представили ряд новых возможностей, улучшающих внешний вид деревьев и другой зелени. Сейчас мы как раз готовим новое демо с небольшим лесом, на видео — предварительный результат, а после — разбор новых фичей и настроек, которые позволили добиться такого результата.

Импосторы теперь поддерживают depth текстуры


Первое, на что хочется обратить внимание — обновленные импосторы. Теперь мы поддерживаем текстуры глубины (depth texture), которые лучше передают объем и делают плоскую “подделку” практически неотличимой от высокополигонального исходника. Отображение импостора в кадре расходует значительно меньше ресурсов, чем полноценной модели, а с улучшенным качеством у вас появится больше свободы в оптимизации сцены.

Новый тип текстуры создается автоматически нашим Impostor Creator’ом, который входит в базовую комплектацию редактора. Дополнительный плюс — с depth текстурой импосторы требуют намного меньше тюнинга!

Impostors with depth off
Impostors with depth on

Depth текстура не используется. Импосторы выглядят плоско, тени требуют дополнительной настройки.

Та же сцена, Depth текстура используется. Результат без дополнительной настройки.

SSubsurface Scattering (SSS) для листьев и травы

Мы провели несколько экспериментов с алгоритмом subsurface scattering, которые вылились в ряд улучшений:

  • Обновленный SSS стал изменять цвет и насыщенность обратной стороны листьев и травинок, что придало им более живой и реалистичный вид. Правки контента при этом не нужны.
  • Тени теперь могут плавно растворяться в просвечивающих объектах. Может использоваться не только для листвы, но и для любых тонких объектов. Степень применения этого эффекта настраивается в материале.
  • Screen space shadows теперь иначе взаимодействуют с subsurface scattering, их комбинация дает отличный результат.
Sss off
Sss on

Листья в 2.7.3

Листья в 2.8, включены screen space тени и subsurface scattering

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

Translucent color

Естественная топология дерева с параметрами Angle Fade и Rotate Normals

Включение в материале опции Angle Fade нужно для вырезания полигонов, нормали которых неперпендикулярны вектору камеры. Это используется для того, чтобы спрятать неестественно выглядящие вблизи ветки от наблюдателя.

Rotate Normals разворачивает нормали к камере, ее нужно использовать для материала листвы. Она решает задачу, схожую с Angle Fade — придает полигональному дереву более натуральный вид.

Angle fade off
Angle fade on

С выключенным Angle Fade развернутая к камере ветка выдает искусственность дерева

Angle Fade автоматически вырезал ветку

Normals rotated to camera off
Normals rotated to camera on

Rotate Normals не используется

Rotate Normals включена

Улучшенное сглаживание

А еще мы доработали алгоритм сглаживания (TAA). Появилась опция Diagonal Neighbours, включение которой положительно сказывается на внешнем виде травы.

Все эти фичи уже доступны. Получите бесплатную 30-дневную версию UNIGINE SDK и создавайте свои крутые проекты!

Получить