XGRIDSDocumentación
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • PortalCam

    • Descripción del producto
    • Operaciones básicas
    • Uso de la LCC Scan App
    • Mantenimiento y cuidado
    • FAQ
  • Serie Lixel K

    • Lixel K1

      • Descripción del producto
      • Operaciones básicas
      • Activación y conexión del dispositivo
      • Flujo de escaneo
      • Obtener nube de puntos con coordenadas absolutas
      • Fusión de mapas
      • Recomendaciones de planificación de rutas para escenas típicas
      • Precauciones
      • FAQ
    • Lixel K2

      • Descripción del producto
      • Operaciones básicas
      • Activación y conexión
      • Flujo de escaneo
      • Obtener nube de puntos con coordenadas absolutas
      • Fusión de mapas
      • Recomendaciones de planificación de rutas para escenas típicas
      • Precauciones
      • FAQ
  • Serie Lixel L

    • Lixel L2 Pro

      • Descripción del producto
      • Operaciones básicas
      • Activación y conexión del dispositivo
      • Flujo de escaneo
      • Obtener nube de puntos con coordenadas absolutas
      • Punto de medición
      • Apéndice
      • FAQ
  • Lixel Studio

    • Versión y derechos de autor
    • Instalación y activación
    • Interfaz del software
    • Operaciones de archivo
    • Procesamiento de proyectos
    • Herramientas
    • Dibujo 2D
    • Aplicaciones
    • Ajustes
    • Conexión de dispositivo
  • Lixel CyberColor

    • LCC Studio

      • Primeros pasos
      • Versión y actualizaciones
      • Descarga e instalación
      • Descripción general de la interfaz y navegación
      • Antes de la reconstrucción
      • Reconstrucción de modelos
      • Reconstrucción de modelo único
      • Fusión de mapas
      • Fusión aire-tierra
      • Reconstrucción aérea
      • Mis modelos
      • Otras funciones
      • Ajustes y cuenta
      • Converter
      • Reconstrucción por vídeo
      • Preguntas frecuentes
    • LCC Scene Editor

      • Versión y actualizaciones
      • Cuenta e inicio de sesión
      • Descripción general del producto y página de inicio
      • Interfaz del editor
      • Modos de navegación
      • Archivo
      • Configuración
      • Editar
      • Ventana
      • Barra de herramientas global
      • Activos y propiedades
      • Barra de herramientas izquierda
      • Puntos de vista
      • Portal
      • Skybox
      • Anotaciones
      • Medición
      • Flythrough
      • Informe de escena
      • 3D Layout
      • Minimapa
      • Modo Vista previa (Viewer)
      • Ayuda
      • Preguntas frecuentes (FAQ)
      • Punto de inicio
    • LCC Model Editor

      • Versión y actualizaciones
      • Guía del usuario
      • Visión general e interfaz
      • Operaciones de archivo
      • Selectores
      • Edición de modelos
      • Medición
      • Corrección de color
      • Gestión de activos
      • Configuración y ayuda
      • Preguntas frecuentes
    • Capture Guide

      • Descripción general
      • Descripción general de los dispositivos de captura
      • Principios generales de captura
      • Captura de escenas interiores
      • Captura de escenas exteriores
      • Captura a gran escala (Map Fusion)
      • Captura con aerial-ground map fusion
      • Captura de objetos
      • Captura de personas
      • Captura para reconstrucción a partir de vídeo
      • HD Enhancement
      • Puntos de control (Lixel P1)
      • Preguntas frecuentes y resolución de problemas
    • Historial de versiones
  • Plugins y SDK

    • Unreal

      • Introducción
      • Inicio rápido - Windows
      • Inicio rápido - Linux
      • Inicio rápido - Quest3
      • Ediciones y licencias
      • Renderizado
      • Ajustes visuales
      • Normales e iluminación
      • Edición de escenas
      • Parámetros de rendimiento
      • Guía de rendimiento
      • Integración con plugins de terceros y del motor
      • Proxy Mesh
      • Animación de carga
      • Colisión
      • Compatibilidad con Navigation System
      • Compatibilidad con Single Layer Water
      • Localización
      • Preguntas frecuentes
      • Resolución de problemas
      • Logs y diagnóstico
      • Contacto
      • Referencia de API

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • Actors SOG / SPZ / PLY
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ULCCUtilLibrary
        • Enumeraciones
        • Structs
      • Registro de cambios

        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1

