Shramko SOG LOD Converter
ENESPLRU

PLY gigante de splats → Streamed SOG con LOD reales, listo para SuperSplat

Esta herramienta gratuita convierte un PLY de 3D Gaussian Splatting de cualquier tamaño en un archivo Streamed SOG con niveles de detalle (LOD) y compresión SOG, listo para subir a superspl.at. Funciona íntegramente en tu navegador, con tu propia GPU y CPU: el archivo nunca se sube y no hay nada que instalar.

Conversor

1

Elige tu PLY

Arrastra aquí un archivo .ply

El archivo no sale de tu equipo: se lee localmente y nunca se envía a ninguna parte.

2

Configuración

Elige el tipo de escena: cada preset ajusta los niveles y los bloques de streaming según cómo se va a ver. «SuperSplat standard» es exactamente lo que genera superspl.at. Todo sigue siendo editable abajo.

Configuración avanzada (opcional)
Niveles de detalle

Fracción de splats que conserva cada nivel de menor detalle. 0.5 = la reducción a la mitad de SuperSplat.

No se crea un nivel nuevo cuando un nivel tiene esta cantidad de splats o menos. SuperSplat usa 1 000 000 para que la primera vista quepa incluso en el presupuesto de un teléfono.

0 = automático (hasta 16).

Cómo se crean los niveles de menor detalle: los splats vecinos se fusionan en uno.

Calidad y tamaño

Color dependiente del punto de vista. Menos bandas = ZIP más pequeño. SuperSplat las conserva.

Solo influye si hay más de 0 bandas SH. Más = color más limpio, pero más lento. Predeterminado: 10.

Esfuerzo de compresión WebP sin pérdida, de 0 a 9. Más alto = algo más pequeño, pero más lento.

Recomendado. Los valores defectuosos detendrían la escritura de los LOD.

Bloques de streaming

Cómo se divide la escena en piezas para el streaming. SuperSplat usa 512 / 16 / 8. En escenas muy extensas, un tamaño mayor significa menos bloques, pero más grandes.

Rendimiento

Los navegadores permiten unos 16 GB por pestaña. Usa como máximo la mitad de la RAM de tu PC. Menos RAM = más teselas, más pequeñas, y más pasadas de lectura: más lento, pero seguro.

La escena se procesa en teselas espaciales que caben en memoria. En modo auto, el tamaño se elige según la RAM configurada.

Simplificación unas 4× más rápida. Desactívalo solo si la GPU provoca errores.

Codificadores WebP/SOG en paralelo. Auto = hasta 4.

3

Convertir y guardar

Se te preguntará dónde guardar el .zip. Se escribe directamente en ese archivo a medida que se genera, así que el equipo necesita espacio libre en disco equivalente a un 10 % del tamaño del PLY, aproximadamente.

Cómo funciona

  1. Planificar los niveles como SuperSplat

    La cabecera del PLY se lee en una fracción de segundo. La herramienta planifica los niveles de detalle igual que superspl.at en sus servidores: cada nivel conserva la mitad del anterior, hasta que el menos detallado tiene como máximo 1 millón de splats. Para un escaneo de 259 millones de splats, eso son 10 niveles.

  2. Dividir la escena en teselas que quepan en memoria

    Una pestaña del navegador puede usar unos 16 GB, y ningún array puede superar los 2 GB. Por eso la escena se divide en teselas espaciales dimensionadas según la RAM que permitas, y unas pocas pasadas secuenciales por el archivo cargan las teselas. Así es como cientos de millones de splats caben en una pestaña.

  3. Simplificar y comprimir en tu hardware

    En cada tesela, splat-transform (PlayCanvas, MIT) fusiona splats vecinos para crear cada nivel de menor detalle —en tu GPU, mediante WebGPU— y comprime cada bloque de streaming a SOG: posiciones, rotaciones y colores cuantizados en texturas WebP sin pérdida.

  4. Escribir un único archivo y comprobarlo

    Todos los bloques se escriben en streaming en un único archivo ZIP64 en tu disco, con lod-meta.json en la raíz: exactamente la estructura que acepta superspl.at. Al terminar, la herramienta vuelve a leer el ZIP y comprueba cada nivel, bloque y archivo antes de darlo por terminado.

Por qué importan los LOD reales (y el error que corrigen)

