How does glTF work in Blender?

Guía Definitiva para Importar glTF en Blender

19/11/2005

Valoración: 4.2 (3193 votos)

El formato glTF (GL Transmission Format) se ha consolidado como el "JPEG del 3D", un estándar abierto y eficiente para transmitir y cargar modelos 3D en aplicaciones web, de realidad aumentada y motores de videojuegos. Su capacidad para reducir el tamaño de los archivos y minimizar el procesamiento necesario para renderizar los modelos lo ha convertido en una herramienta indispensable para cualquier artista 3D. Si eres usuario de Blender, estás de enhorabuena, ya que el software integra de forma nativa un potente importador y exportador para este formato. En esta guía completa, desglosaremos todo lo que necesitas saber para trabajar con archivos glTF en Blender, desde la importación básica hasta la configuración avanzada de materiales.

How to import glTF in Blender?
For import, glTF data is parsed and written into the Python glTF scene description. Any decompression is executed in this step. Using the imported glTF scene tree, the Blender internal scene representation is generated from this information. The Khronos glTF 2.0 importer and exporter is enabled by default in Blender 2.8 and higher.
Índice de Contenido

¿Necesito Instalar un Addon para Usar glTF en Blender?

Esta es una de las preguntas más comunes y la respuesta es un rotundo no. Desde la versión 2.80 de Blender, el addon oficial del Khronos Group, llamado glTF-Blender-IO, viene preinstalado y activado por defecto. Esto significa que no necesitas buscar, descargar ni instalar nada adicional para empezar a trabajar. Este addon es el resultado de la unificación de proyectos anteriores y es mantenido activamente por desarrolladores de UX3D, Scurest, Julien Duroure y con el apoyo de gigantes de la industria.

Si por alguna razón necesitas reinstalarlo o probar una versión de desarrollo, el proceso implicaría copiar la carpeta io_scene_gltf2 en el directorio de addons de tu instalación de Blender, pero para la gran mayoría de los usuarios, la funcionalidad está lista para usarse desde el primer momento que abren el programa.

Cómo Importar un Archivo glTF en Blender: Paso a Paso

El proceso de importación es increíblemente sencillo y directo, similar a como importarías cualquier otro formato de archivo en Blender.

Does Blender support glTF extensions?
It is possible for Python developers to add Blender support for additional glTF extensions by writing their own third-party add-on, without modifying this glTF add-on. For more information, see the example on GitHub and if needed, register an extension prefix.
  1. Ve al menú superior y haz clic en File (Archivo).
  2. Desplázate hacia abajo hasta la opción Import.
  3. En el submenú, selecciona glTF 2.0 (.gltf, .glb).
  4. Se abrirá el explorador de archivos de Blender. Navega hasta la ubicación de tu archivo .gltf o .glb.
  5. Selecciona el archivo y haz clic en el botón Import glTF 2.0.

¡Y eso es todo! Tu modelo 3D, junto con sus materiales, texturas y, si los tuviera, animaciones, aparecerá en tu escena de Blender. Notarás que Blender ha creado automáticamente una estructura de nodos de materiales que intenta replicar de la forma más fiel posible el material PBR (Physically Based Rendering) original del archivo glTF.

Entendiendo la Conversión de Materiales: De glTF a Nodos de Blender

El corazón del flujo de trabajo con glTF reside en los materiales. El formato glTF utiliza un sistema de materiales PBR con un flujo de trabajo de Metal/Rugosidad (Metal/Roughness) como estándar. Blender, por su parte, utiliza un sistema de nodos mucho más flexible y complejo, cuyo núcleo es el shader Principled BSDF. El addon glTF-Blender-IO actúa como un traductor inteligente entre estos dos sistemas.

Cuando importas un archivo, el addon analiza las propiedades del material glTF y construye un árbol de nodos alrededor del Principled BSDF para igualar su apariencia. De la misma manera, cuando exportas, el addon analiza tu configuración de nodos para escribir las propiedades correctas en el archivo glTF. Comprender esta correspondencia es clave para tener control total sobre el resultado final.

