Sustainability of Digital Formats: Planning for Library of Congress Collections

Introduction | Sustainability Factors | Content Categories | Format Descriptions | Contact
Format Description Categories >> Browse Alphabetical List

glTF (GL Transmission Format) 2.0

>> Back
Table of Contents
Format Description Properties Explanation of format description terms

Identification and description Explanation of format description terms

Full name GL Transmission Format (glTF) 2.0

The glTF 2.0 format is the most widely used chronological version of the glTF family of formats, published by the Khronos Group in June 2017. glTF is intended as a vendor-neutral distribution format for 3D content, bridging the gap between 3D content creation tools and applications and applications displaying 3D graphics. Its originators described it as the "JPEG of 3D" or as a 3D content format for "the last mile." See glTF_family for a general description.

glTF2.0 was a major upgrade in relation to glTF1.0, and is not backwards compatible. glTF 1.0 is widely considered obsolete. Comments welcome.

The Khronos press release for glTF 2.0 stated, "The release of glTF 2.0 delivers a significant upgrade to glTF 1.0, an extensible, runtime neutral, open standard format for real-time delivery of 3D assets, which describes full scenes with compact transmission and fast load time. In response to major functionality requests from the developer community using glTF 1.0, the release of glTF 2.0 adds Physically Based Rendering (PBR) for portable, consistent description of materials. In glTF 1.0, a material was defined with a GLSL shader, which suited WebGL, but was problematic when importing a glTF model into a Direct3D or Metal application. Through using PBR, visually arresting glTF 2.0 models are now consistently portable to any rendering API. A PBR material is defined by a few concise parameters that can be used to generate shaders for any rendering API. glTF 2.0 defines a simple to implement, but powerful, PBR model that provides high-quality materials, and yet, is scalable to suit the capabilities of different classes of platform and device." "Including the addition of PBR-based materials, glTF 2.0 is a stable base for the future and will support practical runtime implementations for many graphics APIs. It includes updates to improve consistency, API-neutrality, and performance and will enable the industry to move to PBR material models."

For the general structure of glTF as a cluster of files, see description in glTF_family and the figure showing component files from the glTF 2.0 specification. The glTF 2.0 Quick Reference Guide provides a compact summary of glTF features. The PBR model included in the core specification of glTF 2.0 is known as the "metallic-roughness material model." This model uses three parameters: baseColorFactor (base color of the material); metallicFactor (metalness of the material); and roughnessFactor (roughness of the material).

glTF defines an extensibility mechanism, which is proving a widely used feature. See glTF Extension Registry. As of June 2019, glTF 2.0 has five extensions ratified by Khronos.

  • KHR_draco_mesh_compression: Allows glTF to support streaming compressed geometry data instead of the raw data. This extension appears likely to be widely used. Comments welcome. See, for example, Draco Compressed Meshes with glTF and 3D Tiles, (April 2018) and 3D Tiles Now an OGC Community Standard for Streaming Massive 3D Geospatial Content (February 2019), both blog posts from Cesium.
  • KHR_lights_punctual: Supports definition of a set of light sources within a scene.
  • KHR_materials_pbrSpecularGlossiness: Allows use of the PBR specular-glossiness material model. For a comparison between the metallic-roughness and specular-glossiness models for materials, see clause 4.5 of Automatic Optimization of 3D Mesh Data for Real-Time Online Presentation, a dissertation by Max Alfons Limper. The metallic-roughness material model can be used to represent a wide range of real-world materials and is more widely used. The specular-glossiness model offers more options; it can represent some real-world materials more faithfully, but can also model materials that cannot exist in the real world.
  • KHR_materials_unlit: Allows an unlit shading model. Three motivating uses cases for unlit materials include: mobile devices with limited resources; photogrammetry, in which lighting information is already present; and stylized materials, such as anime.
  • KHR_texture_transform: To reduce load times for a model with many texture images, some rendering engines encourage packing many low-resolution textures into a single large texture atlas.

Some extensions are vendor-specific. According to 3D Scanning the Past at the Smithsonian, an article from October 2018, the Smithsonian's Digitization Program Office team is working on an extension to the glTF file format to add support for annotations. All extensions used in a model must be listed in the top-level extensionsUsed array; required extensions are listed in the extensionsRequired array. A best practice for extensions is to allow safe fallback consumption in tools that do not recognize an extension in the extensionsUsed array. All KHR extensions are designed this way.

The compilers of this resource have not attempted to determine the degree to which the individual extensions are used or supported in tools. Comments welcome.