Un Streamed SOG con un solo nivel no es más que la escena con todo su detalle dividida en bloques: el visor sigue teniendo que descargar el detalle completo allí donde mire, y el primer fotograma tiene que esperarlo. Con niveles reales, SuperSplat muestra el nivel menos detallado en segundos y carga los niveles más finos solo cerca de la cámara, sin salirse de su presupuesto de 1 a 4 millones de splats en cualquier dispositivo.

Muchos paquetes hechos a mano tienen justo ese problema: están divididos en bloques, pero con un único nivel, así que no hay nada menos detallado que mostrar. Este conversor siempre genera la pirámide de niveles completa, y su comprobación final rechaza un ZIP de un solo nivel para cualquier escena de más de 1 millón de splats.

Comparativa

Actualizado el 2 de octubre de 2026.

Este conversorSubida a superspl.at (Auto LODs)superspl.at/convertCLI de splat-transform
Entrada máximaSin límite fijo: las teselas se adaptan a cualquier tamaño; probado con 259 M de splats / 17.6 GB10 GB por subidaLo que quepa en una pestañaTu RAM
Niveles de detalleSí: reducción a la mitad hasta ≤ 1 M, como SuperSplatSí (en sus servidores)No genera Streamed SOGSí: dos pasos manuales por nivel
Se ejecuta enTu navegador (tu GPU + CPU)Sus servidores (tras la subida)Tu navegadorTu PC
InstalaciónNadaNadaNadaNode.js 22 + npm
Verificación del resultadoRelee el ZIP: niveles, bloques, archivos—Tabla de estadísticas--info sobre la carpeta

Qué funciona, qué está en curso y qué viene después

Funciona

  • Ejecución completa con un escaneo urbano de 259 millones de splats / 17.6 GB: 10 niveles, 5.9 GB, 1 h 53 min, verificado
  • PLY binario (little/big-endian, SH 0–3) → .zip Streamed SOG con niveles LOD y compresión SOG
  • Presets de escena: SuperSplat standard, ciudad desde un dron, calles, interiores, objetos y ligero para teléfonos y VR
  • Escenas que superan con creces la memoria de una pestaña, mediante teselas espaciales
  • Archivos ZIP64 de más de 4 GB
  • Aceleración WebGPU (Chrome, Edge)
  • Verificación del ZIP terminado mediante relectura
  • Progreso en tiempo real, visualización de errores e informes de errores

En curso

  • Subida del escaneo de prueba de 259 millones de splats a superspl.at

Próximamente

  • Reanudar tras un fallo o una pestaña cerrada
  • Subida directa opcional a SuperSplat con tu token de API
  • Capa independiente de cielo / entorno
  • Entrada en PLY comprimido y SPZ

Límites y riesgos: léelos antes de una conversión grande

Preguntas frecuentes

¿Cómo subo a SuperSplat un PLY de más de 10 GB?

superspl.at acepta como máximo 10 GB por subida. Convierte aquí el PLY en un .zip Streamed SOG (normalmente, un 5–10 % del tamaño del PLY) y sube ese .zip en superspl.at → Upload. El ZIP ya contiene los niveles de detalle, así que SuperSplat lo publica tal cual.

¿Qué son Streamed SOG (SSOG) y lod-meta.json?

Streamed SOG es el formato de streaming de PlayCanvas para escenas grandes de splats gaussianos: un índice lod-meta.json con un árbol espacial, más muchos bloques SOG pequeños (meta.json + texturas WebP), cada uno con un nivel de detalle de una región. El visor solo descarga los bloques y niveles que necesita.

¿Por qué mi Streamed SOG no tiene niveles de detalle?

Porque se generó a partir de un único PLY sin niveles decimados: en ese caso, splat-transform escribe un solo nivel dividido en bloques. Los LOD reales requieren generar (decimar) y etiquetar los niveles de menor detalle. Esta herramienta lo hace automáticamente; revisa «lodLevels» en lod-meta.json: debería ser mayor que 1.

¿Mi escaneo se sube a alguna parte?

No. Tu navegador lee el archivo y lo procesa en tu equipo. El servidor solo entrega esta página. Si lo permites, un informe de error envía datos técnicos (navegador, GPU, configuración, texto del error), nunca el archivo ni su nombre.

¿Qué navegador y qué hardware necesito?

Chrome o Edge de escritorio con WebGPU (cualquier GPU reciente de NVIDIA, AMD, Intel o Apple). Con 16 GB de RAM o más se trabaja con holgura; con 8 GB, ajusta «RAM a usar» a 4 GB. La herramienta también funciona sin GPU, unas cuatro veces más lenta.

¿Cuánto tarda y qué tamaño tiene el resultado?

