Введение в LCC Unreal Plugin
LCC Unreal Plugin (LCC4Unreal) — плагин рендеринга 3D Gaussian Splatting (3DGS), разработанный XGRIDS для Unreal Engine 5. Он импортирует и рендерит данные 3DGS разных форматов внутри UE5 и поддерживает взаимодействие с ними.
Поддерживаемые версии
| Версия | Поддерживаемый движок |
|---|---|
| v1.0.0 и выше | Unreal Engine 5.4 ~ 5.8 |
| Ниже v1.0.0 | Unreal Engine 5.1 ~ 5.7 |
Поддерживаемые платформы:
- Разработка на Windows: сборка пакетов Win64 и кросс-компиляция под Linux x86
- Разработка на нативном Linux: сборка пакетов Linux x86
Примечание: выпускаемые пакеты плагина собраны для движков, опубликованных Epic, включая готовую версию, устанавливаемую через Epic Games Launcher, и сборки из неизменённого официального исходного кода. Изменённые вендорами ветки (например, ветка NVIDIA RTX), коммерческие движки, производные от UE (например, Pixotope), и движки с локально изменённым исходным кодом не могут напрямую использовать официальные пакеты плагина и требуют отдельной сборки. См. Пользовательские версии движка.
Поддерживаемые форматы
| Формат | Расширение | Описание |
|---|---|---|
| LCC2 | .lcc2 | Собственный формат XGRIDS и текущий основной формат. Поддерживает глубину, LOD и структуру octree |
| LCC | .lcc | Собственный формат XGRIDS, заменён на LCC2 |
| SOG | .sog | Формат от PlayCanvas. Использует конвейер LCC2, поддерживает глубину, без LOD |
| SPZ | .spz | Формат от Niantic Labs, совместим с v2/v3/v4. Использует конвейер LCC2, поддерживает глубину, без LOD |
| PLY | .ply | Стандартный формат облака точек 3DGS. Использует конвейер LCC2, поддерживает глубину, без LOD |
Два конвейера рендеринга
Плагин содержит две реализации рендеринга — конвейер LCC и конвейер LCC2. Формат данных определяет, через какой конвейер они проходят:
| Конвейер | Форматы | Особенности |
|---|---|---|
| LCC2 | .lcc2 / .sog / .spz / .ply | Текущий основной конвейер. Выводит глубину и участвует в тестах перекрытия; все видимые данные объединяются в один буфер и отправляются одним draw call |
| LCC | .lcc | Ранняя реализация, используется только для загрузки данных .lcc. Не выводит глубину и отправляет отдельный draw call на каждый узел |
Набор возможностей у конвейеров различается: часть параметров доступна только в одном из них и скрыта в панели Details другого. В каждом документе указано, к какому конвейеру относится параметр.
Соответствующие Actor
| Actor | Конвейер | Назначение |
|---|---|---|
| ALCC2Actor | LCC2 | Загружает формат .lcc2 |
| ALCCActor | LCC | Загружает формат .lcc |
| ASogActor | LCC2 | Загружает отдельный файл .sog |
| ASpzActor | LCC2 | Загружает отдельный файл .spz |
| APlyActor | LCC2 | Загружает отдельный файл .ply |
Получение плагина
Структура каталогов плагина
Структура каталогов плагина LCC4Unreal

Файлы и подкаталоги плагина LCC4Unreal
| Каталог / Файл | Описание |
|---|---|
| Binaries | Бинарные библиотеки |
| Content | Ресурсы плагина (материалы и прочее) |
| Intermediate | Промежуточные файлы сборки (заголовки и код, созданные UHT, не удалять) |
| Resources | Ресурсы значков |
| Shaders | Шейдеры рендеринга |
| Source | Исходные определения модулей |
| LCC4Unreal.uplugin | Файл описания плагина |
Система координат
Данные LCC используют правую систему координат с осью Z вверх, а UE — левую систему с осью Z вверх. Дополнительная обработка обычно не требуется.

Сравнение систем координат LCC и Unreal Engine
Для файлов PLY с осью Y вверх поверните Actor на 90 градусов вокруг оси X.
Обзор возможностей
- Рендеринг 3DGS в нескольких форматах (LCC/LCC2/PLY/SOG/SPZ)
- Два режима отображения: 3DGS и облако точек
- Растеризация Tiled, которая в зависимости от сцены может повысить производительность рендеринга (экспериментально, редакция Pro)
- Перспективная и ортографическая проекция
- Настраиваемый порядок сферических гармоник (с 1-го по 3-й или полное отключение)
- Раскраска данных облака точек и раскраска по высоте
- Несколько режимов генерации нормалей (Fixed/ViewFacing/Hemispherical/ProxyMesh)
- Взаимодействие с освещением сцены (Lit/Unlit)
- Коррекция цвета (насыщенность/контраст/гамма/смещение/оттенок)
- Приём теней (экспериментально)
- Объёмы обрезки и секущие плоскости (до 65536 каждого типа, по 50 в бесплатной редакции)
- Объёмы загрузки для фильтрации загружаемых данных по области
- Динамическая загрузка данных коллизий
- Географическая привязка GIS (интеграция с Cesium)
- Анимация загрузки
- Поддержка nDisplay
- Стереорендеринг VR
- Поддержка DLSS
- Поддержка Navigation System
- Поддержка Single Layer Water
- Управление цветом через OpenColorIO
- Поддержка нескольких камер / SceneCapture
- Режим рендеринга с полной загрузкой (автоматическое объединение для небольших сцен)