Рендерер для Three.js, отображающий сцены 3D Gaussian Splatting в WebGPU и WebGL2 и поддерживающий потоковую загрузку LOD для крупных моделей.
sparkjsdev/spark
Рендерер 3D Gaussian Splatting для THREE.js, позволяющий размещать сплат-сцены и обычные меши в одной сцене.
- Звёзды
- 3,879
- Форки
- 581
- Открытые issues
- 111
- Последний коммит
- 18 дней назад
Что это?
Spark — библиотека рендеринга, которая добавляет поддержку 3D Gaussian Splatting в THREE.js. Она встраивается в конвейер рендеринга THREE.js, поэтому сплат-объекты и объекты на основе мешей можно отрисовывать в одной сцене с корректной сортировкой, а также рендерить вместе несколько сплат-объектов.
Библиотека загружает распространённые форматы сплатов, включая PLY (сжатый и несжатый), SPZ, SPLAT, KSPLAT и SOG. Она рассчитана на WebGL2 и работу на широком спектре устройств, в том числе на маломощных мобильных устройствах. Каждый сплат можно отдельно трансформировать, перекрашивать, смещать и скелетно анимировать, а граф шейдеров позволяет создавать сплаты и редактировать их на GPU.
Spark можно установить через npm или загрузить с CDN с помощью import map. В проект также входят примеры, инструменты для сжатия файлов PLY в SPZ и сайт с документацией.
Ключевые возможности
- 01Интеграция с конвейером THREE.js: сплаты и меши размещаются в одной сцене
- 02Поддержка форматов PLY (включая сжатый), SPZ, SPLAT, KSPLAT и SOG
- 03Совместный рендеринг нескольких сплат-объектов с корректной сортировкой
- 04Поддержка WebGL2 и широкого спектра устройств, в том числе мобильных
- 05Поддержка индивидуальной трансформации, изменения цвета, смещения и скелетной анимации сплатов
- 06Граф шейдеров для создания и редактирования сплатов на GPU
Сценарии использования
- Показ фотограмметрических или захваченных 3D-сцен на веб-странице с THREE.js
- Совмещение сканов в формате сплатов с объектами на основе мешей или UI в интерактивной 3D-среде
- Анимация или перекрашивание захваченных объектов в браузере
- Предоставление веб-просмотра сплатов пользователям мобильных устройств
Быстрый старт
- 1
Установите пакет из npm
npm install @sparkjsdev/spark - 2
Или скопируйте пример HTML из README в файл index.html и откройте его в браузере
Что важно знать
- Для сборки из исходного кода необходимо установить Rust и отдельно выполнить этап сборки WebAssembly.
Темы
Частые вопросы
- Что такое spark?
- Рендерер 3D Gaussian Splatting для THREE.js, позволяющий размещать сплат-сцены и обычные меши в одной сцене. Spark — библиотека рендеринга, которая добавляет поддержку 3D Gaussian Splatting в THREE.js. Она встраивается в конвейер рендеринга THREE.js, поэтому сплат-объекты и объекты на основе мешей можно отрисовывать в одной сцене с корректной сортировкой, а также рендерить вместе несколько сплат-объектов.
- spark можно использовать бесплатно? Какая у него лицензия?
- spark распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- spark всё ещё поддерживается?
- Активно поддерживается. Последний коммит в spark — 20 окт. 2026 г..
- Для чего можно использовать spark?
- Показ фотограмметрических или захваченных 3D-сцен на веб-странице с THREE.js Совмещение сканов в формате сплатов с объектами на основе мешей или UI в интерактивной 3D-среде Анимация или перекрашивание захваченных объектов в браузере Предоставление веб-просмотра сплатов пользователям мобильных устройств
- Как установить spark?
- Установите пакет из npm: npm install @sparkjsdev/spark Или скопируйте пример HTML из README в файл index.html и откройте его в браузере
- Где скачать spark?
- Исходный код и инструкции по установке — на GitHub: https://github.com/sparkjsdev/spark
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
JavaScript-инструментарий и фреймворк на базе Three.js для интерактивной визуализации данных в 3D/WebGL и 2D в браузере.
React-рендерер для Three.js, позволяющий декларативно собирать 3D-сцены с помощью JSX-компонентов.
Коллекция готовых React-компонентов и хуков для создания 3D-сцен с react-three-fiber.
Библиотека постобработки для three.js, которая объединяет полноэкранные эффекты, такие как bloom, SSAO и цветокоррекция, для сцен WebGL.
Обёртка для React над библиотекой postprocessing, которая позволяет декларативно добавлять эффекты постобработки в сцены react-three-fiber с помощью JSX-компонентов.