Configuración de Nodos para una Exportación Perfecta

Para asegurar que tus materiales de Blender se exporten correctamente a glTF, es fundamental seguir ciertas convenciones en la configuración de tus nodos. A continuación, detallamos cómo configurar cada canal principal.

Does Blender have glTF-Blender-Io?
Blender comes with glTF-Blender-IO pre-installed since 2.80. This is a refactoring of the original Khronos glTF exporter, combined with @Julien's importer. Both of the original projects should be considered obsolete in favor of the newer, combined glTF-Blender-IO project. The Blender Manual includes documentation on ways to use glTF.

Color Base (Base Color)

Esta es la propiedad más sencilla. El color base del material glTF se toma directamente del input Base Color del nodo Principled BSDF. Puedes conectar un nodo Image Texture para usar una textura de color o simplemente definir un color sólido en el propio nodo.

Metálico y Rugosidad (Metallic & Roughness)

Estos dos valores definen la naturaleza de la superficie del material. glTF espera que, si se usan texturas, la información de rugosidad esté en el canal Verde (G) y la de metalizado en el canal Azul (B) de la misma imagen. Para configurarlo correctamente en Blender:

  • Usa un nodo Image Texture con tu mapa de texturas. Es crucial que su Color Space esté configurado en Non-Color, ya que estos mapas no representan información de color, sino datos.
  • Añade un nodo Separate RGB y conecta la salida Color de tu textura a su entrada Image.
  • Conecta la salida G (Verde) del nodo Separate RGB al input Roughness del Principled BSDF.
  • Conecta la salida B (Azul) del nodo Separate RGB al input Metallic del Principled BSDF.

Al seguir esta estructura, el exportador reconocerá que estás usando el estándar de glTF y simplemente copiará la textura, optimizando el proceso.

Mapa de Normales (Normal Map)

Para dar detalle a la superficie, los mapas de normales son esenciales. La configuración correcta es:

  • Un nodo Image Texture con tu mapa de normales, también configurado en Non-Color.
  • Conecta su salida Color a la entrada Color de un nodo Normal Map.
  • Finalmente, conecta la salida Normal del nodo Normal Map a la entrada Normal del Principled BSDF.

El exportador reconocerá esta configuración y utilizará la imagen como mapa de normales, incluyendo el valor de intensidad (Strength) que hayas definido en el nodo Normal Map.

Oclusión Ambiental (Ambient Occlusion)

La oclusión ambiental (AO) añade sombras de contacto sutiles que dan profundidad al modelo. glTF tiene un canal específico para un mapa de AO, pero el Principled BSDF no tiene una entrada directa para él. Para exportar un mapa de AO, debes usar un truco:

  • El exportador busca un grupo de nodos personalizado llamado glTF Material Output.
  • Si este grupo de nodos está presente y tiene una entrada llamada Occlusion, la textura que conectes ahí será exportada como el mapa de AO del material glTF.
  • glTF espera que la información de AO esté en el canal Rojo (R) de la textura. Esto permite, de forma opcional, empaquetar AO (Rojo), Rugosidad (Verde) y Metalizado (Azul) en una sola textura, una técnica de optimización muy común conocida como mapa ORM.

Emisivo (Emissive)

Para materiales que emiten luz, puedes conectar una textura o un color al input Emission del nodo Principled BSDF. El addon exportará esta información como el mapa emisivo del material glTF.

How to import glTF in Blender?
For import, glTF data is parsed and written into the Python glTF scene description. Any decompression is executed in this step. Using the imported glTF scene tree, the Blender internal scene representation is generated from this information. The Khronos glTF 2.0 importer and exporter is enabled by default in Blender 2.8 and higher.

Tabla Comparativa: Nodos de Blender vs. Canales glTF

Para una referencia rápida, aquí tienes una tabla que resume la correspondencia entre los nodos de Blender y las propiedades de los materiales glTF.