Production phase A final-state format used for delivery to a web browser or other viewing software or device.
Relationship to other formats
    Subtype of glTF_family, GL Transmission Format (glTF) Family
    Other VRM, VRM
    Contains JSON, JavaScript Object Notation
    Equivalent to Binary glTF, with extension .glb, not described separately on this website.

Local use Explanation of format description terms

LC experience or existing holdings See glTF_family.
LC preference See glTF_family.

Sustainability factors Explanation of format description terms


Khronos is an industry consortium focused on cooperatively creating open API standards for graphics, compute, and vision acceleration that are available for royalty-free use. See glTF_family for more information about the Khronos Group.

    Documentation The glTF v 2.0 specification is available on github.

glTF 2.0 has been rapidly adopted by a large number of applications related to 3D content. Several sections of the glTF Overview from Khronos illustrate adoption: a graphic illustrating the position of glTF in an ecosystem of applications; a collection of logos for major adopters, and an extensive list of tools and applications that can import or export the format

According to Sketchfab is now the largest online repository of glTF files from August 2017, "glTF is quickly becoming the standard file transfer format for 3D, AR and VR assets." Sketchfab introduced support for glTF in December 2016. WorldViz added support for glTF to some of its products in August 2018 and posted an announcement titled glTF is a Huge Deal for VR + AR. Here's Why We're Embracing It. IKEA describes its use of glTF in its catalog in IKEA & 3D. Another repository of 3D content is TurboSquid, which announced TurboSquid adds glTF to supported formats for its StemCell initiative in July 2018.

Updates on glTF from Mozilla, Adobe, Facebook, Google & Microsoft at GDC 2019 describes contributions to and use of glTF from major software developers. In 2016, Microsoft introduced "3D for everyone" and the Paint 3D product. By 2019, 3D models could be inserted into documents created in Word, Powerpoint, and Excel from Microsoft. Mozilla has introduced Hubs, where you can "share a virtual room with friends." Facebook now supports 3D posts and 3D photos. Another major software vendor using glTF is Esri, whose CityEngine 2019.0 supports glTF for import and export, including glTF 2.0 and Binary glTF.

In October 2018, Khronos and the Open Geospatial Consortium (OGC) announced a collaboration. The two organizations will work jointly to develop use cases and requirements for open geospatial standards concerning 3D, VR and AR APIs, and related graphical representations. For example, the OGC specification for 3D Tiles incorporates glTF 2.0 as a normative reference. See 3D Tiles Specification 1.0 (November 2018).

The Smithsonian is using glTF, as indicated in 3D Scanning the Past at the Smithsonian. In Task: ConvertMesh, the Smithsonian indicates that it uses FBX2glTF to create glTFfiles in its workflow for 3D digitization, with optional use of Draco compression. Also using glTF to illustrate its efforts is NASA, for example, with this Hubble Space Telescope 3D Model

    Licensing and patents See glTF_family.
Transparency See glTF_family.
Self-documentation See glTF_family.
External dependencies See glTF_family.
Technical protection considerations See glTF_family.

Quality and functionality factors Explanation of format description terms

3D Model Geometry See glTF_family.
3D Model Appearance See glTF_family. glTF 2.0 introduced support for Physically Based Rendering (PBR) as an option for defining surface characteristics. The PBR model included in the core specification is the "metallic-roughness material model."
3D Model Scene See glTF_family.
3D Model Animation See glTF_family. glTF 2.0 introduced support for animation using instantiated Morph Targets. Starting with version 2.0, glTF supports the definition of morph targets for meshes. A morph target stores displacements or differences for certain mesh attributes. At runtime, these differences may be added to the original mesh, with different weights, in order to animate parts of the mesh. This is often used in character animations, for example, to encode different facial expressions of a virtual character.

File type signifiers and format identifiers Explanation of format description terms

Tag Value Note
Filename extension gltf
For the JSON-formatted file with the full scene description. See specification and IANA registration.
Internet Media Type model/gltf+json
For the JSON-formatted file with the full scene description. See specification and IANA registration.
Pronom PUID Not found.  Comments welcome.  As of June 2019, there is no PRONOM entry for glTF 2.0.
Wikidata Title ID Not found.  Comments welcome.  As of June 2019, there is no Wikidata entry specifically for glTF 2.0.
Tag Value Note
Filename extension glb
For Binary glTF. See specification and IANA registration.
Internet Media Type model/gltf-binary
For Binary glTF. See specification and IANA registration.
Magic numbers ASCII: glTF
HEX: 0x46546C67
For Binary glTF. See specification and IANA registration.

Notes Explanation of format description terms


See glTF_family.

History Version 2.0 of glTF was officially released in June 2017, after a period of beta testing.

Format specifications Explanation of format description terms

Useful references


Last Updated: 05/18/2023