Medido en una estación de trabajo con una RTX 4090: 259 millones de splats (17.6 GB) en 1 h 53 min, unos 45 minutos por cada 100 millones de splats; en un portátil o sin GPU tarda varias veces más. El ZIP ocupa unos 12 bytes por splat sumando todos los niveles en escaneos sin armónicos esféricos: 5.9 GB para esos 259 millones (10 niveles, 977 bloques).

¿Cuántos niveles LOD se crean y por qué?

Cada nivel conserva la mitad del anterior hasta que un nivel tiene como máximo 1 millón de splats: 1 + ⌈log₂(N / 1M)⌉ niveles, la misma política que aplica superspl.at cuando genera los LOD por su cuenta. El nivel menos detallado cabe en el presupuesto del visor más modesto, así que el primer fotograma aparece rápido también en teléfonos y cascos de realidad virtual.

¿Puedo usar el ZIP fuera de SuperSplat?

Sí. Es un Streamed SOG estándar: descomprímelo y carga lod-meta.json con el streaming de LOD de splats gaussianos del motor PlayCanvas, o vuelve a leerlo con splat-transform.

¿Es gratuito y de código abierto? ¿Puedo alojarlo yo mismo?

Sí: es gratuito, tiene licencia MIT y se basa en splat-transform de PlayCanvas (MIT). El código y una configuración de Docker están en GitHub: AndriiShramko/shramko-sog-lod-converter.

¿Qué preset elijo?

Para una ciudad o un paisaje escaneado con dron: «Ciudad desde un dron». Para recorridos a pie de calle: «Calles a la altura de los ojos». Dentro de edificios: «Habitaciones e interiores». Un solo objeto: «Objeto / escaneo pequeño». Si la escena debe abrirse con fluidez en teléfonos y visores VR: «Ligero». «SuperSplat standard» reproduce exactamente lo que genera superspl.at. La página muestra lo pesada que es la primera vista con cada opción.

Para tu agente de IA

¿Trabajas con un agente de programación con IA? Pega esto para que sepa cómo preparar escaneos para SuperSplat.

Tarea: preparar un PLY grande de 3D Gaussian Splatting para superspl.at (límite de 10 GB por subida).
Usa https://sog.flyreelstudio.eu (se ejecuta en el navegador, no se sube nada) o el repositorio de código abierto https://github.com/AndriiShramko/shramko-sog-lod-converter.
Resultado: un .zip Streamed SOG con lod-meta.json en la raíz y niveles LOD reales (cada nivel = la mitad del anterior, hasta <= 1M splats).
Verifica antes de subir: lodLevels > 1, los recuentos disminuyen, existe cada archivo listado en filenames (ejecuta tools/verify-zip.ts del repositorio).
Después, sube el .zip en https://superspl.at → Upload.

Quién está detrás y cómo colaborar

Andrii Shramko

Andrii Shramko

3D/4D Gaussian Splatting · captura con drones y 360° · VR · Bydgoszcz, Polonia

Soy Andrii Shramko: escaneo ciudades y edificios enteros como splats gaussianos 3D con drones y creo herramientas en torno a ellos. Hice este conversor porque mis propios escaneos (más de 250 millones de splats) no cabían en la subida de SuperSplat y las herramientas existentes no generaban LOD reales.

Abierto a gente interesante y dispuesto a ayudar a equipos a sacar adelante proyectos ambiciosos: escaneo, pipelines de splats, visores, realidad virtual, alianzas, licencias o financiación.

Escríbeme

Privacidad

Responsable del tratamiento: Andrii Shramko, Bydgoszcz (Polonia), zmei116@gmail.com. Tus archivos PLY nunca salen de tu equipo. El servidor solo almacena lo que envías voluntariamente: comentarios y mensajes de colaboración (con un contacto, si lo facilitas) y, si lo permites, informes de error anónimos (navegador, GPU, configuración, fase de la conversión, texto del error; sin archivo ni nombre de archivo).

Los contadores de uso de la página funcionan sin cookies y sin direcciones IP. Google Analytics solo se carga después de que lo aceptes en el banner. Los mensajes e informes se conservan un máximo de 12 meses y solo se usan para responder y para corregir la herramienta.

Puedes solicitar una copia o la eliminación de tus datos en cualquier momento: escribe a zmei116@gmail.com.

Comentarios

Se envía: versión de la página, navegador, GPU, pantalla, tu configuración, los últimos errores y el registro de la conversión. Nada más: ni archivos, ni nombres de archivo, ni cookies.