(registered 2016-07-01, last updated 2016-07-01) Name: Uli Klumpp Email: iana&uliklumpp.com Media type name: model Media subtype name: gltf+json Required parameters: None Optional parameters: None Encoding considerations: binary RFC 7159 §8.1 describes JSON encoding considerations Security considerations: The glTF 1.0 standard does not itself use active or executable content. However, it does allow inclusion of GLSL shaders via URL references, which supports loops and branching but has no directives for modifying files or other external resources. glTF also uses URLs to reference JPEG, PNG, BMP, and GIF images, and thus inherits the security considerations for these formats. glTF is not targeted towards applications that inherently require security assurance. While it is conceivable that glTF is used for storage of sensitive information, if it is used this access control, privacy, and integrity protections must be provided externally. glTF is targeted to the WebGL ecosystem, which has provable security in its browser-based sandbox concept for graphics API calls. See RFC 7159 §12 for JSON-specific security considerations. Interoperability considerations: glTF documents are designed to provide interoperability between content creation and processing tools, and visualization applications, primarily in a WebGL environment. glTF documents can be validated by the published JSON schema. Published specification: Specification released by the Khronos Group (alongside OpenGL, WebGL, OpenCL, COLLADA, etc.): https://www.khronos.org/gltf Overview: https://github.com/KhronosGroup/glTF/blob/master/specification/README.md Schema for validation: https://github.com/KhronosGroup/glTF/tree/master/specification/schema Applications which use this media: Several graphics oriented web applications, frameworks or libraries have adopted glTF as a supported file format: * Cesium - An open-source JavaScript library for world-class 3D globes and maps * Three.js - A library that makes WebGL - 3D in the browser - easy to use. While a simple cube in raw WebGL would turn out hundreds of lines of JavaScript and shader code, a Three.js equivalent is only a fraction of that. * Babylon.js - An open source 3D engine based on WebGL and JavaScript, initiated by Microsoft. * Montage Studio was founded with the vision of a true web-native universal SDK, a framework, and authoring combined as one creative, collaborative environment where web designers and developers would work seamlessly together, from start to finish, to deliver rich applications, made with HTML5, across billions of devices. There are converters from COLLADA and FBX, so exports from DCC tools such as 3ds Max, Maya, Modo, Poser and Blender can easily be converted to glTF. Blender is working on native support for glTF export. Fragment identifier considerations: See RFC 6901 §6 for JSON fragment identifier rules Restrictions on usage: N/A Provisional registration? (standards tree only): N/A Additional information: 1. Deprecated alias names for this type: N/A 2. Magic number(s): None 3. File extension(s): gltf 4. Macintosh file type code: N/A 5. Object Identifiers: N/A General Comments: N/A Person to contact for further information: 1. Name: Uli Klumpp 2. Email: iana&uliklumpp.com Intended usage: Common glTF 1.0 (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 by applications using WebGL and OpenGL-family APIs to unpack and use those assets. glTF defines a common publishing format for 3D content tools and services that streamlines authoring workflows and enables interoperable use of content across the industry. Author/Change controller: The Khronos Group (https://www.khronos.org)