Aportar normales reales al 3DGS con una malla proxy

Descripción general

ProxyMesh es una función de la edición Pro de LCC4Unreal. Aporta información real de profundidad y normales mediante una malla proxy colocada en la escena y es el único modo de normales con sombreado real de la forma. Se aplica a todos los formatos del pipeline LCC2 (.lcc2 / .sog / .spz / .ply). Para las licencias, consultar Ediciones y licencias.

Nota: ProxyMesh requiere una licencia válida. Sin ella, recurre automáticamente al modo Fixed.

Qué es una malla proxy

Los datos 3DGS no tienen normales de superficie propias y no escriben nada en el GBuffer, por lo que no pueden participar en los cálculos de iluminación habituales. La función de la malla proxy es aportar una geometría cuya forma coincida con el 3DGS. El plugin toma de ella la profundidad, las normales y las propiedades de material del GBuffer y las entrega a la iluminación y el posprocesado del motor; la malla en sí nunca aparece en la imagen final.

        Datos 3DGS                     Malla proxy
   (color, opacidad)      (profundidad, normales, propiedades de material)
           │                              │
           │                              ▼
           │                     Escritas en el GBuffer
           │                              │
           │              ┌───────────────┴───────────────┐
           │              ▼                               ▼
           │    Iluminación del motor           Posprocesado que
           │  (direccional, puntual, sombras)  depende del GBuffer
           │              │                  (reflexión, refracción, etc.)
           │              └───────────────┬───────────────┘
           ▼                              ▼
     Origen del color ─────────▶  Composición de la imagen final
                                          │
                                          ▼
                            La malla proxy en sí es invisible

En otras palabras: el color de la imagen procede del 3DGS, y la respuesta a la iluminación procede de la malla proxy.

El origen de la malla no está restringido. El plugin solo lee su resultado de renderizado y no importa cómo se haya producido. Fuentes habituales:

FuenteDescripción
Malla aproximada generada junto con el 3DGSMalla producida por el flujo de trabajo de captura; la coincidencia de forma más ajustada y la primera opción
Malla convertida a partir del 3DGSMalla reconstruida a partir del 3DGS con una herramienta de terceros
Malla creada a manoModelada según la forma del 3DGS en software DCC, adecuada para escenas que requieren un control preciso
Ensamblada a partir de primitivas básicasVolúmenes aproximados construidos con Cube, Plane y otras mallas básicas, adecuados para formas regulares como edificios y suelo

El único requisito es que la malla coincida espacialmente con la forma del 3DGS. Cuanto más ajustada sea la coincidencia, más realista será la iluminación. Cuando la desviación es demasiado grande, la dirección de la iluminación deja de corresponder con la forma visible en la imagen.

La malla no necesita alta precisión: una geometría low-poly simplificada es suficiente siempre que los volúmenes y la orientación sean correctos.

Qué aporta el material

Las propiedades de material de la malla proxy se leen junto con el GBuffer, por lo que determinan cómo responde a la iluminación la superficie del 3DGS.

Para una iluminación básica, basta con un material de whitebox y no se necesitan texturas. Para los efectos que dependen de las propiedades de material, usar el material PBR correspondiente en la ubicación adecuada de la malla, por ejemplo:

  • Reflexión y refracción del agua: usar un material de agua con valores adecuados de metalicidad y rugosidad en la zona del agua
  • Reflejos metálicos: asignar valores adecuados de Metallic y Roughness en las estructuras metálicas
  • Superficies rugosas: usar un Roughness alto para suprimir los reflejos que no deben aparecer

Cuando las propiedades de material no se corresponden con la forma real, el resultado de la iluminación no coincide con el aspecto del 3DGS en la imagen, por ejemplo reflejos especulares en una pared que debería ser rugosa.

Configuración rápida

Paso 1: colocar el Actor ProxyMesh

  1. Añadir un Actor ALCC2ProxyMesh desde el panel del plugin LCC4Unreal en el editor
  2. Asignar un StaticMesh a su StaticMeshComponent (de cualquier fuente, consultar la sección anterior)
  3. Ajustar la posición del ProxyMesh para que se superponga espacialmente al contenido 3DGS
Colocar un Actor ALCC2ProxyMesh

Colocar un Actor ALCC2ProxyMesh en la escena

