
Add-on de nubes de puntos
Junto con la última versión de Evergine, nos entusiasma presentar el recién creado Add-on de Nube de Puntos (Point Cloud Add-on). Este es un paso más para agilizar la creación y la integración de gemelos digitales altamente detallados dentro del motor, lo que permite una representación del mundo real más precisa e inmersiva. En este artículo, profundizaremos en qué es una nube de puntos, los métodos habituales para obtener esta valiosa información y, lo más importante, cómo puedes aprovechar el nuevo add-on para visualizarlas en tus proyectos de Evergine.
¿Qué es una nube de puntos?
Imagina que realizas un escaneo 3D de alta definición de un objeto o una habitación completa. En lugar de capturar una imagen plana, este «escaneo» registra millones de pequeños puntos en el espacio. Esa colección de puntos es lo que se denomina nube de puntos.
Cada punto de la nube contiene dos datos clave:
- Dónde está (Posición): Su ubicación exacta en el espacio 3D. Esto le indica al ordenador dónde debe dibujar el punto.
- Qué aspecto tiene (Atributos): Puede incluir información como el color de la superficie, la intensidad con la que se reflejó la luz láser (intensidad) o incluso metadatos que ayudan a identificar el objeto que representa (clasificación).
Debido a que una nube de puntos se crea mediante el escaneo de estructuras reales, como el suelo de una fábrica o una calle de la ciudad, es un pilar fundamental para un gemelo digital.
¿Cómo se obtienen las nubes de puntos?
Si la nube de puntos es el dato base, la pregunta lógica es: ¿cómo se capturan millones de estas mediciones precisas del mundo físico?
Las nubes de puntos se generan mediante procesos especializados de escaneo 3D diseñados para medir la geometría de cualquier entorno físico. Los dos métodos de captura más habituales son:
- LiDAR (Escaneo Láser)
LiDAR (Light Detection and Ranging) es el método preferido para el mapeo a gran escala y de máxima precisión, como la topografía o el escaneo de grandes edificios.
- El Proceso: Un escáner emite millones de pulsos láser de forma muy rápida y mide el tiempo exacto que tarda la luz en rebotar y regresar. Gracias a este «Tiempo de Vuelo» (Time of Flight), el dispositivo calcula instantáneamente la distancia y la posición tridimensional de la superficie del objeto.
- Ideal para: Proyectos que requieren alta precisión, captura rápida de grandes volúmenes y entornos con iluminación variable.
- Structure from Motion (SfM)
El método SfM es una técnica flexible y más accesible, basada en fotogrametría, que depende de la información visual en lugar de los pulsos láser.
- El Proceso: Se toman numerosas fotografías 2D de un área u objeto desde múltiples ángulos y con mucha superposición. Un software avanzado aplica algoritmos para triangular automáticamente la posición 3D de cada punto, analizando las características que coinciden entre las distintas imágenes.
- Ideal para: Obtener datos detallados de textura y color, escanear objetos pequeños o medianos y usar equipos comerciales comunes (drones o cámaras).
Ambos métodos tienen un resultado muy similar: una colección densa y muy precisa de puntos, lista para ser procesada y visualizada con el Add-on de Nube de Puntos de Evergine.
Características del addon de nubes de puntos
El Add-on de Nube de Puntos de Evergine fue diseñado desde cero para abordar el mayor desafío en la visualización de nubes de puntos: renderizar grandes volúmenes de datos de forma rápida y eficiente. Logramos este objetivo mediante la implementación de dos características centrales impulsadas por el rendimiento:
Rasterización de alto rendimiento basada en Compute Shaders
Hemos reemplazado completamente el pipeline gráfico tradicional y hemos reescrito íntegramente el proceso de rasterización de la nube de puntos empleando compute shaders.
Esta decisión técnica no solo acelera significativamente la renderización, sino que también nos otorga un control sin precedentes sobre el dibujo de los puntos. Este nivel de control nos ha permitido implementar mejoras visuales críticas, como per-pixel color blending.
Esta técnica es fundamental para optimizar la calidad de imagen: combinamos el color de los puntos que coinciden en el mismo píxel de la pantalla, siempre y cuando su profundidad sea similar. Como resultado, reducimos en gran medida el aliasing y el ruido que son habituales en la visualización de nubes de puntos, logrando una imagen mucho más limpia y estable.
Figure 1. Comparativa entre el aliasing habitual en nubes de puntos y el resultado obtenido con la nueva técnica de renderizado.
Progressive rendering
Para asegurar una experiencia fluida, incluso al cargar nubes de millones de puntos en hardware comercial estándar, el add-on realiza un renderizado progresivo.
En lugar de intentar dibujar la nube completa de una sola vez (lo que podría congelar la aplicación), el add-on opera de la siguiente manera:
- Renderiza de forma progresiva: Dibuja un número fijo y elevado de puntos en cada frame o cuadro.
- Convergencia Rápida: Si bien el tiempo total para renderizar la totalidad de los puntos depende del tamaño de la nube, una imagen inicial de alta calidad suele converger en menos de un segundo, por lo que el usuario no lo percibe como una demora significativa.
Esta técnica prioriza la usabilidad y la capacidad de respuesta, proporcionándote una vista altamente interactiva de los datos de tu gemelo digital casi al instante.
Formatos soportados
El Add-on de Nube de Puntos de Evergine está diseñado para ofrecer una amplia compatibilidad, soportando tres formatos de archivo principales: LAS/LAZ, E57 y PCD.
Los formatos LAS (junto a su versión comprimida, LAZ) y E57 son estándares ampliamente utilizados en la industria del escaneo 3D. Esto garantiza una integración fluida, ya que son los formatos de salida nativos de la mayoría de los escáneres comerciales.
Adicionalmente, soportamos el formato PCD (Point Cloud Data). Si bien es menos común como formato de salida directo de escáneres, ofrece una estructura más flexible y altamente optimizada. Esto le permite cargarse en Evergine de forma significativamente más rápida que las otras alternativas.
Comience a usar el add-on en sus proyectos
Integrar el nuevo Add-on de Nube de Puntos de Evergine en tu proyecto existente implica tres pasos claros: añadir el add-on al proyecto, configurar el pipeline de renderizado y, por último, cargar los datos de la nube.
Este proceso se detalla a continuación y para una guía completa, puedes consultar la documentación oficial: [link to docs].
Añade el add-on al proyecto
Abre Evergine Studio y añade el add-on Evergine.PointCloud al proyecto. Para instrucciones detalladas sobre como añadir addons a los proyectos, consulta esta guía.
Configura el Render Pipeline del add-on
El add-on utiliza un proceso de renderizado personalizado, por lo que es esencial que se inicialice en una fase temprana del ciclo de vida de tu aplicación.
Paso A: Configuración de la Inicialización de la Escena
Abre el archivo de tu escena principal, que suele ser MyScene.cs, y asegúrate de añadir el código de inicialización necesario:
Paso B: Inicialización del Runtime
A continuación, abre el archivo MyApplication.cs. Dentro del constructor de la aplicación, debes llamar al método de inicialización estática del add-on para registrar los servicios esenciales del runtime:

Carga los datos de la nube de puntos
Con el pipeline configurado, ya puedes cargar tu nube de puntos.
El Add-on de Nube de Puntos de Evergine simplifica la carga de grandes volúmenes de datos mediante un método estático del runtime. Puedes cargar cualquier nube en un formato compatible (LAS/LAZ, E57 o PCD) llamando al método asíncrono e indicando la ruta del archivo:
Galería