Image generated with AI
glTF in Blender: export 3D models for web and games
Diego Cortés
Author
Your model looks great in Blender, but when you upload it to the web it arrives gray, heavy or with broken textures. glTF is the format that lets 3D travel and render the way you expect: exporting it well from Blender is the difference between a portfolio that impresses and a link nobody opens.
What is glTF and why is it the web 3D standard?
glTF (GL Transmission Format) is an open standard from the Khronos Group built to transmit and load 3D models on the web and in native applications. It was not born as just another file format, but as a runtime delivery format: it reduces the size of models and the processing needed to load and render them in real time.
Version 2.0 was also published as the ISO/IEC 12113 international standard in 2022, an unusual endorsement for a graphics format. And since its material model has been metalness/roughness from day one, it fits naturally with the real-time engines that power the web, games and extended reality.
glTF vs GLB vs FBX vs USDZ: which one should you use?
Each format solves a different problem, and glTF does not compete with the .blend file or replace FBX in every pipeline. Choosing well saves conversions and headaches at the destination.
GLB: a single binary file
GLB is the binary form of the same glTF 2.0 specification: geometry, textures and materials travel in a single file. It is the ideal option for shipping a complete model and for dragging it into viewers, because you do not depend on loose textures traveling next to the file.
FBX: the DCC interchange format
FBX is Autodesk's proprietary interchange format and it dominates the move between 3D software and engines such as Unity or Unreal. If your pipeline stays strictly between authoring tools, FBX remains the usual choice; glTF, on the other hand, is open and aimed at runtime delivery for the web, AR and VR.
What about USDZ?
USDZ targets mainly the Apple ecosystem and Quick Look in augmented reality. For the rest of the web, glTF covers the ground with much broader support.
Preparing the scene in Blender before exporting
The exporter does its job, but the scene decides whether the result looks right or arrives deformed. Spend five minutes preparing the file and the rest of the workflow becomes predictable.
Scale, rotation and applied transforms
Apply transforms with Ctrl+A (scale and rotation, above all) before exporting. Web engines load the model exactly as it leaves the exporter, and an armature with unapplied scale can show up squashed or with the rig out of place at the destination.
Names and organization
Object, material and armature names travel inside the file and whoever consumes it will see them. Name things clearly from the start: a material called Material.001 helps nobody, and in scenes shared with other artists or with an engine, organization shows.
Exporting to glTF 2.0 from Blender step by step
Blender ships with the glTF 2.0 exporter: you will find it at File > Export > glTF 2.0, and if it does not show up, the add-on is disabled in Preferences > Add-ons. For the first test, export with the default options and check the result in a viewer before fine-tuning anything.
Format: .gltf or .glb
The difference is practical: the .gltf produces a readable JSON file with loose textures next to it, handy for inspection; the .glb packs everything into a single binary ready for web production. For putting a model in a portfolio or a viewer, .glb is usually the stronger choice.
Key exporter options
In the export panel check at least three groups: the selection (Selected Objects if you only want part of the scene), Apply for applying transforms, and Include for animations and skins. The compression tab comes at the end of the flow, when file size matters.
Materials: what glTF understands and what you must bake
Here comes the most common misunderstanding: not every Blender node travels to the destination. The exporter translates node networks based on the Principled BSDF into glTF's PBR metal/rough model, and whatever does not fit into that model must be baked.
The Metalness/Roughness core
Base Color, Metallic, Roughness, Normal, Emissive and alpha export almost directly: the mapping with the Principled BSDF is nearly one to one. If your material uses those channels in an organized way, the result on the web looks the same as in the viewport.
PBR extensions: transmission, clearcoat, sheen, specular, volume
glTF extends through official Khronos Group extensions, the KHR_materials_* family. KHR_materials_transmission defines glass and surfaces that let light through in a physically plausible way, and together with KHR_materials_volume, KHR_materials_ior and KHR_materials_specular you can model glass with refraction, volumetric scattering and richer specular reflections. Support in the Blender exporter grows version by version, so check the add-on manual before promising a specific effect; if the extension does not arrive, the material falls back to the basic core.
When a shader does not export: baking
Complex shaders (procedural noise connected directly, exotic mixes or subsurface scattering) do not translate on their own. The standard solution is baking those effects to textures and wiring the result into the PBR slots that glTF understands. It hurts to do it, but it is the same work you would do for any real-time engine.
Textures: the color space that breaks everything
The classic color space mistake: normal, roughness or occlusion maps must be set to Non-Color in the Image Texture node, not sRGB. If they stay in sRGB, the model looks flat, shiny or with broken normals. Also, glTF only supports normal maps in tangent space: leave the Normal Map node at its default value and do not invent conversions.
Animations and armatures
glTF does not only carry meshes: animations are part of the core format, and Blender exports them if you prepare them carefully.
What gets exported
Object transforms (location, rotation and scale) and bone poses are exported. With the Scene option, the exporter follows the animation exactly as it looks in the viewport, the most direct way to make sure that what you animated is what travels.
Skinning
Armatures with weights work in glTF: skinning is part of the core, not an extension. However, if the goal is real-time animation, check that the rig does not depend on constraints the destination will not evaluate; what a constraint solves in Blender, the engine must solve on the web.
Cutting weight for the web: Draco and friends
A model that weighs 80 MB can load in seconds on your machine and in minutes on a phone with a bad connection. Weight is attacked on two fronts: geometry and textures.
Geometry compression with Draco
The Blender exporter includes Draco geometry compression, enabled from the export panel. It compresses meshes with controlled precision loss and usually cuts weight dramatically. In the glTF ecosystem, Meshopt is also used as an alternative, depending on the engine and the pipeline.
Textures and the final format
Resize textures to the actual size the asset needs and compress the ones that go inside the .glb. GPU formats such as KTX2/Basis, through Khronos extensions, leave textures ready for the graphics card without extra steps at the destination, although support depends on the viewer or engine you use.
Validate before publishing
The Khronos glTF Validator checks the file against the glTF 2.0 specification and distinguishes errors from warnings: errors break loading in some viewer and warnings flag things the destination may interpret differently. After validating, test the .glb in a standard glTF viewer, in the browser and on your phone; nothing replaces seeing it on the actual screen where your audience will consume it.
Conclusion
glTF turns your Blender model into an asset any website can load: a clean scene, an export with the right settings and a final validation. The workflow feels long the first time, but by the third export it is routine, and the difference shows when the model reaches the web with its materials, its animation and the right file size.
If you want to see full export and optimization workflows in action, check out the curated video tutorials on CGI Academy Hub: theory is quick to understand, but the eye for preparing scenes is trained by watching others work.