Paso 2: activar el modo ProxyMesh

  1. Seleccionar el Actor del pipeline LCC2 (ALCC2Actor / ASogActor / ASpzActor / APlyActor)
  2. Buscar LightMode en el panel Details y cambiarlo a Lit
  3. Buscar la categoría Lighting de LCC2Component en el panel Details
  4. Establecer NormalMode en ProxyMesh
Activar Lit y seleccionar el modo de normales ProxyMesh

Activar Lit y establecer NormalMode en ProxyMesh

Paso 3: verificar

  • Cambiar la dirección de la iluminación de la escena y observar si el 3DGS produce autosombreado
  • Confirmar que la malla proxy queda oculta en la imagen final
Resultado de iluminación con normales reales mediante ProxyMesh

Resultado de la iluminación después de que ProxyMesh aporte normales reales

Ejemplo de uso de ProxyMesh

Demostración de la configuración de ProxyMesh y del resultado de la iluminación

El proceso de configuración de ProxyMesh y el resultado de la iluminación

ALCC2ProxyMesh

El Actor proxy, emparejado con los Actors del pipeline LCC2 cuando NormalMode = ProxyMesh.

Propiedades

PropiedadDescripción
StaticMeshComponentLa malla estática que aporta la profundidad y las normales de la escena

Transform predeterminado

  • Escala (100, 100, 100): la unidad de la malla es el metro por defecto, mientras que UE usa centímetros
  • Rotación (0, 180, 0): compensa que el pipeline de generación de la malla tiene el eje frontal opuesto al de UE

Comportamiento

  • Activa automáticamente el renderizado CustomDepth cuando el StaticMesh es válido
  • Registra una advertencia y desactiva CustomDepth cuando el StaticMesh está vacío

Comprobación de licencia

El modo ProxyMesh requiere una licencia de la edición Pro; consultar Ediciones y licencias. Sin licencia, recurre automáticamente al modo Fixed, y el valor almacenado de la propiedad no se modifica.

Cambio en tiempo de ejecución

NormalMode se puede cambiar en tiempo de ejecución desde Blueprint o C++ y surte efecto en el fotograma siguiente.

Uso en Blueprint

Crear un ProxyMesh

SpawnActor->Class: ALCC2ProxyMesh
→ Establecer el StaticMesh de StaticMeshComponent
→ Ajustar la posición para alinearla con el contenido 3DGS

Cambiar de modo

LCC2Component->NormalMode = ProxyMesh

Buenas prácticas

  1. Cobertura de la malla: asegurarse de que la malla proxy cubre la misma zona espacial que el contenido 3DGS.
  2. Precisión de la malla: basta con una aproximación simplificada de la geometría de la escena, no se necesitan recuentos altos de polígonos.
  3. Varios Actors: se pueden colocar varios Actors ALCC2ProxyMesh para cubrir zonas distintas.
  4. Sin vinculación explícita: no es necesario asociar el ProxyMesh a un Actor concreto, el emparejamiento se produce automáticamente.
  5. Compatibilidad retroactiva: los proyectos que no usan ProxyMesh se comportan exactamente igual que antes de la actualización, sin coste adicional.

Resolución de problemas

ProxyMesh no surte efecto

  • Confirmar que NormalMode está establecido en ProxyMesh
  • Confirmar que la licencia es válida
  • Asegurarse de que el Actor ProxyMesh tiene asignado un StaticMesh válido
  • Confirmar que el ProxyMesh se superpone espacialmente al contenido 3DGS

Advertencia: "has a null StaticMesh"

Asignar un StaticMesh al Actor ALCC2ProxyMesh. La advertencia está limitada por frecuencia y se emite solo una vez por instancia.

El color del whitebox es visible en la imagen final

  • Asegurarse de que al menos un LCC2Component está en modo ProxyMesh
  • Ajustar LCC2.ProxyMeshDepthEpsilon cuando la coincidencia de profundidad sea demasiado estricta

El resultado de la iluminación es incorrecto

  • Verificar que las normales de la malla proxy son una aproximación razonable de la geometría real de la escena

Las sombras aparecen solo de cerca y se cortan a lo lejos

Es un problema del motor. Seleccionar el Actor ProxyMesh y desactivar y volver a activar Far Shadow en el StaticMeshComponent para restaurar las sombras completas.

Anterior
Integración con plugins de terceros y del motor
Siguiente
Animación de carga