Propiedad glTFNodo/Input en BlenderNotas Importantes
Base ColorPrincipled BSDF > Base ColorConectar una Image Texture o usar un color sólido.
Metallic / RoughnessPrincipled BSDF > Metallic / RoughnessUsar sliders o una textura empaquetada (G: Roughness, B: Metallic). Usar modo Non-Color.
Normal MapNormal Map Node > NormalLa Image Texture debe estar en modo Non-Color. Solo se soporta Tangent Space.
Ambient OcclusionCustom Node: glTF Material Output > OcclusionSe empaqueta en el canal Rojo (R) de la textura.
EmissivePrincipled BSDF > EmissionConectar una Image Texture o definir un color y una intensidad.

Manejo de Transparencia y Extensiones

El formato glTF es extensible, lo que le permite soportar características más allá del núcleo PBR básico. El addon de Blender es compatible con muchas de estas extensiones.

  • Transparencia: Para controlar la transparencia, debes ir a los ajustes del material en la pestaña de Propiedades. Usando el motor de render Eevee, puedes establecer el Blend Mode. Los modos soportados por glTF son Opaque (por defecto), Alpha Clip (para recortes duros, como vallas o vegetación) y Alpha Blend (para transparencias suaves como el cristal).
  • Clearcoat (Barniz): El addon soporta la extensión KHR_materials_clearcoat. Simplemente ajusta los valores de Clearcoat y Clearcoat Roughness en tu nodo Principled BSDF.
  • Transmission (Transmisión): Para materiales como el vidrio que refractan la luz, utiliza el input Transmission del Principled BSDF. Esto activará la extensión KHR_materials_transmission.
  • Transformación de Texturas: Puedes rotar, escalar o desplazar tus texturas UV utilizando un nodo Mapping y un nodo UV Map conectados a tu nodo de textura. El exportador utilizará la extensión KHR_texture_transform para preservar estas modificaciones.

Preguntas Frecuentes (FAQ)

¿Qué es un archivo .glb y en qué se diferencia de .gltf?
Un archivo .gltf es un archivo JSON que describe la escena, pero las texturas y los datos de la geometría se guardan en archivos separados (.bin, .png, .jpg). Un archivo .glb es un formato binario que empaqueta todo (el JSON, las texturas y los datos) en un único archivo, lo que lo hace más fácil de compartir y cargar.
¿Por qué mi modelo se ve diferente en Blender que en un visor glTF?
Aunque el addon hace un gran trabajo, los motores de renderizado de Blender (Cycles y Eevee) son mucho más complejos que un visor glTF en tiempo real. Las diferencias en la iluminación, el post-procesado y la interpretación de los materiales pueden causar ligeras variaciones. Seguir las pautas de esta guía ayuda a minimizar esas diferencias.
¿Puedo exportar animaciones a glTF desde Blender?
¡Sí! El addon tiene un excelente soporte para exportar animaciones. Esto incluye animaciones de esqueleto (armature), animaciones de shape keys (morph targets) y animaciones de objetos (posición, rotación, escala).
¿Qué pasa con mi geometría? ¿Se conservan los quads y n-gons?
No. El formato glTF está diseñado para ser renderizado directamente por las tarjetas gráficas, que trabajan exclusivamente con triángulos. Por lo tanto, durante la exportación, toda tu geometría, ya sean quads o n-gons, será automáticamente triangulada. Es un proceso inevitable y necesario para la compatibilidad.

Conclusión

Dominar el flujo de trabajo de importación y exportación de glTF en Blender es una habilidad fundamental para cualquier artista 3D moderno. Gracias a la robusta integración nativa, el proceso es más accesible que nunca. La clave del éxito reside en comprender cómo traducir la flexibilidad del sistema de nodos de Blender a las convenciones estandarizadas del formato PBR de glTF. Al configurar correctamente tus materiales para el color base, la rugosidad, el metalizado y los mapas de normales, te asegurarás de que tus creaciones se vean espectaculares en cualquier plataforma que soporte este versátil formato.

Si quieres conocer otros artículos parecidos a Guía Definitiva para Importar glTF en Blender puedes visitar la categoría Juegos.

Subir