El formato de transmisión GL (archivo .glTF) es un formato de intercambio estándar del sector para transportar modelos 3D. Los archivos de formato de transmisión GL binario (.glb) son versiones binarias de un archivo glTF que también incluyen activos integrados como texturas.
Más información sobre la especificación glTF
Los marcadores glTF pueden contener varios niveles de detalle (LOD) para administrar su visualización de forma eficiente y razonable en toda una variedad de distancias de visualización. Esta escalabilidad significa que cuando el marcador está dentro de la distancia de una escena, se dibuja con menor complejidad que cuando se dibuja en primer plano, más cerca del visor.
Los marcadores glTF pueden incluir propiedades de material como brillo, rugosidad o metalizado. Otorgan a los modelos un sentido de realismo característico que no se puede lograr con tan solo colores planos.
Entidades compatibles de la especificación glTF
Las entidades actualmente compatibles de la especificación glTF son las siguientes:
- Jerarquías de nodo completo, incluidas las transformaciones de nodo e instancias de malla.
- Se admite la extensión glTF MSFT_lod, pero únicamente LOD basados en nodo, no en material. MSFT_lod solo puede aparecer en el primer nodo de una escena. Si aparece en alguna otra parte, todas las ocurrencias de MSFT_lod se ignoran.
- Tipos de geometría primitiva: TRIANGLE, TRIANGLE_STRIP y TRIANGLE_FAN.
- Todos los atributos de vértice y métodos para especificar atributos con zonas de influencia, vistas de zona de influencia y descriptores de acceso, a menos que se indique lo contrario.
- GLB (glTF binario).
- Animación de transformación de nodos. Una animación por propiedad animada.
- Animación Morph target (posición, normal, uv, tangente, color). Una animación por propiedad animada.
- Materiales metálicos/con rugosidad.
- Mapas normales.
- Mapas de oclusión.
- Mapas emisivos.
- Colores de vértice.
- Fijación UV.
- Reflejo UV.
- La capacidad de brillo especular se define en la extensión KHR_Materials_pbrSpecularGlossiness.
- Texturas que utilizan el formato de supercompresión Basis Universal, definido por la extensión KHR_texture_basisu.
- Comprensión avanzada de la geometría de malla, definida por la extensión KHR_draco_mesh_compression.
- Índice de refracción (IOR) de los materiales, para renderizar superficies transparentes y refractivas como el vidrio, el agua o las piedras preciosas, tal y como se define en la extensión KHR_materials_ior.
- Reflexión especular para mostrar un reflejo de la luz similar al de un espejo desde una superficie, tal y como se define en la extensión KHR_materials_specular.
- Simulación de una capa fina, transparente y brillante sobre un material base para representar pintura de automóvil, madera barnizada o metales recubiertos, tal y como se define en la extensión KHR_materials_clearcoat.
- Representación realista de materiales transparentes mediante la simulación de la transmisión de la luz a través de una superficie, tal y como se define en la extensión KHR_materials_transmission.
Nota:
El motor de renderizado debe estar configurado en DirectX12 para utilizar estas extensiones:
- Extensión KHR_materials_specular
- KHR_materials_clearcoat
- KHR_materials_transmission
Entidades no compatibles de la especificación glTF
Las entidades actualmente incompatibles de la especificación glTF son las siguientes:
- La escena del documento glTF debe estar definida en una escena específica o haber exactamente una escena en el documento glTF.
- Todas las extensiones glTF excepto las mencionadas anteriormente.
- Modos.
- Tipos de geometría primitiva: POINTS, LINES, LINE_LOOP y LINE_STRIP.
- Cámaras.
- Varios conjuntos UV.
- Descriptores de acceso dispersos.