XGRIDSДокументация
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Lixel CyberColor

    • Руководство пользователя LCC Studio

      • Начало работы
      • Версия и обновления
      • Загрузка и установка
      • Обзор интерфейса и навигация
      • Перед реконструкцией
      • Реконструкция модели
      • Реконструкция одиночной модели
      • Объединение карт
      • Воздушно-наземное объединение
      • Воздушная реконструкция
      • Мои модели
      • Другие функции
      • Настройки и учётная запись
      • Конвертер
      • Реконструкция по видео
      • Часто задаваемые вопросы
    • LCC Scene Editor

      • Версия и обновления
      • Учётная запись и вход
      • Обзор продукта и главная страница
      • Интерфейс редактора
      • Режимы навигации по сцене
      • Файл
      • Настройки
      • Операции редактирования
      • Окно
      • Глобальная панель инструментов
      • Ресурсы и свойства
      • Левая панель инструментов
      • Точки обзора
      • Портал
      • Skybox
      • Аннотации
      • Измерение
      • Flythrough
      • Отчёт по сцене
      • 3D Layout
      • Мини-карта
      • Preview Mode (Viewer)
      • Справка
      • Часто задаваемые вопросы
      • Точка появления
    • LCC Model Editor

      • Версия и обновления
      • Руководство пользователя
      • Обзор и интерфейс
      • Операции с файлами
      • Инструменты выбора
      • Редактирование моделей
      • Измерение
      • Цветокоррекция
      • Управление ресурсами
      • Настройки и справка
      • Часто задаваемые вопросы
  • Plugin & SDK

    • Unreal

      • Введение
      • Быстрый старт — Windows
      • Быстрый старт — Linux
      • Быстрый старт — Quest3
      • Редакции и лицензирование
      • Рендеринг
      • Растеризация Tiled (экспериментально)
      • Визуальные настройки
      • Нормали и освещение
      • Редактирование сцены
      • Параметры производительности
      • Руководство по оптимизации производительности
      • Интеграция со сторонними и движковыми плагинами
      • Прокси-меш
      • Анимация загрузки
      • Коллизии
      • Поддержка системы навигации
      • Поддержка однослойной воды
      • Локализация
      • Частые вопросы
      • Устранение неполадок
      • Журналы и диагностика
      • Свяжитесь с нами
      • Рекомендуемые практики

        • Переосвещение 3DGS с помощью меша LixelStudio
      • Справочник API

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • Actor SOG / SPZ / PLY
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ALCCLoadVolume
        • ULCCUtilLibrary
        • Enums
        • Structs
      • Журнал изменений

        • v3.4.0
        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1

Устранение перекрытия 3DGS материалом однослойной воды

Single Layer Water Support

Обзор

Single Layer Water (однослойная вода) в Unreal Engine реализует преломление, каустику и подводный туман через буфер глубины. Её основная зависимость — глубина сцены: в расчёте преломления и поглощения на поверхности воды участвуют только те пиксели, которые записали корректную глубину.

Зачем нужна отдельная совместимость

Плагин рендерит 3DGS и записывает глубину через механизм View Extension, и это происходит после BasePass. В стандартном потоке однослойная вода копирует буфер глубины до BasePass для последующей композиции, а в этот момент 3DGS ещё не отрендерен, поэтому в копии его глубины естественно нет.

КонфигурацияМомент копирования буфера глубиныСодержит ли копия 3DGS
По умолчанию (выключено)До BasePassНе содержит
SingleLayerWater Support включеноПосле BasePassСодержит
Default flow                      With support enabled

Copy depth buffer ← no 3DGS       BasePass
     │                                │
     ▼                                ▼
  BasePass                     3DGS writes depth
     │                                │
     ▼                                ▼
3DGS writes depth              Copy depth buffer ← with 3DGS
     │                                │
     ▼                                ▼
Water composite ← 3DGS missing   Water composite ← 3DGS read correctly

Когда в копии нет глубины 3DGS, при расчёте преломления и поглощения поверхность воды читает сцену за 3DGS, из-за чего подводный 3DGS не участвует в преломлении, а взаимное перекрытие воды и 3DGS определяется неверно.

После включения SingleLayerWater Support плагин через r.Water.SingleLayer.DepthPrepass откладывает копирование до момента после BasePass, когда глубина 3DGS уже записана, и поверхность воды обрабатывает её корректно.

Результат без включённого SingleLayerWater Support:

Результат рендеринга без поддержки однослойной воды

Результат рендеринга без включённой поддержки однослойной воды

Плата за использование

  • После включения на тенях модели появляется некоторая ступенчатость.
Ступенчатость теней после включения поддержки однослойной воды

Ступенчатость теней, которая может появиться после включения поддержки однослойной воды

Порядок действий

1. Включите настройку

В панели LCC4Unreal редактора нажмите кнопку настроек, откройте страницу настроек плагина в настройках проекта, отметьте SingleLayerWater Support и перезапустите движок, чтобы изменение вступило в силу.

Включение SingleLayerWater Support

Включение SingleLayerWater Support в настройках проекта

2. Создайте материал однослойной воды

  1. Создайте новый материал и задайте Shading Model как Single Layer Water
  2. Настройте цвет воды, коэффициент поглощения, рассеивание и другие параметры
  3. Примените материал к Mesh поверхности воды или к WaterBodyCustom

3. Разместите поверхность воды

Разместите Actor воды в подходящем месте сцены LCC2. Высота воды определяет, какие пиксели 3DGS оказываются под водой.

4. Проверьте результат

После нормальной загрузки и рендеринга сцены LCC2:

Корректный результат рендеринга после включения поддержки однослойной воды

Корректный результат рендеринга после включения поддержки однослойной воды

Замечания

  • Эта настройка является глобальной и влияет на все материалы однослойной воды в проекте
  • После изменения нужно перезапустить движок (CVar имеет тип ReadOnly и влияет на Shader Key)
  • Плата за это — потеря части качества теней Virtual Shadow Map на пикселях воды
  • Если проект не использует однослойную воду, оставьте настройку выключенной по умолчанию
Назад
Поддержка системы навигации
Далее
Локализация