Коротко
- В новых проектах Unreal Engine Virtual Shadow Maps используются как метод теней по умолчанию.
- VSM делят виртуальное разрешение 16K × 16K на страницы размером 128 × 128 пикселей и обрабатывают только необходимые участки.
- При масштабе теней Epic для локальных и направленных источников света по умолчанию задано 8 лучей Shadow Map Ray Tracing.
- Тени от Static и Stationary источников до завершения сборки освещения являются предварительным просмотром; чтобы увидеть итоговый результат, нужно выполнить сборку освещения.
Система Virtual Shadow Maps (VSM) в Unreal Engine 5 предназначена для создания детализированных теней в проектах с геометрией Nanite. В сценах архитектурной визуализации выбор подходящего метода требует учитывать подвижность источников света, мягкость теней и нагрузку на производительность. Это руководство, основанное на официальной документации Epic Games, рассматривает основные этапы настройки и проверки в Unreal Engine 5.
1. Выберите метод теней и подвижность источников света
Откройте раздел
Direct Lightingв настройках проекта:Engine > Rendering. ПараметрShadow Map Methodопределяет, будут ли в проекте использоваться Virtual Shadow Maps или традиционные Shadow Maps. В новых проектах по умолчанию выбраны VSM. В проектах, созданных до Unreal Engine 5.0, VSM нужно включить в настройках проекта или с помощью консольной переменнойr.Shadow.Virtual.Enable.Проверьте, использует ли сцена Nanite. VSM разработаны для работы с Nanite и могут не подойти проекту или целевой платформе без Nanite. В проектах с Nanite традиционные карты теней для источников света Stationary не поддерживаются; в этом случае следует выбрать Movable Lights или VSM.
Выберите параметр
Mobilityдля источников света в соответствии с задачами сцены. Освещение от Static источников заранее запекается в lightmap. При включённых VSM прямое освещение и тени от Stationary источников рассчитываются динамически, а непрямое освещение, если оно задано в lightmap, сохраняется. Movable источники используются для динамического создания теней. Подвижность можно настраивать отдельно для каждого источника света.
Это различие помогает решить, какое освещение в интерьере следует подготовить заранее, а какое может меняться во время работы приложения или игры. Выбирая тип источника света, учитывайте не только внешний вид теней, но и потребность в расчётах в реальном времени.
2. Настройте мягкость теней с помощью параметров источника света
Проверьте параметры, определяющие размер источника света. У локальных источников на мягкость теней влияет
Source Radius, у направленных —Source Angle. Чем больше угол, радиус, высота или ширина источника, тем мягче будут тени объектов, на которые он воздействует. По умолчанию радиус локальных источников равен нулю, а начальный угол направленных источников невелик.Используемый с VSM метод Shadow Map Ray Tracing (SMRT) помогает смягчить тени на большом расстоянии и добиться контактного ужесточения. При настройке сначала оцените размер источника света, а затем — параметры качества и производительности. Приведённые ниже значения соответствуют значениям по умолчанию или рекомендуемым диапазонам из официальной документации; это не означает, что для каждой сцены существует единственная оптимальная настройка.
| Параметр | Рекомендуемое значение | Эффект |
|---|---|---|
| Число лучей SMRT для локальных и направленных источников | По умолчанию 8 при масштабе теней Epic | Уменьшение числа лучей может вызвать заметный шум в полутенях. |
| Число сэмплов на луч для локальных источников | Диапазон 4–8 | Меньшее число сэмплов снижает нагрузку, но ограничивает достижимую мягкость полутеней. |
| Число сэмплов на луч для направленных источников | Диапазон 4–8 | Число сэмплов влияет на баланс между мягкостью теней и вычислительной нагрузкой. |
| Переменная, задающая число лучей SMRT | Если соответствующее значение равно 0 | SMRT отключается, и система возвращается к жёстким теням с одним сэмплом. |
Для локальных источников используются переменные r.Shadow.Virtual.SMRT.RayCountLocal и r.Shadow.Virtual.SMRT.SamplesPerRayLocal, для направленных — r.Shadow.Virtual.SMRT.RayCountDirectional и r.Shadow.Virtual.SMRT.SamplesPerRayDirectional. В документации отмечено, что хороших результатов можно добиться при числе сэмплов от 4 до 8. Меньшее число лучей или сэмплов может снизить нагрузку, но привести к шуму в полутенях или недостаточной мягкости.
3. Учитывайте разрешение, масштаб сцены и производительность
Рассматривайте разрешение VSM не как одну большую карту, а как систему страниц. Система делит виртуальное разрешение 16K × 16K на страницы размером 128 × 128 пикселей; обрабатываются только страницы, необходимые для затенения пикселей на экране. Кэширование страниц, которые можно повторно использовать из предыдущих кадров, помогает повысить производительность. Движение объектов или изменение освещения может сделать соответствующие страницы недействительными.
Для направленных источников используется структура clipmap: она сохраняет высокое разрешение вблизи камеры и охватывает более удалённые области. Каждый уровень clipmap имеет одинаковое разрешение, а следующий уровень покрывает область с радиусом вдвое больше предыдущего. По умолчанию таблицы виртуальных страниц выделяются для уровней с 6-го по 22-й. Границы этих уровней можно изменить переменными
r.Shadow.Virtual.Clipmap.FirstLevelиr.Shadow.Virtual.Clipmap.LastLevel, однако прежде чем менять настройки, оцените потребность сцены в тенях.Учитывайте, что широкие локальные источники света могут приблизиться к пределу разрешения. Для Spot-источников используется одна VSM размером 16K с цепочкой mip-уровней, а для Point-источников — кубическая карта с VSM размером 16K на каждой грани. В документации рекомендуется по возможности рассматривать направленные источники для таких крупных локальных источников света. С другой стороны, в сценах без Nanite — например, с густой растительностью — Distance Field Shadows могут помочь снизить нагрузку от направленных источников за пределами динамической дистанции теней Movable-источников.
Высокое разрешение VSM не означает, что повышение качества не требует ресурсов. Тестируйте масштаб теней, размеры источников света и охват сцены в комплексе. Согласно документации, уменьшение bias разрешения может повысить разрешение теней, но также увеличить нагрузку на производительность. Поэтому вместо повышения разрешения для всей сцены без предварительной проверки проблемных участков сначала выясните, насколько детализированные тени действительно нужны с учётом положения камеры и источников света.
4. Рабочий процесс архитектурной визуализации и частые ошибки
При рендеринге интерьеров первым делом проверьте размер источника света, если нужны более мягкие тени, а не добавляйте Contact Shadows в каждом случае. Благодаря разрешению и точности VSM функция Contact Shadows обычно не требуется для получения резких контактных теней и может давать менее точный результат, чем тени VSM. Однако она может быть полезна, когда нужно недорого добавить тени от объектов, которые не попадают в карты теней.
Тени от Static или Stationary источников, видимые в Level Editor во время редактирования, являются предварительным просмотром, если сборка освещения не завершена; их не следует считать итоговым результатом. Чтобы проверить результат, запустите сборку освещения через главное меню: Build > Build All Levels. Длительность сборки может зависеть от характеристик компьютера, сложности сцены и других факторов.
Частые ошибки:
Выбор неподдерживаемого традиционного метода теней Stationary в проекте с Nanite.
Увеличение радиуса или угла источника без проверки шума в полутенях и влияния на производительность.
Принятие теней предварительного просмотра от Static или Stationary источников за финальное изображение до выполнения сборки.
Предположение, что VSM автоматически подойдут любому проекту без Nanite.
Для команд, работающих в архитектуре, дизайне интерьеров и archviz, главное преимущество VSM — возможность получать детализированные тени с меньшим количеством ручных настроек, особенно в сценах с Nanite. При этом необходимо совместно учитывать целевую платформу, подвижность источников света, использование Nanite и масштаб качества. Если команда работает на нескольких компьютерах, явное указание выбранного метода в настройках проекта и проверка собранного результата для сцен, требующих сборки освещения, делают рабочий процесс предсказуемее.
Источники
Источников: 2Тексты источников не перепечатываются; короткие цитаты отмечены, остальное — наш пересказ и комментарий.
Для архитектурных бюро и студий визуализации в Турции практическая ценность VSM заключается прежде всего в том, что они позволяют получать детализированные тени в сценах с Nanite, тратя меньше времени на ручную настройку. Однако это не означает, что один и тот же метод нужно выбирать для каждого проекта: исходное решение должны определять использование сцены в реальном времени, наличие Nanite и подвижность источников света. Даже в небольших интерьерных сценах важно проверять настройки качества с учётом конкретной сцены.
Настраивая число лучей и сэмплов SMRT, командам следует одновременно оценивать производительность и качество изображения; в сценах, требующих сборки освещения, нельзя считать предварительный просмотр финальным результатом. Официальная документация не содержит сведений о лицензии или ценах, поэтому делать выводы о стоимости приобретения нельзя. Поскольку длительность сборки Lightmass зависит от характеристик компьютера и сложности сцены, при планировании оборудования также необходимо провести тесты.
Частые вопросы
Как включить Virtual Shadow Maps в Unreal Engine 5?
Выберите `Shadow Map Method` в разделе `Direct Lighting` настроек проекта: `Engine > Rendering`. В проектах, созданных до Unreal Engine 5.0, может потребоваться отдельно включить VSM.
Нужно ли использовать Nanite для VSM?
VSM разработаны для работы с Nanite. В проектах или на целевых платформах без Nanite они могут быть неподходящим вариантом.
Как настроить мягкие тени в Unreal Engine?
На мягкость теней влияют `Source Radius` у локальных источников и `Source Angle` у направленных. В настройках качества SMRT также можно задать число лучей и число сэмплов на луч.



