Repolode
sparkjsdev

sparkjsdev/spark

Um renderizador de 3D Gaussian Splatting para THREE.js que permite combinar cenas de splats e malhas comuns na mesma cena.

Estrelas
3,879
Forks
581
Issues abertas
111
Último commit
há 18 dias

O que é?

Spark é uma biblioteca de renderização que leva 3D Gaussian Splatting ao THREE.js. Ela se integra ao pipeline de renderização do THREE.js, permitindo desenhar objetos de splats e objetos baseados em malhas na mesma cena com ordenação correta, além de renderizar vários objetos de splats juntos.

A biblioteca carrega os formatos de splat mais comuns, incluindo PLY (com e sem compressão), SPZ, SPLAT, KSPLAT e SOG. Ela tem como alvo o WebGL2 e foi projetada para funcionar em uma ampla variedade de dispositivos, incluindo aparelhos móveis com hardware de baixo desempenho. Cada splat pode ser transformado individualmente, ter suas cores alteradas, ser deslocado ou receber animação esquelética; além disso, um shader graph permite criar ou editar splats na GPU.

Spark pode ser instalada via npm ou carregada de uma CDN com um import map. O projeto também inclui exemplos, ferramentas para compactar arquivos PLY em SPZ e um site de documentação.

Recursos principais

  • 01Integra-se ao pipeline do THREE.js para que splats e malhas compartilhem a mesma cena
  • 02Oferece suporte aos formatos PLY (inclusive compactado), SPZ, SPLAT, KSPLAT e SOG
  • 03Renderiza vários objetos de splats juntos, com ordenação correta
  • 04Tem como alvo o WebGL2 e funciona em uma ampla variedade de dispositivos, inclusive móveis
  • 05Oferece suporte a transformações por splat, edição de cores, deslocamento e animação esquelética
  • 06Inclui um shader graph na GPU para criar e editar splats

Casos de uso

  • Exibir cenas 3D capturadas ou obtidas por fotogrametria em uma página web feita com THREE.js
  • Combinar digitalizações de splats com objetos de malha ou elementos de UI em uma experiência 3D interativa
  • Animar ou alterar as cores de objetos capturados no navegador
  • Disponibilizar visualizadores de splats para usuários de dispositivos móveis pela web

Início rápido

  1. 1

    Instale o pacote pelo npm

    npm install @sparkjsdev/spark
  2. 2

    Ou copie o exemplo de HTML do README para um arquivo index.html e abra-o em um navegador

Antes de usar

  • Para compilar a partir do código-fonte, é necessário instalar o Rust e executar uma etapa de compilação de WebAssembly separadamente.

Tópicos

Perguntas frequentes

O que é spark?
Um renderizador de 3D Gaussian Splatting para THREE.js que permite combinar cenas de splats e malhas comuns na mesma cena. Spark é uma biblioteca de renderização que leva 3D Gaussian Splatting ao THREE.js. Ela se integra ao pipeline de renderização do THREE.js, permitindo desenhar objetos de splats e objetos baseados em malhas na mesma cena com ordenação correta, além de renderizar vários objetos de splats juntos.
spark é gratuito? Qual é a licença?
spark é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
spark ainda é mantido?
Manutenção ativa. O último commit de spark foi em 20 de out. de 2026.
Para que posso usar spark?
Exibir cenas 3D capturadas ou obtidas por fotogrametria em uma página web feita com THREE.js Combinar digitalizações de splats com objetos de malha ou elementos de UI em uma experiência 3D interativa Animar ou alterar as cores de objetos capturados no navegador Disponibilizar visualizadores de splats para usuários de dispositivos móveis pela web
Como instalar spark?
Instale o pacote pelo npm: npm install @sparkjsdev/spark Ou copie o exemplo de HTML do README para um arquivo index.html e abra-o em um navegador
Onde consigo spark?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/sparkjsdev/spark

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados