Как превратить фотореалистичный Gaussian Splat в играбельный браузерный шутер

Это один из самых изящных примеров работы с 3D-сканами за последнее время. Технология Gaussian Splatting выдает отличную фотореалистичную картинку, но для движка это просто облако цветных точек. В нем нет полигонов, коллизий, навигационных сеток и источников света. Если просто бросить туда персонажа, он провалится сквозь пол и будет выглядеть инородно из-за разницы в освещении.
Разработчики из PlayCanvas собрали из сырого скана полноценный браузерный шутер с ботами. Главный инструмент здесь — открытая утилита splat-transform. Она разбивает тяжелую сцену на стриминговые LOD-чанки для быстрой загрузки и генерирует физическую модель. Один флаг вокселизирует облако точек и выдает готовый сетчатый коллайдер. После этого пули начинают сталкиваться со стенами, а у NPC появляется плотная поверхность для ходьбы.
Самая элегантная часть проекта — интеграция освещения. Свет уже запечен в сами гауссианы, поэтому динамические PBR-объекты вроде оружия сильно выбиваются из окружения. Автор написал скрипт, который расставляет виртуальные зонды по сетке. Каждый зонд рендерит кубмапу, вычисляет среднюю яркость точки и собирает данные в легкий JSON-файл на 40 килобайт. В рантайме игра просто читает эти значения без тяжелых вычислений. Заходишь в темный коридор — ствол автомата реалистично темнеет! Весь исходный код открыт и доступен для форка.
Поделиться:
Ещё из архива
Все публикации
Интервью с Владимиром Аюевым: графический язык бигтеха, студия SASHA и дизайн-образование
1 месяц назад
Jockey от TwelveLabs: ИИ-агент для семантического поиска по видеоархивам и извлечения метаданных
1 месяц назад
Архитектура винной этикетки: баланс наборного шрифта и каллиграфии в кейсе Winecraft
1 месяц назад
Оптимизация контекста в Claude Code: как работает кэширование промптов и за что мы платим
1 месяц назад
Архитектура памяти для LLM-агентов: от базового SQLite до Graph RAG
1 месяц назад