glTF™ (GL Transmission Format) is a royalty-free specification for the efficient transmission and loading of 3D scenes and models by applications. glTF minimizes both the size of 3D assets, and the runtime processing needed to unpack and use those assets. glTF defines an extensible, common publishing format for 3D content tools and services that streamlines authoring workflows and enables interoperable use of content across the industry.
Specification
Please provide spec feedback and community updates by submitting issues. For quick questions, use gitter.
Quickstart
Overview
For developers
For artists
Blender exporter for creating and converting models with glTF 2.0.
Preview tools:
Contents
Converters and Exporters
Optimizers
Tool |
Status |
Description |
gltf-import-export |
|
NPM package to convert between glb and gltf files |
makeglb |
|
Drag and drop browser tool to convert gltf to self contained binary glb |
gltf-toolkit |
|
Collection of tools and libraries to modify and optimize glTF assets for Windows Mixed Reality home |
glTF Pipeline |
|
Official Node.js command-line tool for optimizing glTF assets |
gltf2glb |
|
Python tool to convert glTF to Binary glTF |
binary-gltf-utils |
|
Node.js tool to convert glTF to Binary glTF |
Validators
Tool |
Status |
Description |
glTF Validator |
|
Official command-line and drag-and-top tool to validate glTF assets against the specification |
Viewers and Debugging
Tool |
Status |
Description |
BabylonJS Sandbox |
|
Drag-and-drop online viewer for model preview and debugging, using BabylonJS |
glTF Animation Visualizer |
|
Frame-by-frame debugging for glTF animations. |
glTF Viewer |
|
Drag-and-drop viewer (web and desktop) for model preview and debugging, using three.js |
Clay Viewer |
|
Drag-and-drop glTF2.0 viewer with high quality rendering and PBR material editing. |
Applications
Application |
Status |
Description |
Paint 3D by Microsoft |
|
3D creation tool |
Remix 3D by Microsoft |
|
Share and print 3D creations |
Sketchfab |
|
Platform to publish, share & discover 3D online and in VR |
Wordpress (plugin) |
|
Inline glTF renderer for WordPress |
Archilogic |
|
Web-based 3D platform for architecture and interiors |
Aspose.3D |
|
File Format APIs for creating, editing, and converting over 100 file formats |
Loaders and Viewers
WebGL Engines
To compare WebGL-based glTF loaders, see gltf-test.
WebGL Sample Code
Game Engines
Languages
JavaScript / Node.js
Tool |
Status |
Description |
gltf-viewer |
|
Web component to display glTF models on a website |
minimal-gltf-loader |
|
A minimal, engine-agnostic JavaScript glTF Loader, with a raw WebGL 2 renderer example |
gltf-walker |
|
Convenience library for processing glTF |
RedCube.js |
|
glTF viewer without dependencies |
C++
Tool |
Status |
Description |
Tiny glTF loader |
|
Header only C++ glTF parsing library, with Alembic→glTF and CyHair->glTF converters |
yocto-gltf |
|
Single file, header only, C++ glTF loading/writing automatically generated from the spec |
glTF2-loader |
|
C++14 glTF (2.0 only) parsing library, by Lugdunum3D |
gltfpp |
|
glTF 2.0 loader for C++14 |
TGen |
|
Simple C++ Tangent Generator |
Microsoft.glTF.CPP |
|
A C++ library for serializing and deserializing gltf/glb files. |
Cinder |
|
Work-in-progress glTF importer |
nvpro-pipeline |
|
Research rendering pipeline by NVIDIA for minimizing CPU cost |
AssetKit |
? |
3D asset importer/exporter/util library |
C++ and Vulkan
Tool |
Status |
Description |
Laugh Engine |
|
Vulkan PBR and IBL renderer |
Lugdunum3D |
|
A modern cross-platform 3D rendering engine built with Vulkan and modern C++14 |
UX3D Engine |
|
Cross-platform multi-threaded Vulkan 3D Engine with glTF 2.0 import and export |
C#
Go
Tool |
Status |
Description |
gltf |
|
go library for marshaling and unmarshaling glTF |
Rust
Tool |
Status |
Description |
Loader |
|
A crate for loading glTF 2.0 |
Viewer |
|
glTF 2.0 Viewer written in Rust |
Haxe
Tool |
Status |
Description |
haxe-gltf |
|
A Haxe library for reading glTF |
Java
- JglTF - Java libraries for glTF
- jgltf-impl - Classes representing a glTF model, auto-generated from the glTF JSON schema
- jgltf-model - Classes for reading, processing, converting and writing glTF
- jgltf-obj - Library for converting OBJ to glTF
- jgltf-viewer - Viewer for glTF, with different implementations:
- jgltf-browser - Application combining the above libraries
- jgltf-validator - Simple glTF validator, only intended for internal use
Ada
Tool |
Status |
Description |
Orka |
|
The OpenGL 4.5 Rendering Kernel in Ada |
TypeScript
Swift
Tool |
Status |
Description |
GLTFSceneKit |
|
glTF loader for SceneKit |
Utilities
- gltf-utilities - JavaScript utility library to help load glTF
- wetzel - Generate Markdown documentation from JSON Schema
- gltf-enum - Simple site to help work with all the different enums in glTF spec
Stack Overflow
Presentations and Articles
Intros
Tutorials
All Presentations and Articles
- Art Pipeline for glTF by Patrick Ryan. January 2018
- Call for Participation: glTF Creating a Compressed Texture Extension by Khronos. December 2017
- Using glTF Models with A-Frame by Josh Marinacci. December 2017
- Creating animated glTF Characters with Mixamo and Blender by Don McCurdy. November 2017
- glTF - Seattle Khronos Group Meetup by Saurabh Bhatia. September 2017
- State of glTF 2.0 for WebVR Devs by Don McCurdy, Google. September 2017
- glTF Exporter in three.js and A-Frame by Fernando Serrano. August 2017
- SIGGRAPH 2017 glTF BOF video. August 2017
- glTF 2.0 and Community Update: Tony Parisi, Unity, and Patrick Cozzi, Cesium
- Microsoft update - Paint 3D, View 3D, 3D in Office and one more thing…: Saurabh Bhatia and Gary Hsu, Microsoft
- glTF VSCode editor: Ed Mackey, AGI
- Autodesk Forge and glTF: Nop Jiarathanakul, Autodesk
- Three.js and A-Frame update: Don McCurdy, Google and Ricardo Cabello, Google
- Introduction to geometry compression on the web with Draco: Michael Hemmer and Jamieson Brettle, Google
- WebGL PBR reference implementation: Scott Nagy, Microsoft, and Mohamad Moneimne, Cesium
- Sketchfab update: Aurelien Chatelain, Sketchfab
- glTF 2.0 Export in InstantUV: Max Limper, Fraunhofer
- Physically-Based Rendering in Cesium by Mohamad Moneimne. August 2017
- Why we should all support glTF 2.0 as THE standard asset exchange format for game engines by Juan Linietsky. August 2017
- Exporting glTF 2.0 from Maya LT by Don McCurdy. June 2017
- glTF 2.0: PBR Materials by Saurabh Bhatia. May 2017
- glTF Workflow for a Saturday Night by Diego F. Goberna. April 2017
- 2017 GDC WebGL/WebVR/glTF Meetup YouTube recording. March 2017
- Reach the Largest Gaming Platform of All: The Web. WebGL, WebVR and glTF. March 2017
- PBR-ready glTF in instant3Dhub / instantUV by Max Limper. March 2017
- Call for feedback on glTF 2.0 by Neil Trevett. February 2017
- Improve expressiveness of WebGL with the topic 3D file format glTF now! (in Japanese) by Yuki Shimada(@emadurandal), WebGL advent calendar 2016 at Qiita. December 2016
- A new 3D horizon: glTF import and export with Archilogic by Martin Splitt. December 2016
- Bringing 3D to everyone through open standards by Forest W. Gouin and Jean Paoli. October 2016
- Using Quantization with 3D Models by Rob Taglang. August 2016
- glTF and Mobile VR: Inclusive standards for a 3D world. Amanda Watson, Oculus, WebGL + glTF BOF. July 2016
- glTF Update and Roadmap. Tony Parisi, WebGL + glTF BOF. July 2016
- PBR in glTF: Current State. Max Limper, Johannes Behr, and Timo Sturm, WebGL + glTF BOF. July 2016
- glTF: The Runtime Asset Format for GL-based Applications. July 2016
- glTF working group updates (slides, video). Patrick Cozzi and Tony Parisi, WebGL + glTF BOF. March 2016
- FBX to/from glTF (slides, video). Cyrille Fauvel, WebGL + glTF BOF. March 2016
- Khronos Group glTF Webinar. Neil Trevett, Virtual AR Community meeting. October 2015
- An Introduction to glTF 1.0. October 2015
- The state of WebGL and glTF. Patrick Cozzi, The Graphical Web. September 2015
- glTF ecosystem and mesh compression update. Khronos 3D Formats Working Group, SIGGRAPH 2015. August 2015
- glTF and the WebGL Art Pipeline. Tony Parisi, WebGL Meetup. March 2015
- Writing an FBX importer / Exporter plug-in. Cyrille Fauvel. January 2015
- glTF Tips for Artists. Branden Coker. December 2014
- 3D for the Modern Web: Declarative 3D and glTF. Brian Coughlin. Summer 2014
- glTF: Designing an Open-Standard Runtime Asset Format. Fabrice Robinet et al, GPU Pro 5. May 2014
- Building a WebGL Santa with Cesium and glTF. Patrick Cozzi. December 2013
- glTF update. Tony Parisi. August 2013
- How I got involved in glTF and Khronos. Patrick Cozzi, WebGL Meetup. March 2013
We believe the true usefulness of glTF goes beyond the spec itself; it is an ecosystem of tools, documentation, and extensions contributed by the community. You are encouraged to get involved!