What is glTF?
CGI Visualization to Perfection
Danthree Studio turns complex 3D tech into high-converting marketing assets. Get high-end quality for your brand.
Discuss your projectWhat is glTF?
Definition of glTF / GLB
glTF (GL Transmission Format) is an open 3D format maintained by the Khronos Group for delivering and displaying models, materials and animations. GLB is its binary container format and can package the required data in one file. For a product page, what matters is how the model works in the intended viewer. For example, you can let customers inspect a piece of furniture from different angles and view its prepared materials on a product page. File size and material appearance depend on the model and destination viewer. The glTF specification defines the format. Our 3D visualization overview explains the scope of our image production.

Why is glTF beneficial for brands?
| Advantage | What furniture and home brands should consider |
|---|---|
| File size | Geometry and textures can be optimized for interactive delivery and compressed with suitable extensions. Actual savings depend on the model and export settings. |
| Materials | PBR properties can be transferred. Lighting, supported extensions and the renderer affect the visible result. |
| Web viewers | Compatible viewers load glTF/GLB interactively. WebGL itself is a graphics API, not a file loader. |
| AR delivery | Some destinations need another format, such as USDZ. Apple Quick Look does not open glTF directly. |
| Open standard | The public specification helps you exchange assets between compatible tools. Check model, texture and software licenses for your intended use. |
From Technical Term to Visual Experience
We don't just use these technologies; we master them. See how we create photorealistic worlds for leading brands.
View WorkTechnical Fundamentals
- File structure: a .gltf file describes the scene in JSON. Geometry and images may be external or embedded. A GLB can also reference external files.
- Materials: the core uses PBR metallic-roughness. Additional properties need suitable extensions supported by the destination viewer.
- Compression: Draco or Meshopt can reduce geometry data. Test the reduction, decoding time and visual changes on the actual model.
- Material variants: KHR_materials_variants assigns prepared materials to existing geometry. It does not implement product rules, pricing or changes to a configurator's geometry.
Blender's glTF exporter documentation describes supported materials and animations. Before production, check the features shared by your exporter and destination application. Further references: Shopify product media, transmission and KTX2 textures.
Real-World Comparison: glTF vs. FBX vs. USDZ
| Criterion | glTF / GLB | FBX | USDZ |
|---|---|---|---|
| Main purpose | Delivery to real-time applications | Exchange between 3D applications | A package for USD applications and Apple Quick Look |
| File size | Depends on model, textures and compression | Depends on content and export | Depends on content and packaged files |
| Format | Open Khronos specification | Autodesk format | Publicly documented OpenUSD package format |
| Materials | PBR core and supported extensions | Depends on exporter, importer and mapping | USD Preview Surface, for example, depending on the renderer |
| Typical use | Product viewers and compatible AR applications | Scene and animation exchange | USD delivery and AR previews on supported Apple devices |
What about OBJ? OBJ is mainly used to exchange static geometry, UV coordinates and normals, with materials usually described in a separate MTL file. glTF adds a standardized PBR material model, scene hierarchies and animation for real-time applications. That often makes glTF a more direct delivery format for an interactive product viewer. An existing OBJ file can serve as a starting point; review its materials when exporting.
Workflow: Exporting glTF in 6 Steps
- Define the product and destination. Agree on dimensions, references, viewer and required variants. Prepare CAD geometry or create a suitable model. See our 3D modeling service.
- Prepare geometry and UVs. Check silhouette, normals, seams and texel density. Shared UV areas can be intentional; unique baked details need suitable separate areas. See UV mapping.
- Translate materials. Assign base color, normal, roughness and metalness correctly. Simplify unsupported shader features or bake suitable details. Arbitrary shader graphs are not transferred unchanged.
- Check animation and detail levels. Export and test the required skeletal animation and morph targets. Prepare additional model resolutions only when the destination uses them. Fixed reduction percentages do not replace visual review.
- Optimize the export deliberately. Choose .gltf or .glb for the delivery method. Enable compression only when the viewer supports its decoder. Compare product contours and material details with the uncompressed reference.
- Test structure and appearance. Use the Khronos glTF Validator for format errors, then inspect the model in its intended viewer. Our 3D viewer supports interactive visual review. Compare dimensions, silhouette, colors and material details with your product reference.
Example of glTF on the Web
Practical checks
- Texture quality: choose resolution for the detail people can see. Base color and emission use sRGB; technical maps use their specified linear data interpretation. Compare lossy compression against the reference.
- Texture transforms: KHR_texture_transform can move, rotate and scale textures. It needs viewer support and does not replace a sound UV layout.
- Material selection: define the variants and test them in the viewer. Variant count alone does not determine which extension makes sense.
FAQ - glTF / GLB File Format
What is the difference between glTF and GLB?
glTF is the format. A .gltf file contains the JSON scene description, with other data stored separately or embedded. GLB is a binary container that can bundle these resources. Before sharing it, check whether external files are still required.
What is the maximum size allowed for a GLB in a web viewer?
Set a loading budget for the actual viewer and test a representative product on the intended devices. Start by reducing unnecessary geometry and oversized textures while preserving important product details. Then measure loading time and interaction. A universal limit would be misleading because materials, animation, devices and connections work together.
Does Shopify support glTF?
Shopify lists GLB and USDZ for 3D product media uploads. Its current documentation allows files up to 500 MB and describes automatic optimization above 15 MB. That is an upload limit, not a sensible loading target for every store. Check the processed result in your theme.
Can I convert FBX to glTF?
Yes. You can import an FBX file into Blender, check its materials and animations, then export it as glTF or GLB. Map the material channels to the glTF material model. Complex shaders may need adjustments or baked textures. Compare the result in the destination viewer with the approved reference.
How do I integrate glTF into a 3D virtual showroom?
Load the model with a glTF-compatible viewer or loader, then check scale, materials, lighting, and navigation in the destination application. The file alone does not create a walkable space. Our 3D virtual showroom glossary explains the use case.
How do I choose the right texture resolution for glTF models?
Choose resolution based on visible product details, viewing distance, and target devices. Check sharpness, texture memory, and loading time together; fixed 1K or 2K rules do not suit every model. With Pixel Streaming, the image is rendered on a server and delivered as video. Model file size is therefore not a client-side model download budget.
Does glTF support transparent materials such as glass or acrylic?
Yes, when the material model and viewer support match. alphaMode is part of core glTF and controls surface coverage. KHR_materials_transmission supports light-transmitting materials; further volume effects need additional support.
Can I import physically based textures in JPEG XL or AVIF format?
Core glTF 2.0 specifies PNG and JPEG. Other formats need a suitable extension and viewer support, such as KTX2 with KHR_texture_basisu. AVIF and JPEG XL should not be treated as universally supported glTF textures. Choose format, resolution and color space for the material channel.
How can I quickly test the basic compatibility of my glTF file in a browser?
Use the Khronos glTF Validator, then inspect the file in its actual destination viewer. Check dimensions, orientation, materials, variants and required animations. Test loading and interaction on target devices. An appropriate USDZ version for Apple Quick Look needs its own checks.
Can animation bones and morph targets be used at the same time?
Yes. Skinning controls deformation through a skeleton, while morph targets describe additional shape changes through vertex position changes. glTF can combine both. Check the export and destination viewer to make sure the required motions and shape changes work together correctly.
Which compression workflow is better: Draco or Meshopt?
That depends on geometry, export settings, the decoder, and the target device. Draco and Meshopt use different methods; fixed savings or a universal speed ranking are not reliable. Compare file size, decoding time, and visible detail using the same models in the intended viewer.
How do I integrate variant swaps (color, fabrics) without duplicates?
With KHR_materials_variants, you can offer several prepared upholstery materials on the same chair geometry when the viewer supports the extension. This avoids a separate geometry copy for each material variant. Different shapes, combination rules, prices and product data need additional configurator logic.
Can I save shader nodes (e.g., clear coat) directly in glTF?
glTF transfers supported material properties, not arbitrary shader graphs. Clearcoat can be described with KHR_materials_clearcoat, for example. Both exporter and viewer need to support that extension. Unsupported effects need suitable simplification or baked textures where possible.
What is the maximum polygon count for smooth web performance?
There is no universal limit. Materials, textures, transparency, animations, and the target device affect performance alongside geometry. Set a budget for the application and measure loading and interaction with representative models. LODs and instancing can help when supported by the destination application.
How do I migrate an existing FBX pipeline to glTF without losing any materials?
Start by testing representative models through a suitable import/export pipeline, such as Blender. Map material channels, color spaces, units, and animations deliberately. Document adjustments and compare the glTF output in the destination viewer with the approved reference. Blender’s glTF exporter documentation describes supported properties.
