├── .github
└── workflows
│ ├── CI.yml
│ └── reuse.yml
├── .gitignore
├── .reuse
└── dep5
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.adoc
├── COPYING.adoc
├── LICENSE.adoc
├── LICENSES
├── Apache-2.0.txt
├── CC-BY-4.0.txt
├── LicenseRef-KhronosSpecCopyright.txt
└── LicenseRef-TBD.txt
├── README.md
├── extensions
├── 0.8
│ ├── Khronos
│ │ └── .gitkeep
│ └── Vendor
│ │ └── CESIUM_binary_glTF
│ │ ├── BenchData
│ │ ├── 100kTris
│ │ │ └── 100kTris.dae
│ │ ├── BinaryTree
│ │ │ └── BinaryTree.dae
│ │ ├── Cesium_Air
│ │ │ ├── 0_Cesium_Air.png
│ │ │ ├── 1_Cesium_Air_Prop.png
│ │ │ └── Cesium_Air.dae
│ │ ├── LargeTex
│ │ │ ├── LargeTex.dae
│ │ │ └── lightmap.png
│ │ ├── README.md
│ │ ├── SpinningTree
│ │ │ └── SpinningTree.dae
│ │ ├── TenTex
│ │ │ ├── TenTex.dae
│ │ │ ├── lightmap.001.png
│ │ │ ├── lightmap.002.png
│ │ │ ├── lightmap.003.png
│ │ │ ├── lightmap.004.png
│ │ │ ├── lightmap.005.png
│ │ │ ├── lightmap.006.png
│ │ │ ├── lightmap.007.png
│ │ │ ├── lightmap.008.png
│ │ │ ├── lightmap.009.png
│ │ │ └── lightmap.png
│ │ └── thumb
│ │ │ ├── 100kTris.jpg
│ │ │ ├── 1200_12th.jpg
│ │ │ ├── BinaryTree.jpg
│ │ │ ├── Cesium_Air.jpg
│ │ │ ├── EauClaire.jpg
│ │ │ ├── LargeTex.jpg
│ │ │ ├── SpinningTree.jpg
│ │ │ └── TenTex.jpg
│ │ ├── Figures.pptx
│ │ ├── README.md
│ │ └── layout.png
├── 1.0
│ ├── Khronos
│ │ ├── KHR_binary_glTF
│ │ │ ├── BenchData
│ │ │ │ ├── 100kTris
│ │ │ │ │ └── 100kTris.dae
│ │ │ │ ├── BinaryTree
│ │ │ │ │ └── BinaryTree.dae
│ │ │ │ ├── Cesium_Air
│ │ │ │ │ ├── 0_Cesium_Air.png
│ │ │ │ │ ├── 1_Cesium_Air_Prop.png
│ │ │ │ │ └── Cesium_Air.dae
│ │ │ │ ├── LargeTex
│ │ │ │ │ ├── LargeTex.dae
│ │ │ │ │ └── lightmap.png
│ │ │ │ ├── README.md
│ │ │ │ ├── SpinningTree
│ │ │ │ │ └── SpinningTree.dae
│ │ │ │ ├── TenTex
│ │ │ │ │ ├── TenTex.dae
│ │ │ │ │ ├── lightmap.001.png
│ │ │ │ │ ├── lightmap.002.png
│ │ │ │ │ ├── lightmap.003.png
│ │ │ │ │ ├── lightmap.004.png
│ │ │ │ │ ├── lightmap.005.png
│ │ │ │ │ ├── lightmap.006.png
│ │ │ │ │ ├── lightmap.007.png
│ │ │ │ │ ├── lightmap.008.png
│ │ │ │ │ ├── lightmap.009.png
│ │ │ │ │ └── lightmap.png
│ │ │ │ └── thumb
│ │ │ │ │ ├── 100kTris.jpg
│ │ │ │ │ ├── 1200_12th.jpg
│ │ │ │ │ ├── BinaryTree.jpg
│ │ │ │ │ ├── Cesium_Air.jpg
│ │ │ │ │ ├── EauClaire.jpg
│ │ │ │ │ ├── LargeTex.jpg
│ │ │ │ │ ├── SpinningTree.jpg
│ │ │ │ │ └── TenTex.jpg
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── Figures.pptx
│ │ │ │ └── layout.png
│ │ │ └── schema
│ │ │ │ ├── image.KHR_binary_glTF.schema.json
│ │ │ │ └── shader.KHR_binary_glTF.schema.json
│ │ └── KHR_materials_common
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ ├── examples
│ │ │ └── lights.json
│ │ │ ├── glTF.KHR_materials_common.schema.json
│ │ │ ├── light.ambient.schema.json
│ │ │ ├── light.directional.schema.json
│ │ │ ├── light.point.schema.json
│ │ │ ├── light.schema.json
│ │ │ ├── light.spot.schema.json
│ │ │ └── node.KHR_materials_common.schema.json
│ └── Vendor
│ │ ├── CESIUM_RTC
│ │ ├── CESIUM_RTC.schema.json
│ │ └── README.md
│ │ └── WEB3D_quantized_attributes
│ │ ├── README.md
│ │ └── schema
│ │ └── WEB3D_quantized_attributes.accessor.schema.json
├── 2.0
│ ├── Archived
│ │ ├── KHR_materials_pbrSpecularGlossiness
│ │ │ ├── README.md
│ │ │ ├── examples
│ │ │ │ ├── LICENSE.md
│ │ │ │ ├── README.md
│ │ │ │ ├── convert-between-workflows-bjs
│ │ │ │ │ ├── images
│ │ │ │ │ │ └── countrySpecularHDR.dds
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── js
│ │ │ │ │ │ ├── babylon.colorExtensions.js
│ │ │ │ │ │ ├── babylon.pbrUtilities.js
│ │ │ │ │ │ └── dat.gui.min.js
│ │ │ │ └── convert-between-workflows
│ │ │ │ │ ├── images
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_NX.png
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_NY.png
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_NZ.png
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_PX.png
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_PY.png
│ │ │ │ │ ├── Uffizi_Gallery_Irradiance_PZ.png
│ │ │ │ │ ├── Uffizi_Gallery_Radiance_NX.png
│ │ │ │ │ ├── Uffizi_Gallery_Radiance_NY.png
│ │ │ │ │ ├── Uffizi_Gallery_Radiance_NZ.png
│ │ │ │ │ ├── Uffizi_Gallery_Radiance_PX.png
│ │ │ │ │ ├── Uffizi_Gallery_Radiance_PY.png
│ │ │ │ │ └── Uffizi_Gallery_Radiance_PZ.png
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── js
│ │ │ │ │ ├── dat.gui.min.js
│ │ │ │ │ ├── three.colorExtensions.js
│ │ │ │ │ ├── three.min.js
│ │ │ │ │ └── three.pbrUtilities.js
│ │ │ ├── figures
│ │ │ │ └── specular-glossiness material.png
│ │ │ └── schema
│ │ │ │ └── glTF.KHR_materials_pbrSpecularGlossiness.schema.json
│ │ ├── KHR_techniques_webgl
│ │ │ ├── README.md
│ │ │ ├── examples
│ │ │ │ └── sample_techniques.gltf
│ │ │ └── schema
│ │ │ │ ├── glTF.KHR_techniques_webgl.schema.json
│ │ │ │ ├── material.KHR_techniques_webgl.schema.json
│ │ │ │ ├── program.schema.json
│ │ │ │ ├── shader.schema.json
│ │ │ │ ├── technique.attribute.schema.json
│ │ │ │ ├── technique.schema.json
│ │ │ │ ├── technique.uniform.schema.json
│ │ │ │ └── uniform.value.schema.json
│ │ └── KHR_xmp
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ ├── examples
│ │ │ ├── MODEL_ROUNDED_CUBE_PART_1
│ │ │ │ ├── indices.bin
│ │ │ │ ├── normals.bin
│ │ │ │ └── positions.bin
│ │ │ └── xmp.gltf
│ │ │ ├── glTF.KHR_xmp.schema.json
│ │ │ └── node.KHR_xmp.schema.json
│ ├── Khronos
│ │ ├── KHR_animation_pointer
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── animation.channel.target.KHR_animation_pointer.schema.json
│ │ ├── KHR_draco_mesh_compression
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ └── structure.png
│ │ │ └── schema
│ │ │ │ └── mesh.primitive.KHR_draco_mesh_compression.schema.json
│ │ ├── KHR_lights_punctual
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ ├── examples
│ │ │ │ ├── MODEL_ROUNDED_CUBE_PART_1
│ │ │ │ │ ├── indices.bin
│ │ │ │ │ ├── normals.bin
│ │ │ │ │ └── positions.bin
│ │ │ │ └── lights.gltf
│ │ │ │ ├── glTF.KHR_lights_punctual.schema.json
│ │ │ │ ├── light.schema.json
│ │ │ │ ├── light.spot.schema.json
│ │ │ │ └── node.KHR_lights_punctual.schema.json
│ │ ├── KHR_materials_anisotropy
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_anisotropy.schema.json
│ │ ├── KHR_materials_clearcoat
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_clearcoat.schema.json
│ │ ├── KHR_materials_diffuse_transmission
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── attenuation_dt_0.0.jpg
│ │ │ │ ├── attenuation_dt_0.5.jpg
│ │ │ │ ├── attenuation_dt_1.0.jpg
│ │ │ │ ├── bsdf.jpg
│ │ │ │ ├── bsdf.svg
│ │ │ │ ├── candle_0.0.jpg
│ │ │ │ ├── candle_0.25.jpg
│ │ │ │ ├── candle_0.5.jpg
│ │ │ │ ├── color_0.0.jpg
│ │ │ │ ├── color_0.25.jpg
│ │ │ │ ├── color_0.5.jpg
│ │ │ │ ├── color_0.75.jpg
│ │ │ │ ├── color_1.0.jpg
│ │ │ │ ├── color_tex_0.0.jpg
│ │ │ │ ├── color_tex_0.25.jpg
│ │ │ │ ├── color_tex_0.5.jpg
│ │ │ │ ├── color_tex_0.75.jpg
│ │ │ │ ├── color_tex_1.0.jpg
│ │ │ │ ├── dt_transmission_0.0.jpg
│ │ │ │ ├── dt_transmission_0.25.jpg
│ │ │ │ ├── dt_transmission_0.5.jpg
│ │ │ │ ├── dt_transmission_0.75.jpg
│ │ │ │ ├── dt_transmission_1.0.jpg
│ │ │ │ ├── factor_0.0.jpg
│ │ │ │ ├── factor_0.25.jpg
│ │ │ │ ├── factor_0.5.jpg
│ │ │ │ ├── factor_0.75.jpg
│ │ │ │ ├── factor_1.0.jpg
│ │ │ │ ├── factor_tex.jpg
│ │ │ │ ├── factor_tex_inlay.jpg
│ │ │ │ ├── leaves.jpg
│ │ │ │ ├── translucent-roughness.png
│ │ │ │ ├── transmission-translucency_thin.jpg
│ │ │ │ ├── transmission-translucency_thin_angle.jpg
│ │ │ │ └── transmissive-roughness.png
│ │ │ └── schema
│ │ │ │ └── glTF.KHR_materials_diffuse_transmission.schema.json
│ │ ├── KHR_materials_dispersion
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── Dispersion.jpg
│ │ │ │ ├── Dispersion_AdobeStager.jpg
│ │ │ │ └── Dispersion_BabylonJS.jpg
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_dispersion.schema.json
│ │ ├── KHR_materials_emissive_strength
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_emissive_strength.schema.json
│ │ ├── KHR_materials_ior
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_ior.schema.json
│ │ ├── KHR_materials_iridescence
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── interference.png
│ │ │ │ ├── ior-comparison.png
│ │ │ │ └── thickness-comparison.png
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_iridescence.schema.json
│ │ ├── KHR_materials_sheen
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ └── cushion.png
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_sheen.schema.json
│ │ ├── KHR_materials_specular
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── specular-color-2.png
│ │ │ │ ├── specular-color-refraction-2.png
│ │ │ │ ├── specular-color-refraction.png
│ │ │ │ ├── specular-color-thin-2.png
│ │ │ │ ├── specular-color-thin.png
│ │ │ │ ├── specular-color.png
│ │ │ │ ├── specular-refraction.png
│ │ │ │ ├── specular-thin.png
│ │ │ │ └── specular.png
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_specular.schema.json
│ │ ├── KHR_materials_transmission
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── ConstantTransmission.png
│ │ │ │ ├── Multi-layer Transparency.png
│ │ │ │ ├── Nodes.dot
│ │ │ │ ├── Nodes.png
│ │ │ │ ├── OpacityComparison.png
│ │ │ │ ├── Roughness.png
│ │ │ │ ├── Screen Shot 2019-10-25 at 3.40.21 PM.png
│ │ │ │ ├── TransmissionTexture.png
│ │ │ │ └── TransmissionWithMask.png
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_transmission.schema.json
│ │ ├── KHR_materials_unlit
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_unlit.schema.json
│ │ ├── KHR_materials_variants
│ │ │ ├── README.md
│ │ │ ├── schema
│ │ │ │ ├── glTF.KHR_materials_variants.schema.json
│ │ │ │ └── mesh.primitive.KHR_materials_variants.schema.json
│ │ │ └── sneakers.png
│ │ ├── KHR_materials_volume
│ │ │ ├── README.md
│ │ │ ├── figures
│ │ │ │ ├── base-color-absorption.png
│ │ │ │ ├── ior.png
│ │ │ │ ├── refraction-absorption.svg
│ │ │ │ ├── thin-thick-rendering.png
│ │ │ │ ├── thin-thick.svg
│ │ │ │ └── transmissive-roughness.png
│ │ │ └── schema
│ │ │ │ └── material.KHR_materials_volume.schema.json
│ │ ├── KHR_mesh_quantization
│ │ │ └── README.md
│ │ ├── KHR_texture_basisu
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── texture.KHR_texture_basisu.schema.json
│ │ ├── KHR_texture_transform
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ │ └── textureInfo.KHR_texture_transform.schema.json
│ │ └── KHR_xmp_json_ld
│ │ │ ├── README.md
│ │ │ └── schema
│ │ │ ├── KHR_xmp_json_ld.schema.json
│ │ │ └── glTF.KHR_xmp_json_ld.schema.json
│ └── Vendor
│ │ ├── .gitkeep
│ │ ├── ADOBE_materials_clearcoat_specular
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.ADOBE_materials_clearcoat_specular.schema.json
│ │ ├── ADOBE_materials_clearcoat_tint
│ │ ├── README.md
│ │ └── schema
│ │ │ └── material.ADOBE_materials_clearcoat_tint.schema.json
│ │ ├── ADOBE_materials_thin_transparency
│ │ ├── README.md
│ │ ├── figures
│ │ │ ├── coverage_and_transparency.png
│ │ │ ├── coverage_vs_transparency.png
│ │ │ ├── ior.png
│ │ │ ├── surface_roughness_babylon.png
│ │ │ ├── surface_roughness_dimension.png
│ │ │ └── surface_tint.png
│ │ └── schema
│ │ │ └── glTF.ADOBE_materials_thin_transparency.schema.json
│ │ ├── AGI_articulations
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── articulation.schema.json
│ │ │ ├── articulation.stage.schema.json
│ │ │ ├── gltf.AGI_articulations.schema.json
│ │ │ └── node.AGI_articulations.schema.json
│ │ ├── AGI_stk_metadata
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── gltf.AGI_stk_metadata.schema.json
│ │ │ ├── node.AGI_stk_metadata.schema.json
│ │ │ └── solarPanelGroup.schema.json
│ │ ├── CESIUM_primitive_outline
│ │ ├── README.md
│ │ ├── figures
│ │ │ ├── depth-fighting.png
│ │ │ └── with-extension.png
│ │ └── schema
│ │ │ └── primitive.CESIUM_primitive_outline.schema.json
│ │ ├── EXT_lights_ies
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── glTF.EXT_lights_ies.schema.json
│ │ │ ├── lightProfile.schema.json
│ │ │ └── node.EXT_lights_ies.schema.json
│ │ ├── EXT_lights_image_based
│ │ ├── README.md
│ │ ├── figures
│ │ │ └── Cube_map.svg
│ │ └── schema
│ │ │ ├── glTF.EXT_lights_image_based.schema.json
│ │ │ ├── light.schema.json
│ │ │ └── scene.EXT_lights_image_based.schema.json
│ │ ├── EXT_mesh_gpu_instancing
│ │ ├── README.md
│ │ ├── samples
│ │ │ ├── teapots_galore
│ │ │ │ ├── mesh.bin
│ │ │ │ ├── mesh_2.bin
│ │ │ │ ├── teapots_galore.gltf
│ │ │ │ └── transforms.bin
│ │ │ └── teapots_galore_id
│ │ │ │ ├── mesh.bin
│ │ │ │ ├── mesh_2.bin
│ │ │ │ ├── teapots_galore_id.gltf
│ │ │ │ └── transforms.bin
│ │ └── schema
│ │ │ └── glTF.EXT_mesh_gpu_instancing.schema.json
│ │ ├── EXT_mesh_manifold
│ │ ├── README.md
│ │ ├── samples
│ │ │ └── manifold
│ │ │ │ ├── manifold.bin
│ │ │ │ ├── manifold.gltf
│ │ │ │ ├── moon.jpg
│ │ │ │ └── space.jpg
│ │ └── schema
│ │ │ └── mesh.EXT_mesh_manifold.schema.json
│ │ ├── EXT_meshopt_compression
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── buffer.EXT_meshopt_compression.schema.json
│ │ │ └── bufferView.EXT_meshopt_compression.schema.json
│ │ ├── EXT_texture_webp
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.EXT_texture_webp.schema.json
│ │ ├── FB_geometry_metadata
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── scene.FB_geometry_metadata.schema.json
│ │ │ └── sceneBounds.schema.json
│ │ ├── GODOT_single_root
│ │ └── README.md
│ │ ├── GRIFFEL_bim_data
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── GRIFFEL_bim_data.schema.json
│ │ │ ├── glTF.GRIFFEL_bim_data.schema.json
│ │ │ └── node.GRIFFEL_bim_data.schema.json
│ │ ├── MPEG_accessor_timed
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_accessor_timed.schema.json
│ │ ├── MPEG_animation_timing
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_animation_timing.schema.json
│ │ ├── MPEG_audio_spatial
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── MPEG_audio_spatial.listener.schema.json
│ │ │ ├── MPEG_audio_spatial.reverb.property.schema.json
│ │ │ ├── MPEG_audio_spatial.reverb.schema.json
│ │ │ ├── MPEG_audio_spatial.schema.json
│ │ │ └── MPEG_audio_spatial.source.schema.json
│ │ ├── MPEG_buffer_circular
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_buffer_circular.schema.json
│ │ ├── MPEG_media
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── MPEG_media.media.alternative.schema.json
│ │ │ ├── MPEG_media.media.alternative.track.schema.json
│ │ │ ├── MPEG_media.media.schema.json
│ │ │ └── MPEG_media.schema.json
│ │ ├── MPEG_mesh_linking
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_mesh_linking.schema.json
│ │ ├── MPEG_scene_dynamic
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_scene_dynamic.schema.json
│ │ ├── MPEG_texture_video
│ │ ├── README.md
│ │ └── schema
│ │ │ └── MPEG_texture_video.schema.json
│ │ ├── MPEG_viewport_recommended
│ │ ├── README.md
│ │ └── schema
│ │ │ ├── MPEG_viewport_recommended.schema.json
│ │ │ └── MPEG_viewport_recommended.viewport.schema.json
│ │ ├── MSFT_lod
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.MSFT_lod.schema.json
│ │ ├── MSFT_packing_normalRoughnessMetallic
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.MSFT_packing_normalRoughnessMetallic.schema.json
│ │ ├── MSFT_packing_occlusionRoughnessMetallic
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.MSFT_packing_occlusionRoughnessMetallic.schema.json
│ │ ├── MSFT_texture_dds
│ │ ├── README.md
│ │ └── schema
│ │ │ └── glTF.MSFT_texture_dds.schema.json
│ │ └── NV_materials_mdl
│ │ ├── README.md
│ │ └── schema
│ │ ├── bsdfMeasurement.schema.json
│ │ ├── functionCall.argument.schema.json
│ │ ├── functionCall.schema.json
│ │ ├── functionCall.type.schema.json
│ │ ├── glTF.NV_materials_mdl.schema.json
│ │ ├── material.NV_materials_mdl.schema.json
│ │ └── module.schema.json
├── Prefixes.md
├── README.md
└── Template.md
└── specification
├── 1.0
├── README.md
├── figures
│ ├── dictionary-objects.png
│ ├── files.png
│ ├── gltfOverview-0.2.0-small.png
│ ├── gltfOverview-0.2.0.png
│ └── pptx
│ │ └── figures.pptx
└── schema
│ ├── accessor.schema.json
│ ├── animation.channel.schema.json
│ ├── animation.channel.target.schema.json
│ ├── animation.parameter.schema.json
│ ├── animation.sampler.schema.json
│ ├── animation.schema.json
│ ├── arrayValues.schema.json
│ ├── asset.profile.schema.json
│ ├── asset.schema.json
│ ├── buffer.schema.json
│ ├── bufferView.schema.json
│ ├── camera.orthographic.schema.json
│ ├── camera.perspective.schema.json
│ ├── camera.schema.json
│ ├── examples
│ ├── accessors.json
│ ├── animations.json
│ ├── asset.json
│ ├── bufferViews.json
│ ├── buffers.json
│ ├── cameras.json
│ ├── extensions.json
│ ├── images.json
│ ├── materials.json
│ ├── meshes.json
│ ├── nodes.json
│ ├── programs.json
│ ├── samplers.json
│ ├── scenes.json
│ ├── shaders.json
│ ├── skins.json
│ ├── techniques.json
│ └── textures.json
│ ├── extension.schema.json
│ ├── extras.schema.json
│ ├── glTF.schema.json
│ ├── glTFChildOfRootProperty.schema.json
│ ├── glTFProperty.schema.json
│ ├── glTFid.schema.json
│ ├── image.schema.json
│ ├── material.schema.json
│ ├── material.values.schema.json
│ ├── mesh.primitive.attribute.schema.json
│ ├── mesh.primitive.schema.json
│ ├── mesh.schema.json
│ ├── node.schema.json
│ ├── program.schema.json
│ ├── sampler.schema.json
│ ├── scene.schema.json
│ ├── shader.schema.json
│ ├── skin.schema.json
│ ├── technique.attribute.schema.json
│ ├── technique.parameters.schema.json
│ ├── technique.schema.json
│ ├── technique.states.functions.schema.json
│ ├── technique.states.schema.json
│ ├── technique.uniform.schema.json
│ └── texture.schema.json
├── 2.0
├── Makefile
├── ObjectModel.adoc
├── README.md
├── Specification.adoc
├── docinfo.html
├── figures
│ ├── coordinate-system.png
│ ├── figures.pptx
│ ├── glb2.svg
│ ├── gltfOverview-2.0.0d-small.png
│ ├── gltfOverview-2.0.0d.png
│ ├── materials.svg
│ ├── objects.svg
│ ├── padding-mat2-1byte.svg
│ ├── padding-mat3-1byte.svg
│ ├── padding-mat3-2byte.svg
│ ├── pbr.dot
│ ├── pbr.svg
│ └── texcoords.svg
├── khronos.css
└── schema
│ ├── accessor.schema.json
│ ├── accessor.sparse.indices.schema.json
│ ├── accessor.sparse.schema.json
│ ├── accessor.sparse.values.schema.json
│ ├── animation.channel.schema.json
│ ├── animation.channel.target.schema.json
│ ├── animation.sampler.schema.json
│ ├── animation.schema.json
│ ├── asset.schema.json
│ ├── buffer.schema.json
│ ├── bufferView.schema.json
│ ├── camera.orthographic.schema.json
│ ├── camera.perspective.schema.json
│ ├── camera.schema.json
│ ├── extension.schema.json
│ ├── extras.schema.json
│ ├── glTF.schema.json
│ ├── glTFChildOfRootProperty.schema.json
│ ├── glTFProperty.schema.json
│ ├── glTFid.schema.json
│ ├── image.schema.json
│ ├── material.normalTextureInfo.schema.json
│ ├── material.occlusionTextureInfo.schema.json
│ ├── material.pbrMetallicRoughness.schema.json
│ ├── material.schema.json
│ ├── mesh.primitive.schema.json
│ ├── mesh.schema.json
│ ├── node.schema.json
│ ├── sampler.schema.json
│ ├── scene.schema.json
│ ├── skin.schema.json
│ ├── texture.schema.json
│ └── textureInfo.schema.json
├── README.md
└── figures
└── glTF_RGB_June16.svg
/.github/workflows/CI.yml:
--------------------------------------------------------------------------------
1 | # Copyright 2020-2021 The Khronos Group Inc.
2 | # SPDX-License-Identifier: Apache-2.0
3 |
4 | # CI to build asciidoctor spec targets
5 |
6 | name: CI
7 |
8 | # Controls when the action will run.
9 | on:
10 | # Triggers the workflow on push or pull request events but only for the default branch
11 | push:
12 |
13 | # Allows you to run this workflow manually from the Actions tab
14 | workflow_dispatch:
15 |
16 | jobs:
17 | build:
18 | # The type of runner that the job will run on
19 | runs-on: ubuntu-latest
20 |
21 | # Use Khronos container with asciidoctor toolchain preinstalled
22 | container: khronosgroup/docker-images:asciidoctor-spec
23 |
24 | steps:
25 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
26 | - uses: actions/checkout@v4
27 |
28 | # Build spec targets
29 | - name: spec-generate
30 | run: |
31 | cd specification/2.0
32 | make Specification.html Specification.pdf
33 |
34 | - name: Archive generated files
35 | uses: actions/upload-artifact@v4
36 | with:
37 | name: spec-outputs
38 | path: |
39 | specification/2.0/Specification.html
40 | specification/2.0/Specification.pdf
41 |
--------------------------------------------------------------------------------
/.github/workflows/reuse.yml:
--------------------------------------------------------------------------------
1 | # Copyright 2022 The Khronos Group Inc.
2 | #
3 | # SPDX-License-Identifier: Apache-2.0
4 |
5 | name: REUSE Compliance
6 |
7 | on: [push, pull_request]
8 |
9 | jobs:
10 | test:
11 | runs-on: ubuntu-latest
12 | steps:
13 | - uses: actions/checkout@v3
14 | - name: REUSE Compliance Check
15 | uses: fsfe/reuse-action@v1.1.1
16 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Copyright 2012-2021 The Khronos Group Inc.
2 | # SPDX-License-Identifier: Apache-2.0
3 |
4 | *.dir
5 | *.suo
6 | *.vcxproj*
7 | *.nupkg
8 | specification/.project
9 | .DS_Store
10 | specification/2.0/PropertiesReference.adoc
11 | specification/2.0/JsonSchemaReference.adoc
12 | specification/2.0/Specification.html
13 | specification/2.0/Specification.pdf
14 |
--------------------------------------------------------------------------------
/.reuse/dep5:
--------------------------------------------------------------------------------
1 | Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
2 | Upstream-Name: glTF
3 | Source: https://github.com/KhronosGroup/glTF
4 |
5 | Files: extensions/0.8/Vendor/CESIUM_binary_glTF/*
6 | Copyright: 2012-2021 Cesium GS, Inc.
7 | License: LicenseRef-TBD
8 |
9 | Files: extensions/1.0/Vendor/* extensions/2.0/Vendor/*
10 | Copyright: 2012-2021 Various Authors
11 | License: LicenseRef-TBD
12 |
13 | Files: extensions/1.0/Khronos/* extensions/2.0/Khronos/* extensions/2.0/Archived/*
14 | Copyright: 2012-2021 The Khronos Group Inc.
15 | License: LicenseRef-KhronosSpecCopyright
16 |
17 | Files: specification/1.0/figures/* specification/1.0/schema/*
18 | Copyright: 2012-2021 The Khronos Group Inc.
19 | License: LicenseRef-KhronosSpecCopyright
20 |
21 | Files: specification/2.0/schema/* specification/2.0/figures/* specification/figures/*
22 | Copyright: 2012-2021 The Khronos Group Inc.
23 | License: LicenseRef-KhronosSpecCopyright
24 |
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 |
5 |
6 | A reminder that this issue tracker is managed by the Khronos Group.
7 | Interactions here should follow the Khronos [Code of
8 | Conduct](https://www.khronos.org/developers/code-of-conduct), which
9 | prohibits aggressive or derogatory language. Please keep the discussion
10 | friendly and civil.
11 |
--------------------------------------------------------------------------------
/LICENSE.adoc:
--------------------------------------------------------------------------------
1 | // Copyright 2020-2021 The Khronos Group Inc.
2 | // SPDX-License-Identifier: CC-BY-4.0
3 |
4 | = LICENSE file for the KhronosGroup/glTF project
5 |
6 | Files in this repository fall under one of these licenses:
7 |
8 | * SPDX license identifier: "`Apache-2.0`"
9 | ** Apache License 2.0.
10 | ** For scripts and build tooling.
11 |
12 | * SPDX license identifier: "`CC-BY-4.0`"
13 | ** Creative Commons Attribution 4.0 International
14 | ** For specification source markup documents such as the glTF 2.0 AsciiDoc
15 | sources. The glTF 2.0 specification HTML and PDF *outputs* built from
16 | these sources are ratified and published in the
17 | link:https://www.khronos.org/registry/glTF[Khronos glTF Registry].
18 | ** Also for miscellaneous metadocumentation such as this LICENSE file.
19 |
20 | * SPDX license identifier: "`LicenseRef-KhronosSpecCopyright`"
21 | ** Khronos Specification Copyright.
22 | ** For Markdown format specification files such as glTF 1.0 and Khronos
23 | extensions, which are ratified by the Khronos Board of Promoters in
24 | this form.
25 |
26 | * SPDX license identifier: "`LicenseRef-TBD"
27 | ** To Be Determined copyright - exact copyright holder and license terms
28 | currently unknown.
29 | ** Only for vendor extensions to glTF. We are working on determining full
30 | details of these licenses in each case.
31 |
32 | Full license text of these licenses is available at:
33 |
34 | * Apache-2.0: https://opensource.org/licenses/Apache-2.0
35 | * CC-BY-4.0: https://creativecommons.org/licenses/by/4.0/legalcode
36 | * LicenseRef-KhronosSpecCopyright: link:LICENSES/LicenseRef-KhronosSpecCopyright.txt
37 | * LicenseRef-TBD: link:LICENSES/LicenseRef-TBD.txt
38 |
--------------------------------------------------------------------------------
/LICENSES/LicenseRef-TBD.txt:
--------------------------------------------------------------------------------
1 | To Be Determined License for glTF Vendor Extensions
2 |
3 | Copyright 2013-2021 Various Authors
4 |
5 | The TBD license is currently used as a placeholder for files that are part
6 | of vendor extensions with currently unknown copyright terms. Until we can
7 | reach clarification, it can be assumed that all such files are copyright by
8 | the vendor responsible for that extension, under terms defined by them but
9 | allowing Khronos to reproduce on our websites and repositories.
10 |
--------------------------------------------------------------------------------
/extensions/0.8/Khronos/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Khronos/.gitkeep
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/Cesium_Air/0_Cesium_Air.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/Cesium_Air/0_Cesium_Air.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/Cesium_Air/1_Cesium_Air_Prop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/Cesium_Air/1_Cesium_Air_Prop.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/LargeTex/lightmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/LargeTex/lightmap.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.001.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.002.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.002.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.003.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.003.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.004.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.004.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.005.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.006.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.006.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.007.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.007.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.008.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.008.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.009.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.009.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/TenTex/lightmap.png
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/100kTris.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/100kTris.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/1200_12th.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/1200_12th.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/BinaryTree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/BinaryTree.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/Cesium_Air.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/Cesium_Air.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/EauClaire.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/EauClaire.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/LargeTex.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/LargeTex.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/SpinningTree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/SpinningTree.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/TenTex.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/BenchData/thumb/TenTex.jpg
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/Figures.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/Figures.pptx
--------------------------------------------------------------------------------
/extensions/0.8/Vendor/CESIUM_binary_glTF/layout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/0.8/Vendor/CESIUM_binary_glTF/layout.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/Cesium_Air/0_Cesium_Air.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/Cesium_Air/0_Cesium_Air.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/Cesium_Air/1_Cesium_Air_Prop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/Cesium_Air/1_Cesium_Air_Prop.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/LargeTex/lightmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/LargeTex/lightmap.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.001.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.001.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.002.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.002.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.003.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.003.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.004.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.004.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.005.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.006.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.006.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.007.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.007.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.008.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.008.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.009.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.009.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/TenTex/lightmap.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/100kTris.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/100kTris.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/1200_12th.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/1200_12th.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/BinaryTree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/BinaryTree.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/Cesium_Air.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/Cesium_Air.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/EauClaire.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/EauClaire.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/LargeTex.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/LargeTex.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/SpinningTree.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/SpinningTree.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/TenTex.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/BenchData/thumb/TenTex.jpg
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/figures/Figures.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/figures/Figures.pptx
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/figures/layout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/1.0/Khronos/KHR_binary_glTF/figures/layout.png
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/schema/image.KHR_binary_glTF.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_binary_glTF image extension",
4 | "type" : "object",
5 | "properties" : {
6 | "bufferView" : {
7 | "type" : "string",
8 | "description" : "The id (JSON property name) of the buffer-view that references the image. Use this instead of the image's uri property.",
9 | "minLength" : 1
10 | },
11 | "mimeType" : {
12 | "type" : "string",
13 | "description" : "The image's MIME type.",
14 | "minLength" : 1
15 | },
16 | "width" : {
17 | "type" : "integer",
18 | "description" : "The width of the image in pixels.",
19 | "minimum" : 0
20 | },
21 | "height" : {
22 | "type" : "integer",
23 | "description" : "The height of the image in pixels.",
24 | "minimum" : 0
25 | }
26 | },
27 | "additionalProperties" : false,
28 | "required" : ["bufferView", "mimeType", "width", "height"]
29 | }
30 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_binary_glTF/schema/shader.KHR_binary_glTF.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_binary_glTF shader extension",
4 | "type" : "object",
5 | "properties" : {
6 | "bufferView" : {
7 | "type" : "string",
8 | "description" : "The id (JSON property name) of the buffer-view that references the shader source. Use this instead of the shader's uri property.",
9 | "minLength" : 1
10 | }
11 | },
12 | "additionalProperties" : false,
13 | "required" : ["bufferView"]
14 | }
15 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/glTF.KHR_materials_common.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_materials_common glTF extension",
4 | "type" : "object",
5 | "properties" : {
6 | "lights" : {
7 | "properties" : {
8 | },
9 | "additionalProperties" : {
10 | "$ref" : "light.schema.json"
11 | },
12 | "default" : {}
13 | }
14 | },
15 | "additionalProperties" : false
16 | }
17 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/light.ambient.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "light/ambient",
4 | "type" : "object",
5 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "color" : {
8 | "type" : "array",
9 | "description" : "RGB color of the light source.",
10 | "items" : {
11 | "type": "number",
12 | "minimum" : 0.0,
13 | "maximum" : 1.0
14 | },
15 | "minItems" : 3,
16 | "maxItems" : 3,
17 | "default" : [1.0, 1.0, 1.0],
18 | "gltf_detailedDescription" : "RGB color of the light source. Each element is floating-point between 0.0 and 1.0. Element 0 corresponds to R, 1 to G, and 2 to B."
19 | }
20 | },
21 | "additionalProperties" : false
22 | }
23 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/light.directional.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "light/directional",
4 | "type" : "object",
5 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "color" : {
8 | "type" : "array",
9 | "description" : "RGB color of the light source.",
10 | "items" : {
11 | "type": "number",
12 | "minimum" : 0.0,
13 | "maximum" : 1.0
14 | },
15 | "minItems" : 3,
16 | "maxItems" : 3,
17 | "default" : [1.0, 1.0, 1.0],
18 | "gltf_detailedDescription" : "RGB color of the light source. Each element is floating-point between 0.0 and 1.0. Element 0 corresponds to R, 1 to G, and 2 to B."
19 | }
20 | },
21 | "additionalProperties" : false
22 | }
23 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/light.point.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "light/point",
4 | "type" : "object",
5 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "color" : {
8 | "type" : "array",
9 | "description" : "RGB color of the light source.",
10 | "items" : {
11 | "type": "number",
12 | "minimum" : 0.0,
13 | "maximum" : 1.0
14 | },
15 | "minItems" : 3,
16 | "maxItems" : 3,
17 | "default" : [1.0, 1.0, 1.0],
18 | "gltf_detailedDescription" : "RGB color of the light source. Each element is floating-point between 0.0 and 1.0. Element 0 corresponds to R, 1 to G, and 2 to B."
19 | },
20 | "constantAttenuation" : {
21 | "type" : "number",
22 | "description" : "Constant attenuation factor.",
23 | "default" : 1.0
24 | },
25 | "linearAttenuation" : {
26 | "type" : "number",
27 | "description" : "Linear attenuation factor.",
28 | "default" : 0.0
29 | },
30 | "quadraticAttenuation" : {
31 | "type" : "number",
32 | "description" : "Quadratic attenuation factor.",
33 | "default" : 0.0
34 | }
35 | },
36 | "additionalProperties" : false
37 | }
38 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/light.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "light",
4 | "type" : "object",
5 | "description" : "An ambient, directional, point, or spot light.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "ambient" : {
9 | "allOf" : [ { "$ref" : "light.ambient.schema.json" } ],
10 | "description" : "Ambient light source."
11 | },
12 | "directional" : {
13 | "allOf" : [ { "$ref" : "light.directional.schema.json" } ],
14 | "description" : "Directional light source."
15 | },
16 | "point" : {
17 | "allOf" : [ { "$ref" : "light.point.schema.json" } ],
18 | "description" : "Point light source."
19 | },
20 | "spot" : {
21 | "allOf" : [ { "$ref" : "light.spot.schema.json" } ],
22 | "description" : "Spot light source."
23 | },
24 | "type" : {
25 | "type" : "string",
26 | "description" : "Specifies the light type.",
27 | "enum" : ["ambient", "directional", "point", "spot"]
28 | }
29 | },
30 | "additionalProperties" : false,
31 | "required" : ["type"]
32 | }
33 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/light.spot.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "light/spot",
4 | "type" : "object",
5 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "color" : {
8 | "type" : "array",
9 | "description" : "RGB color of the light source.",
10 | "items" : {
11 | "type": "number",
12 | "minimum" : 0.0,
13 | "maximum" : 1.0
14 | },
15 | "minItems" : 3,
16 | "maxItems" : 3,
17 | "default" : [1.0, 1.0, 1.0],
18 | "gltf_detailedDescription" : "RGB color of the light source. Each element is floating-point between 0.0 and 1.0. Element 0 corresponds to R, 1 to G, and 2 to B."
19 | },
20 | "constantAttenuation" : {
21 | "type" : "number",
22 | "description" : "Constant attenuation factor.",
23 | "default" : 1.0
24 | },
25 | "fallOffAngle" : {
26 | "type" : "number",
27 | "description" : "Fall off angle in radians.",
28 | "default" : 3.14159265
29 | },
30 | "fallOffExponent" : {
31 | "type" : "number",
32 | "description" : "Fall off exponent.",
33 | "default" : 0.0
34 | },
35 | "linearAttenuation" : {
36 | "type" : "number",
37 | "description" : "Linear attenuation factor.",
38 | "default" : 0.0
39 | },
40 | "quadraticAttenuation" : {
41 | "type" : "number",
42 | "description" : "Quadratic attenuation factor.",
43 | "default" : 0.0
44 | }
45 | },
46 | "additionalProperties" : false
47 | }
48 |
--------------------------------------------------------------------------------
/extensions/1.0/Khronos/KHR_materials_common/schema/node.KHR_materials_common.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_materials_common node extension",
4 | "type" : "object",
5 | "properties" : {
6 | "light" : {
7 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
8 | "description" : "The id of the light referenced by this node."
9 | }
10 | },
11 | "additionalProperties" : false
12 | }
13 |
--------------------------------------------------------------------------------
/extensions/1.0/Vendor/CESIUM_RTC/CESIUM_RTC.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "CESIUM_RTC",
4 | "type" : "object",
5 | "description" : "glTF CESIUM_RTC extension.",
6 | "properties" : {
7 | "center" : {
8 | "type" : "array",
9 | "description" : "Center that vertex positions are relative to.",
10 | "items" : {
11 | "type" : "number"
12 | },
13 | "minItems" : 3,
14 | "maxItems" : 3
15 | }
16 | },
17 | "additionalProperties" : false,
18 | "required" : ["center"]
19 | }
20 |
--------------------------------------------------------------------------------
/extensions/1.0/Vendor/WEB3D_quantized_attributes/schema/WEB3D_quantized_attributes.accessor.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "WEB3D_quantized_attributes accessor extension",
4 | "type" : "object",
5 | "properties" : {
6 | "decodeMatrix" : {
7 | "type" : "array",
8 | "description" : "A homogenous floating-point transformation matrix stored in column-major order. This matrix is used to decode the compressed, quantized data of this accessor.",
9 | "items" : {
10 | "type": "number"
11 | },
12 | "minItems" : 4,
13 | "maxItems" : 25
14 | },
15 | "decodedMax" : {
16 | "type" : "array",
17 | "description" : "Maximum decoded value of each component in this attribute.",
18 | "items" : {
19 | "type" : "number"
20 | },
21 | "minItems" : 1,
22 | "maxItems" : 4
23 | },
24 | "decodedMin" : {
25 | "type" : "array",
26 | "description" : "Minimum decoded value of each component in this attribute.",
27 | "items" : {
28 | "type" : "number"
29 | },
30 | "minItems" : 1,
31 | "maxItems" : 4
32 | }
33 | },
34 | "additionalProperties" : false,
35 | "required" : ["decodeMatrix", "decodedMax", "decodedMin"]
36 | }
37 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/LICENSE.md:
--------------------------------------------------------------------------------
1 | The MIT License
2 |
3 | Copyright (c) 2016-2017 Gary Hsu
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6 |
7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8 |
9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
10 |
11 | # Third-Party Code
12 |
13 | ## dat.gui
14 |
15 | https://github.com/dataarts/dat.gui
16 |
17 | ## Babylon.js
18 |
19 | https://github.com/BabylonJS/Babylon.js/blob/master/license.md
20 |
21 | ## three.js
22 |
23 | https://github.com/mrdoob/three.js/blob/master/LICENSE
24 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/README.md:
--------------------------------------------------------------------------------
1 | ## Conversion between metallic-roughness and specular-glossiness workflows
2 |
3 | [BabylonJS](./convert-between-workflows-bjs)
4 |
5 | [WebGL and threeJS](./convert-between-workflows)
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows-bjs/images/countrySpecularHDR.dds:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows-bjs/images/countrySpecularHDR.dds
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows-bjs/js/babylon.colorExtensions.js:
--------------------------------------------------------------------------------
1 | BABYLON.Color3.prototype.clamp = function (min, max) {
2 | if (!min) min = 0;
3 | if (!max) max = 1;
4 | this.r = BABYLON.Scalar.Clamp(this.r, min, max);
5 | this.g = BABYLON.Scalar.Clamp(this.g, min, max);
6 | this.b = BABYLON.Scalar.Clamp(this.b, min, max);
7 | return this;
8 | }
9 |
10 | BABYLON.Color3.prototype.getPerceivedBrightness = function () {
11 | return Math.sqrt(0.299 * this.r * this.r + 0.587 * this.g * this.g + 0.114 * this.b * this.b);
12 | }
13 |
14 | BABYLON.Color3.prototype.getMaxComponent = function () {
15 | return Math.max(this.r, this.g, this.b);
16 | }
17 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NX.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NX.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NY.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NY.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NZ.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_NZ.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PX.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PX.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PY.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PY.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PZ.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Irradiance_PZ.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NX.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NX.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NY.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NY.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NZ.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_NZ.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PX.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PX.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PY.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PY.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PZ.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/images/Uffizi_Gallery_Radiance_PZ.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/examples/convert-between-workflows/js/three.colorExtensions.js:
--------------------------------------------------------------------------------
1 | THREE.Color.prototype.clamp = function (min, max) {
2 | if (!min) min = 0;
3 | if (!max) max = 1;
4 | this.r = THREE.Math.clamp(this.r, min, max);
5 | this.g = THREE.Math.clamp(this.g, min, max);
6 | this.b = THREE.Math.clamp(this.b, min, max);
7 | return this;
8 | }
9 |
10 | THREE.Color.prototype.getPerceivedBrightness = function () {
11 | return Math.sqrt(0.299 * this.r * this.r + 0.587 * this.g * this.g + 0.114 * this.b * this.b);
12 | }
13 |
14 | THREE.Color.prototype.getMaxComponent = function() {
15 | return Math.max(this.r, this.g, this.b);
16 | }
17 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/figures/specular-glossiness material.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/figures/specular-glossiness material.png
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/glTF.KHR_techniques_webgl.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_techniques_webgl glTF extension",
4 | "type" : "object",
5 | "description": "Instances of shading techniques with external shader programs along with their parameterized values. Shading techniques describe data types and semantics for GLSL vertex and fragment shader programs.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "programs" : {
9 | "type" : "array",
10 | "description" : "An array of `Program` objects.",
11 | "items" : {
12 | "$ref" : "program.schema.json"
13 | },
14 | "minItems": 1
15 | },
16 | "shaders" : {
17 | "type" : "array",
18 | "description" : "An array of `Shader` objects.",
19 | "items" : {
20 | "$ref" : "shader.schema.json"
21 | },
22 | "minItems": 1
23 | },
24 | "techniques" : {
25 | "type" : "array",
26 | "description" : "An array of `Technique` objects.",
27 | "items" : {
28 | "$ref" : "technique.schema.json"
29 | },
30 | "minItems": 1,
31 | "gltf_detailedDescription" : "An array of `Technique` objects. A technique is a template for a material appearance."
32 | },
33 | "extensions" : {},
34 | "extras" : {}
35 | },
36 | "required" : ["programs", "shaders", "techniques"]
37 | }
38 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/material.KHR_techniques_webgl.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_techniques_webgl material extension",
4 | "type" : "object",
5 | "description" : "The technique to use for a material and any additional uniform values.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "technique" : {
9 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
10 | "description" : "The index of the technique."
11 | },
12 | "values" : {
13 | "type" : "object",
14 | "description" : "Dictionary object of uniform values.",
15 | "properties" : {},
16 | "additionalProperties" : {
17 | "$ref" : "uniform.value.schema.json"
18 | },
19 | "default" : {},
20 | "gltf_detailedDescription" : "Dictionary object of uniform values. Uniforms with the same name as the technique's uniform must conform to the referenced `type` and `count` (if present) properties, and override the technique's uniform value. A uniform value must be supplied here if not present in the technique uniforms."
21 | },
22 | "extensions" : {},
23 | "extras" : {}
24 | },
25 | "required" : ["technique"]
26 | }
27 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/program.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Program",
4 | "type" : "object",
5 | "description" : "A shader program, including its vertex and fragment shaders.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "fragmentShader" : {
9 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
10 | "description" : "The index of the fragment shader."
11 | },
12 | "vertexShader" : {
13 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
14 | "description" : "The index of the vertex shader."
15 | },
16 | "glExtensions" : {
17 | "type" : "array",
18 | "description" : "The names of required WebGL 1.0 extensions.",
19 | "items" : {
20 | "type" : "string",
21 | "minLength" : 1,
22 | "maxLength" : 256
23 | },
24 | "minItems": 1,
25 | "gltf_webgl" : "`getExtension()`"
26 | },
27 | "name" : {},
28 | "extensions" : {},
29 | "extras" : {}
30 | },
31 | "required": ["fragmentShader", "vertexShader"],
32 | "gltf_webgl" : "`attachShader()`, `bindAttribLocation()`, `createProgram()`, `deleteProgram()`, `getProgramParameter()`, `getProgramInfoLog()`, `linkProgram()`, `useProgram()`, and `validateProgram()`"
33 | }
34 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/shader.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Shader",
4 | "type" : "object",
5 | "description" : "A vertex or fragment shader. Exactly one of `uri` or `bufferView` must be provided for the GLSL source.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "uri" : {
9 | "type" : "string",
10 | "description" : "The uri of the GLSL source.",
11 | "format" : "uriref",
12 | "gltf_detailedDescription" : "The uri of the GLSL source. Relative paths are relative to the `.gltf` file. Instead of referencing an external file, the uri can also be a data-uri.",
13 | "gltf_uriType" : "text"
14 | },
15 | "type" : {
16 | "type" : "integer",
17 | "description" : "The shader stage.",
18 | "enum" : [35632, 35633],
19 | "gltf_enumNames" : ["FRAGMENT_SHADER", "VERTEX_SHADER"],
20 | "gltf_detailedDescription" : "The shader stage. All valid values correspond to WebGL enums."
21 | },
22 | "bufferView" : {
23 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
24 | "description" : "The index of the bufferView that contains the GLSL shader source. Use this instead of the shader's uri property."
25 | },
26 | "name" : {},
27 | "extensions" : {},
28 | "extras" : {}
29 | },
30 | "required" : ["type"],
31 | "oneOf": [
32 | { "required": [ "uri" ] },
33 | { "required": [ "bufferView" ] }
34 | ],
35 | "gltf_webgl" : "`createShader()`, `deleteShader()`, `shaderSource()`, `compileShader()`, `getShaderParameter()`, and `getShaderInfoLog()`"
36 | }
37 |
38 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/technique.attribute.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Attribute",
4 | "type" : "object",
5 | "description" : "An attribute input to a technique and the corresponding semantic.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "semantic" : {
9 | "type" : "string",
10 | "description" : "Identifies a mesh attribute semantic.",
11 | "gltf_detailedDescription" : "Identifies a mesh attribute semantic. Attribute semantics include `\"POSITION\"`, `\"NORMAL\"`, `\"TEXCOORD\"`, `\"COLOR\"`, `\"JOINT\"`, and `\"WEIGHT\"`. `\"TEXCOORD\"` and `\"COLOR\"` attribute semantic property names must be of the form `[semantic]_[set_index]`, e.g., `\"TEXCOORD_0\"`, `\"TEXCOORD_1\"`, `\"COLOR_1\"`, etc. For forward-compatibility, application-specific semantics must start with an underscore, e.g., `\"_SIMULATION_TIME\"`."
12 | },
13 | "extensions" : {},
14 | "extras" : {}
15 | },
16 | "required" : ["semantic"]
17 | }
18 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/technique.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Technique",
4 | "type" : "object",
5 | "description" : "A template for material appearances.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "program" : {
9 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
10 | "description" : "The index of the program."
11 | },
12 | "attributes" : {
13 | "type" : "object",
14 | "description" : "A dictionary object of `Attribute` objects.",
15 | "properties" : {},
16 | "additionalProperties" : {
17 | "$ref" : "technique.attribute.schema.json"
18 | },
19 | "gltf_detailedDescription" : "A dictionary object of `Attribute` objects. Each object defines an attribute input with a type and a semantic."
20 | },
21 | "uniforms" : {
22 | "type" : "object",
23 | "description" : "A dictionary object of `Uniform` objects.",
24 | "properties" : {},
25 | "additionalProperties" : {
26 | "$ref" : "technique.uniform.schema.json"
27 | },
28 | "gltf_detailedDescription" : "A dictionary object of `Uniform` objects. Each object defines a uniform input with a type and an optional semantic and value."
29 | },
30 | "name" : {},
31 | "extensions" : {},
32 | "extras" : {}
33 | },
34 | "required" : ["program"]
35 | }
36 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_techniques_webgl/schema/uniform.value.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Uniform Value",
4 | "oneOf" : [
5 | {
6 | "type": ["number", "boolean"]
7 | },
8 | {
9 | "type" : "array",
10 | "items": {
11 | "type": ["number"]
12 |
13 | },
14 | "minItems": 1
15 | },
16 | {
17 | "type" : "array",
18 | "items": {
19 | "type": ["boolean"]
20 |
21 | },
22 | "minItems": 1
23 | },
24 | {
25 | "$ref" : "textureInfo.schema.json"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/indices.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/indices.bin
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/normals.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/normals.bin
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/positions.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Archived/KHR_xmp/schema/examples/MODEL_ROUNDED_CUBE_PART_1/positions.bin
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_xmp/schema/glTF.KHR_xmp.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_xmp glTF extension",
4 | "type": "object",
5 | "description": "Metadata about the glTF asset.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "@context" : {
9 | "type": "object",
10 | "additionalProperties": true,
11 | "description": "Dictionary mapping XMP namespace names to the URI where they are defined"
12 | },
13 | "packets" : {
14 | "type" : "array",
15 | "items": {
16 | "type": "object",
17 | "additionalProperties": true,
18 | "description": "Dictionary of XMP metadata properties. Property names take the form `xmp_namespace_name:property_name`"
19 | },
20 | "minItems": 1
21 | },
22 | "extensions": { },
23 | "extras": { }
24 | },
25 | "required": ["packets", "@context"]
26 | }
27 |
--------------------------------------------------------------------------------
/extensions/2.0/Archived/KHR_xmp/schema/node.KHR_xmp.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_xmp node extension",
4 | "type": "object",
5 | "description": "References an XMP packet listed in `KHR_xmp glTF extension`",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "packet": {
9 | "allOf": [
10 | {
11 | "$ref": "glTFid.schema.json"
12 | }
13 | ],
14 | "description": "The id of the XMP packet referenced by this node."
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | },
19 | "required": ["packet"]
20 | }
21 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_animation_pointer/schema/animation.channel.target.KHR_animation_pointer.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "title": "KHR_animation_pointer glTF Animation Channel Target Extension",
4 | "type": "object",
5 | "description": "Extension object providing the JSON Pointer to the animated property.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "pointer": {
9 | "type": "string",
10 | "format": "json-pointer",
11 | "description": "JSON pointer to the animated property. The animation channel path value **MUST** be `pointer`."
12 | },
13 | "extensions": { },
14 | "extras": { }
15 | },
16 | "required": [ "pointer" ]
17 | }
18 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_draco_mesh_compression/figures/structure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_draco_mesh_compression/figures/structure.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_draco_mesh_compression/schema/mesh.primitive.KHR_draco_mesh_compression.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_draco_mesh_compression glTF Mesh Primitive Extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "bufferView": {
8 | "allOf": [ { "$ref" : "glTFid.schema.json" } ],
9 | "description": "The index of the bufferView."
10 | },
11 | "attributes": {
12 | "type": "object",
13 | "minProperties": 1,
14 | "additionalProperties": {
15 | "$ref": "glTFid.schema.json"
16 | },
17 | "description": "A dictionary object, where each key corresponds to an attribute and its unique attribute id stored in the compressed geometry."
18 | },
19 | "extensions": { },
20 | "extras": { }
21 | },
22 | "required": [ "bufferView", "attributes" ]
23 | }
24 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/indices.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/indices.bin
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/normals.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/normals.bin
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/positions.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_lights_punctual/schema/examples/MODEL_ROUNDED_CUBE_PART_1/positions.bin
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/glTF.KHR_lights_punctual.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_lights_punctual glTF Document Extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "lights": {
8 | "type": "array",
9 | "items": {
10 | "type": "object",
11 | "$ref": "light.schema.json"
12 | },
13 | "minItems": 1
14 | },
15 | "extensions": { },
16 | "extras": { }
17 | },
18 | "required": [
19 | "lights"
20 | ]
21 | }
22 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/light.spot.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "KHR_lights_punctual Light Spot Properties",
4 | "type" : "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "innerConeAngle" : {
8 | "type" : "number",
9 | "description" : "Angle in radians from centre of spotlight where falloff begins.",
10 | "default" : 0.0,
11 | "minimum": 0,
12 | "maximum": 1.5707963267948966,
13 | "exclusiveMaximum": true
14 | },
15 | "outerConeAngle" : {
16 | "type" : "number",
17 | "description" : "Angle in radians from centre of spotlight where falloff ends.",
18 | "default" : 0.7853981633974483,
19 | "minimum": 0,
20 | "maximum": 1.5707963267948966,
21 | "exclusiveMinimum": true
22 | },
23 | "extensions": { },
24 | "extras": { }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_lights_punctual/schema/node.KHR_lights_punctual.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_lights_punctual glTF Node Extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "light": {
8 | "allOf": [
9 | {
10 | "$ref": "glTFid.schema.json"
11 | }
12 | ],
13 | "description": "The id of the light referenced by this node."
14 | },
15 | "extensions": { },
16 | "extras": { }
17 | },
18 | "required": [
19 | "light"
20 | ]
21 | }
22 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_anisotropy/schema/material.KHR_materials_anisotropy.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_anisotropy glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines anisotropy.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "anisotropyStrength": {
9 | "type": "number",
10 | "description": "The anisotropy strength.",
11 | "default": 0.0,
12 | "minimum": 0.0,
13 | "maximum": 1.0,
14 | "gltf_detailedDescription": "The anisotropy strength. When the anisotropy texture is present, this value is multiplied by the texture's blue channel."
15 | },
16 | "anisotropyRotation": {
17 | "type": "number",
18 | "description": "The rotation of the anisotropy.",
19 | "default": 0.0,
20 | "gltf_detailedDescription": "The rotation of the anisotropy in tangent, bitangent space, measured in radians counter-clockwise from the tangent. When the anisotropy texture is present, this value provides additional rotation to the vectors in the texture."
21 | },
22 | "anisotropyTexture": {
23 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
24 | "description": "The anisotropy texture.",
25 | "gltf_detailedDescription": "The anisotropy texture. Red and green channels represent the anisotropy direction in $[-1, 1]$ tangent, bitangent space, to be rotated by the anisotropy rotation. The blue channel contains strength as $[0, 1]$ to be multiplied by the anisotropy strength."
26 | },
27 | "extensions": { },
28 | "extras": { }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_1.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/attenuation_dt_1.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/bsdf.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/bsdf.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.25.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/candle_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.25.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_0.75.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_1.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_1.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.25.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_0.75.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_1.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/color_tex_1.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.25.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_0.75.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_1.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/dt_transmission_1.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.25.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.25.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.5.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.75.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_0.75.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_1.0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_1.0.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_tex.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_tex.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_tex_inlay.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/factor_tex_inlay.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/leaves.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/leaves.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/translucent-roughness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/translucent-roughness.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmission-translucency_thin.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmission-translucency_thin.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmission-translucency_thin_angle.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmission-translucency_thin_angle.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmissive-roughness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_diffuse_transmission/figures/transmissive-roughness.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion_AdobeStager.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion_AdobeStager.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion_BabylonJS.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_dispersion/figures/Dispersion_BabylonJS.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_dispersion/schema/material.KHR_materials_dispersion.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_dispersion glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the strength of dispersion.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "dispersion": {
9 | "type": "number",
10 | "description": "This parameter defines dispersion in terms of the 20/Abbe number formulation.",
11 | "default": 0.0,
12 | "minimum": 0.0,
13 | "gltf_detailedDescription": "This parameter defines dispersion in terms of the 20/Abbe number formulation."
14 | },
15 | "extensions": { },
16 | "extras": { }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_emissive_strength/schema/material.KHR_materials_emissive_strength.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_emissive_strength glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that adjusts the strength of emissive material properties.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "emissiveStrength": {
9 | "type": "number",
10 | "description": "The strength adjustment to be multiplied with the material's emissive value.",
11 | "default": 1.0,
12 | "minimum": 0.0
13 | },
14 | "extensions": { },
15 | "extras": { }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_ior/schema/material.KHR_materials_ior.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_ior glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the index of refraction of a material.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "ior": {
9 | "type": "number",
10 | "description": "The index of refraction.",
11 | "default": 1.5,
12 | "oneOf": [
13 | {
14 | "minimum": 0.0,
15 | "maximum": 0.0
16 | },
17 | {
18 | "minimum": 1.0
19 | }
20 | ],
21 | "gltf_detailedDescription": "The index of refraction (IOR) is a measured physical number usually in the range between 1 and 2 that determines how much the path of light is bent, or refracted, when entering a material. It also influences the ratio between reflected and transmitted light, calculated from the Fresnel equations."
22 | },
23 | "extensions": { },
24 | "extras": { }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_iridescence/figures/interference.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_iridescence/figures/interference.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_iridescence/figures/ior-comparison.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_iridescence/figures/ior-comparison.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_iridescence/figures/thickness-comparison.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_iridescence/figures/thickness-comparison.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_sheen/figures/cushion.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_sheen/figures/cushion.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-2.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-refraction-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-refraction-2.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-refraction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-refraction.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-thin-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-thin-2.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-thin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color-thin.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-color.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-refraction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-refraction.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-thin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular-thin.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_specular/figures/specular.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_specular/figures/specular.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/ConstantTransmission.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/ConstantTransmission.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/Multi-layer Transparency.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/Multi-layer Transparency.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/Nodes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/Nodes.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/OpacityComparison.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/OpacityComparison.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/Roughness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/Roughness.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/Screen Shot 2019-10-25 at 3.40.21 PM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/Screen Shot 2019-10-25 at 3.40.21 PM.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/TransmissionTexture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/TransmissionTexture.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/figures/TransmissionWithMask.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_transmission/figures/TransmissionWithMask.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_transmission/schema/material.KHR_materials_transmission.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_transmission glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the optical transmission of a material.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "transmissionFactor": {
9 | "type": "number",
10 | "description": "The base percentage of light transmitted through the surface.",
11 | "default": 0.0,
12 | "minimum": 0.0,
13 | "maximum": 1.0,
14 | "gltf_detailedDescription": "The base percentage of non-specularly reflected light that is transmitted through the surface. i.e. of the light that penetrates a surface (isn't specularly reflected), this is the percentage that is transmitted and not diffusely re-emitted."
15 | },
16 | "transmissionTexture": {
17 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
18 | "description": "A texture that defines the transmission percentage of the surface, sampled from the R channel. These values are linear, and will be multiplied by transmissionFactor.",
19 | "gltf_detailedDescription": "A texture that defines the transmission percentage of the surface, sampled from the R channel. These values are linear, and will be multiplied by transmissionFactor. This indicates the percentage of non-specularly reflected light that is transmitted through the surface. i.e. of the light that penetrates a surface (isn't specularly reflected), this is the percentage is transmitted and not diffusely re-emitted."
20 | },
21 | "extensions": { },
22 | "extras": { }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_unlit/schema/material.KHR_materials_unlit.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_unlit glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the unlit material model.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "extensions": { },
9 | "extras": { }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_variants/schema/glTF.KHR_materials_variants.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_materials_variants glTF Document Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines a material variations for mesh primitives",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "variants": {
9 | "type": "array",
10 | "items": {
11 | "type": "object",
12 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
13 | "description": "An object defining a valid material variant",
14 | "gltf_detailedDescription": "An object defining a valid material variant",
15 | "properties": {
16 | "name": {
17 | "type": "string",
18 | "description": "The name of the material variant",
19 | "gltf_detailedDescription": "The name of the material variant."
20 | },
21 | "extras": { },
22 | "extensions": { }
23 | },
24 | "required": [ "name" ]
25 | },
26 | "minItems": 1
27 | },
28 | "extensions": { },
29 | "extras": { }
30 | },
31 | "required": [ "variants" ]
32 | }
33 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_variants/sneakers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_variants/sneakers.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_volume/figures/base-color-absorption.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_volume/figures/base-color-absorption.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_volume/figures/ior.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_volume/figures/ior.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_volume/figures/thin-thick-rendering.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_volume/figures/thin-thick-rendering.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_materials_volume/figures/transmissive-roughness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Khronos/KHR_materials_volume/figures/transmissive-roughness.png
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_texture_basisu/schema/texture.KHR_texture_basisu.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_texture_basisu glTF Texture Extension",
4 | "type": "object",
5 | "description": "glTF extension to specify textures using the KTX v2 images with Basis Universal supercompression.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "source": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "The index of the image which points to a KTX v2 resource with Basis Universal supercompression."
11 | },
12 | "extensions": {},
13 | "extras": {}
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_texture_transform/schema/textureInfo.KHR_texture_transform.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_texture_transform glTF TextureInfo Extension",
4 | "type": "object",
5 | "description": "glTF extension that enables shifting and scaling UV coordinates on a per-texture basis",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "offset": {
9 | "type": "array",
10 | "description": "The offset of the UV coordinate origin as a factor of the texture dimensions.",
11 | "items": {
12 | "type": "number"
13 | },
14 | "minItems": 2,
15 | "maxItems": 2,
16 | "default": [ 0.0, 0.0 ]
17 | },
18 | "rotation": {
19 | "type": "number",
20 | "description": "Rotate the UVs by this many radians counter-clockwise around the origin.",
21 | "default": 0.0
22 | },
23 | "scale": {
24 | "type": "array",
25 | "description": "The scale factor applied to the components of the UV coordinates.",
26 | "items": {
27 | "type": "number"
28 | },
29 | "minItems": 2,
30 | "maxItems": 2,
31 | "default": [ 1.0, 1.0 ]
32 | },
33 | "texCoord": {
34 | "type": "integer",
35 | "description": "Overrides the textureInfo texCoord value if supplied, and if this extension is supported.",
36 | "minimum": 0
37 | },
38 | "extensions": { },
39 | "extras": { }
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_xmp_json_ld/schema/KHR_xmp_json_ld.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_xmp_json_ld glTF Extension",
4 | "type": "object",
5 | "description": "References an XMP packet listed in `KHR_xmp_json_ld glTF extension`",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "packet": {
9 | "allOf": [
10 | {
11 | "$ref": "glTFid.schema.json"
12 | }
13 | ],
14 | "description": "The id of the XMP packet referenced."
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | },
19 | "required": ["packet"]
20 | }
21 |
--------------------------------------------------------------------------------
/extensions/2.0/Khronos/KHR_xmp_json_ld/schema/glTF.KHR_xmp_json_ld.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "KHR_xmp_json_ld glTF Document Extension",
4 | "type": "object",
5 | "description": "Metadata about the glTF asset.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "packets" : {
9 | "type" : "array",
10 | "items": { "$ref": "#/definitions/packet" },
11 | "minItems": 1
12 | },
13 | "extensions": { },
14 | "extras": { }
15 | },
16 | "required": ["packets"],
17 | "definitions": {
18 | "packet": {
19 | "type": "object",
20 | "properties": {
21 | "@context" : {
22 | "type": "object",
23 | "additionalProperties": {
24 | "type": "string"
25 | },
26 | "description": "Dictionary mapping XMP namespace names to the URI where they are defined"
27 | }
28 | },
29 | "additionalProperties": true,
30 | "description": "Dictionary of XMP metadata properties. Property names take the form `xmp_namespace_name:property_name`",
31 | "required": ["@context"]
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/.gitkeep
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_clearcoat_specular/schema/glTF.ADOBE_materials_clearcoat_specular.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "ADOBE_materials_clearcoat_ior glTF extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the colour tint of the clearcoat.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "clearcoatIor": {
9 | "type": "number",
10 | "description": "The clearcoat layer's index of refraction.",
11 | "default": 1.5,
12 | "minimum": 0.0,
13 | "maximum": 1.0,
14 | "gltf_detailedDescription": "The clearcoat layer's index of refraction."
15 | },
16 | "clearcoatSpecularFactor": {
17 | "type": "number",
18 | "description": "The clearcoat layer's specular intensity.",
19 | "default": 1.0,
20 | "minimum": 0.0,
21 | "maximum": 1.0,
22 | "gltf_detailedDescription": "The clearcoat layer's specular intensity."
23 | },
24 | "clearcoatSpecularTexture": {
25 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
26 | "description": "The clearcoat layer specular intensity texture.",
27 | "gltf_detailedDescription": "The clearcoat layer's specular intensity texture. These values are sampled from the B channel."
28 | },
29 | "extensions": { },
30 | "extras": { }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_clearcoat_tint/schema/material.ADOBE_materials_clearcoat_tint.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "ADOBE_materials_clearcoat_tint glTF Material Extension",
4 | "type": "object",
5 | "description": "glTF extension that defines the colour tint of the clearcoat.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "clearcoatTintFactor": {
9 | "type": "array",
10 | "items": {
11 | "type": "number",
12 | "minimum": 0.0,
13 | "maximum": 1.0
14 | },
15 | "description": "The transmittance of the clearcoat layer.",
16 | "default": [ 1.0, 1.0, 1.0 ],
17 | "minItems": 3,
18 | "maxItems": 3,
19 | "gltf_detailedDescription": "The colour of light allowed to be transmitted through the clearcoat layer of the material. A value of black means no light passes through. A value of white means all light passes through. These values are linear."
20 | },
21 | "clearcoatTintTexture": {
22 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
23 | "description": "The clearcoat layer tint texture.",
24 | "gltf_detailedDescription": "The clearcoat layer tint texture. The values are stored in sRGB. Assume white colour if no texture is supplied."
25 | },
26 | "extensions": { },
27 | "extras": { }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/coverage_and_transparency.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/coverage_and_transparency.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/coverage_vs_transparency.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/coverage_vs_transparency.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/ior.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/ior.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_roughness_babylon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_roughness_babylon.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_roughness_dimension.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_roughness_dimension.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_tint.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/ADOBE_materials_thin_transparency/figures/surface_tint.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_articulations/schema/articulation.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "Articulation",
4 | "type": "object",
5 | "description": "A model articulation definition.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "name": {
9 | "type": "string",
10 | "pattern": "^[^\\s]+$",
11 | "description": "The name of this articulation. The articulation name must be unique within this model. Articulation names may not contain spaces.",
12 | "minLength": 1
13 | },
14 | "stages": {
15 | "type": "array",
16 | "description": "An array of stages, each of which defines a degree of freedom of movement.",
17 | "items": {
18 | "$ref": "articulation.stage.schema.json"
19 | },
20 | "minItems": 1
21 | },
22 | "pointingVector": {
23 | "type": "array",
24 | "description": "The local forward vector for the associated node, for the purpose of pointing at a target or other object.",
25 | "items": {
26 | "type": "number"
27 | },
28 | "minItems": 3,
29 | "maxItems": 3
30 | },
31 | "extensions": { },
32 | "extras": { }
33 | },
34 | "required": [ "name", "stages" ]
35 | }
36 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_articulations/schema/gltf.AGI_articulations.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "AGI_articulations glTF extension",
4 | "type": "object",
5 | "description": "glTF Extension that defines metadata for applying external analysis or effects to a model.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "articulations": {
9 | "type": "array",
10 | "description": "An array of articulations.",
11 | "items": {
12 | "$ref": "articulation.schema.json"
13 | },
14 | "minItems": 1,
15 | "gltf_detailedDescription": "An array of articulations. An articulation indicates a named range of motion available to one or more nodes within the model."
16 | },
17 | "extensions": { },
18 | "extras": { }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_articulations/schema/node.AGI_articulations.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "AGI_articulations glTF Node extension",
4 | "type": "object",
5 | "description": "glTF Extension for an individual node in a glTF model, to associate it with the model's root AGI_articulations object.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "isAttachPoint": {
9 | "type": "boolean",
10 | "description": "Set to true to indicate that this node's origin and orientation act as an attach point for external objects, analysis, or effects."
11 | },
12 | "articulationName": {
13 | "type": "string",
14 | "pattern": "^[^\\s]+$",
15 | "description": "The name of an Articulation that applies to this node.",
16 | "gltf_detailedDescription": "The name of an Articulation that applies to this node. Articulations are defined in the glTF root extension. A single articulation may apply to more than one node, and its stage values set the transform for all assigned nodes simultaneously."
17 | },
18 | "extensions": { },
19 | "extras": { }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_stk_metadata/schema/gltf.AGI_stk_metadata.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "AGI_stk_metadata glTF extension",
4 | "type": "object",
5 | "description": "glTF Extension that defines metadata for use with STK (Systems Tool Kit).",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "solarPanelGroups": {
9 | "type": "array",
10 | "description": "An array of solar panel groups.",
11 | "items": {
12 | "$ref": "solarPanelGroup.schema.json"
13 | },
14 | "minItems": 1
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_stk_metadata/schema/node.AGI_stk_metadata.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "AGI_stk_metadata glTF Node extension",
4 | "type": "object",
5 | "description": "glTF Extension for an individual node in a glTF model, to associate it with the model's root AGI_stk_metadata object.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "solarPanelGroupName": {
9 | "type": "string",
10 | "pattern": "^[^\\s]+$",
11 | "description": "The name of a Solar Panel Group that includes this node.",
12 | "gltf_detailedDescription": "The name of a Solar Panel Group that includes this node. Solar Panel Groups are defined in the glTF root extension."
13 | },
14 | "noObscuration": {
15 | "type": "boolean",
16 | "description": "Set to true to indicate that this node's geometry does not obscure any sensors' view in the STK Sensor Obscuration tool."
17 | },
18 | "extensions": { },
19 | "extras": { }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/AGI_stk_metadata/schema/solarPanelGroup.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "Solar Panel Group",
4 | "type": "object",
5 | "description": "A solar panel group definition.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "name": {
9 | "type": "string",
10 | "pattern": "^[^\\s]+$",
11 | "description": "The name of this solar panel group. The group name must be unique within this model, and may not contain spaces.",
12 | "minLength": 1
13 | },
14 | "efficiency": {
15 | "type": "number",
16 | "description": "The percentage, from 0.0 to 100.0, of how efficiently the solar cells convert solar to electrical energy.",
17 | "minimum": 0.0,
18 | "maximum": 100.0
19 | },
20 | "extensions": { },
21 | "extras": { }
22 | },
23 | "required": [ "name", "efficiency" ]
24 | }
25 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/CESIUM_primitive_outline/figures/depth-fighting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/CESIUM_primitive_outline/figures/depth-fighting.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/CESIUM_primitive_outline/figures/with-extension.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/CESIUM_primitive_outline/figures/with-extension.png
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/CESIUM_primitive_outline/schema/primitive.CESIUM_primitive_outline.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "CESIUM_primitive_outline glTF primitive extension",
4 | "type": "object",
5 | "description": "glTF extension for indicating that some edges of a primitive's triangles should be outlined.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "indices": {
9 | "allOf": [ { "$ref" : "glTFid.schema.json" } ],
10 | "description": "The index of the accessor providing the list of highlighted lines at the edge of this primitive's triangles."
11 | },
12 | "extensions": { },
13 | "extras": { }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_lights_ies/schema/glTF.EXT_lights_ies.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_lights_ies glTF extension",
4 | "type": "object",
5 | "description": "glTF extension that enables the use of IES light profiles.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "lights": {
9 | "type": "array",
10 | "items": {
11 | "type": "object",
12 | "$ref": "lightProfile.schema.json"
13 | },
14 | "minItems": 1
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | },
19 | "required": [
20 | "lights"
21 | ]
22 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_lights_ies/schema/lightProfile.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "lightProfile",
4 | "type": "object",
5 | "description": "An IES light profile.",
6 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "uri": {
9 | "type": "string",
10 | "description": "The URI (or IRI) of the light profile.",
11 | "format": "iri-reference",
12 | "gltf_detailedDescription": "The URI (or IRI) of the light profile. Relative paths are relative to the current glTF asset. Instead of referencing an external file, this field **MAY** contain a `data:`-URI. This field **MUST NOT** be defined when `bufferView` is defined."
13 | },
14 | "mimeType": {
15 | "anyOf": [
16 | {
17 | "const": "application/x-ies-lm-63"
18 | },
19 | {
20 | "type": "string"
21 | }
22 | ],
23 | "description": "The light profile's media type. This field **MUST** be defined when `bufferView` is defined."
24 | },
25 | "bufferView": {
26 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
27 | "description": "The index of the bufferView that contains the IES light profile. This field **MUST NOT** be defined when `uri` is defined."
28 | },
29 | "name": { },
30 | "extensions": { },
31 | "extras": { }
32 | },
33 | "dependencies": {
34 | "bufferView": [ "mimeType" ]
35 | },
36 | "oneOf": [
37 | { "required": [ "uri" ] },
38 | { "required": [ "bufferView" ] }
39 | ]
40 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_lights_ies/schema/node.EXT_lights_ies.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_lights_ies node extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "light": {
8 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
9 | "description": "The id of the light profile referenced by this node."
10 | },
11 | "multiplier": {
12 | "type": "number",
13 | "minimum": 0.0,
14 | "default": 1.0,
15 | "description": "Non-negative factor to scale the light's intensity."
16 | },
17 | "color": {
18 | "type": "array",
19 | "items": {
20 | "type": "number",
21 | "minimum": 0.0,
22 | "maximum": 1.0
23 | },
24 | "minItems": 3,
25 | "maxItems": 3,
26 | "default": [ 1.0, 1.0, 1.0 ],
27 | "description": "RGB value for the light's color in linear space."
28 | },
29 | "extensions": { },
30 | "extras": { }
31 | },
32 | "required": [
33 | "light"
34 | ]
35 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_lights_image_based/schema/glTF.EXT_lights_image_based.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_lights_image_based glTF extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "lights": {
8 | "type": "array",
9 | "items": {
10 | "type": "object",
11 | "$ref": "light.schema.json"
12 | },
13 | "minItems": 1
14 | },
15 | "extensions": { },
16 | "extras": { }
17 | },
18 | "required":[
19 | "lights"
20 | ]
21 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_lights_image_based/schema/scene.EXT_lights_image_based.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_lights_imageBased scene extension",
4 | "type": "object",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
6 | "properties": {
7 | "light": {
8 | "allOf": [
9 | {
10 | "$ref": "glTFid.schema.json"
11 | }
12 | ],
13 | "description": "The id of the light referenced by this scene."
14 | },
15 | "extensions": { },
16 | "extras": { }
17 | },
18 | "required":[
19 | "light"
20 | ]
21 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/mesh.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/mesh.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/mesh_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/mesh_2.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/transforms.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore/transforms.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/mesh.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/mesh.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/mesh_2.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/mesh_2.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/transforms.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/samples/teapots_galore_id/transforms.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_gpu_instancing/schema/glTF.EXT_mesh_gpu_instancing.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_mesh_gpu_instancing glTF extension",
4 | "type": "object",
5 | "description": "glTF extension defines instance attributes for a node with a mesh.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "attributes": {
9 | "type": "object",
10 | "description": "A dictionary object, where each key corresponds to instance attribute and each value is the index of the accessor containing attribute's data. Attributes TRANSLATION, ROTATION, SCALE define instance transformation. For \"TRANSLATION\" the values are FLOAT_VEC3's specifying translation along the x, y, and z axes. For \"ROTATION\" the values are VEC4's specifying rotation as a quaternion in the order (x, y, z, w), where w is the scalar, with component type `FLOAT` or normalized integer. For \"SCALE\" the values are FLOAT_VEC3's specifying scaling factors along the x, y, and z axes.",
11 | "minProperties": 1,
12 | "additionalProperties": {
13 | "$ref": "glTFid.schema.json"
14 | }
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/manifold.bin:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/manifold.bin
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/moon.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/moon.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/space.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/extensions/2.0/Vendor/EXT_mesh_manifold/samples/manifold/space.jpg
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_mesh_manifold/schema/mesh.EXT_mesh_manifold.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_mesh_manifold extension",
4 | "type": "object",
5 | "description": "glTF extension defines manifoldness for a mesh.",
6 | "allOf": [
7 | {
8 | "$ref": "glTFProperty.schema.json"
9 | }
10 | ],
11 | "properties": {
12 | "manifoldPrimitive": {
13 | "allOf": [
14 | {
15 | "$ref": "mesh.primitive.schema.json"
16 | }
17 | ]
18 | },
19 | "mergeIndices": {
20 | "allOf": [
21 | {
22 | "$ref": "glTFid.schema.json"
23 | }
24 | ],
25 | "description": "The index of the accessor that contains the vertex sparse indices for merging into a manifold."
26 | },
27 | "mergeValues": {
28 | "allOf": [
29 | {
30 | "$ref": "glTFid.schema.json"
31 | }
32 | ],
33 | "description": "The index of the accessor that contains the vertex sparse values for merging into a manifold."
34 | },
35 | "extensions": {},
36 | "extras": {}
37 | },
38 | "required": [
39 | "manifoldPrimitive"
40 | ]
41 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_meshopt_compression/schema/buffer.EXT_meshopt_compression.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_meshopt_compression buffer extension",
4 | "type": "object",
5 | "description": "Compressed data for bufferView.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "fallback": {
9 | "type": "boolean",
10 | "description": "Set to true to indicate that the buffer is only referenced by bufferViews that have EXT_meshopt_compression extension and as such doesn't need to be loaded.",
11 | "default": false
12 | },
13 | "extensions": { },
14 | "extras": { }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/EXT_texture_webp/schema/glTF.EXT_texture_webp.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "EXT_texture_webp glTF extension",
4 | "type": "object",
5 | "description": "glTF extension to specify textures using the WebP image format.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "source": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "The index of the WebP image."
11 | },
12 | "extensions": {},
13 | "extras": {}
14 | }
15 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/FB_geometry_metadata/schema/scene.FB_geometry_metadata.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "FB_geometry_metadata scene extension",
4 | "type": "object",
5 | "allOf": [
6 | {
7 | "$ref": "glTFProperty.schema.json"
8 | }
9 | ],
10 | "properties": {
11 | "vertexCount": {
12 | "type": "number",
13 | "description": "The number of distinct vertices recursively contained in this scene.",
14 | "default": 0,
15 | "minimum": 0
16 | },
17 | "primitiveCount": {
18 | "type": "number",
19 | "description": "The number of distinct primitives recursively contained in this scene.",
20 | "default": 0,
21 | "minimum": 0
22 | },
23 | "sceneBounds": {
24 | "description": "The bounding box of this scene, in static geometry scene-space coordinates.",
25 | "allOf": [
26 | {
27 | "$ref": "sceneBounds.schema.json"
28 | }
29 | ]
30 | },
31 | "extensions": {},
32 | "extras": {}
33 | }
34 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/FB_geometry_metadata/schema/sceneBounds.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "minimum and maximum bounding box extent",
4 | "type": "object",
5 | "allOf": [
6 | {
7 | "$ref": "glTFProperty.schema.json"
8 | }
9 | ],
10 | "properties": {
11 | "min": {
12 | "type": "array",
13 | "items": {
14 | "type": "number"
15 | },
16 | "description": "The bounding box corner with the numerically lowest scene-space coordinates",
17 | "minItems": 3,
18 | "maxItems": 3
19 | },
20 | "max": {
21 | "type": "array",
22 | "items": {
23 | "type": "number"
24 | },
25 | "description": "The bounding box corner with the numerically highest scene-space coordinates",
26 | "minItems": 3,
27 | "maxItems": 3
28 | },
29 | "extensions": {},
30 | "extras": {}
31 | },
32 | "required": [
33 | "min",
34 | "max"
35 | ]
36 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/GRIFFEL_bim_data/schema/node.GRIFFEL_bim_data.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "GRIFFEL_bim_data Node Extension",
4 | "type": "object",
5 | "description": "References type and instance properties of the node and/or buffer where those properties can be found by node ID.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "bufferView": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "Index of the buffer view which points to the buffer with the data for this node."
11 | },
12 | "properties": {
13 | "type": "array",
14 | "uniqueItems": true,
15 | "items": {
16 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
17 | "description": "Index of a property in the root level collection."
18 | },
19 | "minItems": 1,
20 | "description": "Collection of indices which point to corresponding instance properties of the node. (Instance properties are unique to the node. They override the same type properties.)"
21 | },
22 | "type": {
23 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
24 | "description": "Index of a type in the root level collection. (Type is a set of properties which are common for many nodes.)"
25 | },
26 | "extensions": { },
27 | "extras": { }
28 | },
29 | "anyOf": [
30 | { "required": [ "bufferView" ] },
31 | { "required": [ "properties" ] },
32 | { "required": [ "type" ] }
33 | ]
34 | }
35 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_animation_timing/schema/MPEG_animation_timing.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-07/schema",
3 | "title" : "MPEG_animation_timing",
4 | "type" : "object",
5 | "description": "glTF extension to specify timing information that allow to synchronized animation with media",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties" : {
8 | "accessor": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "Provides a reference to `accessor`",
11 | "gltf_detailedDescription": "Provides a reference to `accessor`, by specifying the accessor's index in accessors array, that describes the buffer where the animation timing data will be made available. The sample format shall be as defined in ISO/IEC 23090-14:7.6.3. The componentType of the referenced accessor shall be `BYTE` and the type shall be `SCALAR`."
12 | },
13 | "extensions": {},
14 | "extras": {}
15 | },
16 | "required": [ "accessor" ]
17 | }
18 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_audio_spatial/schema/MPEG_audio_spatial.listener.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-07/schema",
3 | "title": "MPEG_audio_spatial.listener",
4 | "type": "object",
5 | "description": "",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties": {
8 | "id": {
9 | "description": "A unique identifier",
10 | "gltf_detailedDescription": "A unique identifier of the audio listener in the scene.",
11 | "type": "integer"
12 | },
13 | "extensions": {},
14 | "extras": {}
15 | },
16 | "required": ["id"]
17 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_audio_spatial/schema/MPEG_audio_spatial.reverb.property.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-07/schema",
3 | "title": "MPEG_audio_spatial.reverb.property",
4 | "type": "object",
5 | "description": "",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties": {
8 | "frequency": {
9 | "description": "Frequency for RT60 and DSR values",
10 | "gltf_detailedDescription": "Frequency for the provided RT60 and DSR values.",
11 | "type": "number"
12 | },
13 | "RT60": {
14 | "description": "Specifies RT60 value in `second` for the frequency provided in the `frequency` field",
15 | "gltf_detailedDescription": "Specifies RT60 value in `second` for the frequency provided in the `frequency` field",
16 | "type": "number"
17 | },
18 | "DSR": {
19 | "description": "Specifies Diffuse-to-Source Ratio value in dB for the frequency provided in the `frequency` field.",
20 | "gltf_detailedDescription": "Specifies Diffuse-to-Source Ratio value in dB for the frequency provided in the `frequency` field. For details see ISO/IEC 23090-14:5.4.1.4.",
21 | "type": "number"
22 | },
23 | "extensions": {},
24 | "extras": {}
25 | },
26 | "required": ["frequency", "RT60", "DSR"]
27 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_audio_spatial/schema/MPEG_audio_spatial.reverb.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-07/schema",
3 | "title": "MPEG_audio_spatial.reverb",
4 | "type": "object",
5 | "description": "",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties": {
8 | "id": {
9 | "description": "A unique identifier",
10 | "gltf_detailedDescription": "A unique identifier of the audio reverb unit in the scene.",
11 | "id": "integer"
12 | },
13 | "bypass": {
14 | "description": "Indicates if the reverb unit can be bypassed if the audio renderer does not support it.",
15 | "gltf_detailedDescription": "Indicates if the reverb unit can be bypassed if the audio renderer does not support it.",
16 | "type": "boolean",
17 | "default": true
18 | },
19 | "properties": {
20 | "description": "An array of property items",
21 | "gltf_detailedDescription": "Array of items that contains reverb property objects describing reverb unit specific parameters",
22 | "type": "array",
23 | "items": {
24 | "$ref": "MPEG_audio_spatial.reverb.property.schema.json"
25 | },
26 | "minItems": 1
27 | },
28 | "predelay": {
29 | "description": "Delay of audio source.",
30 | "gltf_detailedDescription": "Delay in seconds from onset of source to onset of late reverberation for which DSR is provided.",
31 | "type": "number",
32 | "default": 0
33 | },
34 | "extensions": {},
35 | "extras": {}
36 | },
37 | "required": ["id", "properties"]
38 | }
39 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_audio_spatial/schema/MPEG_audio_spatial.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-07/schema",
3 | "title" : "MPEG_audio_spatial",
4 | "type" : "object",
5 | "description": "glTF extension to specify spatial audio support",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties" : {
8 | "sources": {
9 | "type": "array",
10 | "items": {
11 | "$ref": "MPEG_audio_spatial.source.schema.json"
12 | },
13 | "description": "An array of audio sources.",
14 | "gltf_detailedDescription": "An array of audio sources.",
15 | "minItems": 1
16 |
17 | },
18 | "listener": {
19 | "$ref": "MPEG_audio_spatial.listener.schema.json",
20 | "description": "An audio listener item",
21 | "gltf_detailedDescription": "A listener object that places an audio listener node in the scene that should be attached to a parent camera node. The audio listener characteristics depend on the available audio output devices."
22 | },
23 | "reverbs": {
24 | "type": "array",
25 | "items": {
26 | "$ref": "MPEG_audio_spatial.reverb.schema.json"
27 | },
28 | "description": "An array of reverb items",
29 | "gltf_detailedDescription": "An array of reverb items",
30 | "minItems": 1
31 | },
32 | "extensions": {},
33 | "extras": {}
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_media/schema/MPEG_media.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-07/schema",
3 | "title": "MPEG_media",
4 | "type": "object",
5 | "description": "Media used to create a texture, audio source or other objects in the scene.",
6 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "media": {
9 | "type": "array",
10 | "description": "An array of media. A media contains data referred by other object in a scene",
11 | "items": { "$ref": "MPEG_media.media.schema.json"},
12 | "minItems": 1
13 | },
14 | "name": {},
15 | "extensions": {},
16 | "extras": {}
17 | },
18 | "required": [ "media" ]
19 | }
20 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_scene_dynamic/schema/MPEG_scene_dynamic.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-07/schema",
3 | "title" : "MPEG_scene_dynamic extension",
4 | "type" : "object",
5 | "description": "glTF extension to expose dynamic scene updates using the JSON patch protocol with MPEG media",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
7 | "properties" : {
8 | "media": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "The index of the media in `MPEG_media` extension.",
11 | "gltf_detailedDescription": "The index of the media in `MPEG_media` that provides dynamic scene update information."
12 | },
13 | "track": {
14 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
15 | "description": "The index of a track of media in `MPEG_media` extension.",
16 | "gltf_detailedDescription": "The index of a track of media in `MPEG_media` that provides dynamic scene update information. The track samples as defined in ISO/IEC 23090-14 contain scene description updates and provide timing to perform these updates. If track is not provided, it shall be assumed that all tracks provided by the referenced media object are used to provide the update samples."
17 | },
18 | "extensions": {},
19 | "extras": {}
20 | },
21 | "required": [ "media" ]
22 | }
23 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MPEG_viewport_recommended/schema/MPEG_viewport_recommended.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-07/schema",
3 | "title": "MPEG_viewport_recommended",
4 | "description": "glTF extension for specifying an set of recommended viewports.",
5 | "allOf": [ { "$ref": "glTFProperty.schema.json"} ],
6 | "properties": {
7 | "viewports": {
8 | "type": "array",
9 | "items": {"$ref": "MPEG_viewport_recommended.viewport.schema.json"},
10 | "minItems": 1
11 | },
12 | "extensions": {},
13 | "extras": {}
14 | },
15 | "required": ["viewports"]
16 | }
17 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MSFT_lod/schema/glTF.MSFT_lod.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "MSFT_lod glTF extension",
4 | "type": "object",
5 | "description": "glTF extension for specifying levels of detail (LOD).",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "ids": {
9 | "type": "array",
10 | "items": {
11 | "type": "integer"
12 | },
13 | "description": "Array containing the indices of progressively lower LOD nodes.",
14 | "minItems": 1
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MSFT_packing_normalRoughnessMetallic/schema/glTF.MSFT_packing_normalRoughnessMetallic.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "MSFT_packing_normalRoughnessMetallic extension",
4 | "type": "object",
5 | "description": "glTF extension the specifies a packing of normal, roughness and metallic in a single texture.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "normalRoughnessMetallicTexture": {
9 | "type": "object",
10 | "description": "A texture with the packing Normal (RG), Roughness (B), Metallic (A).",
11 | "properties": {
12 | "index": {
13 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
14 | "description": "The index of the texture."
15 | }
16 | }
17 | },
18 | "extensions": {},
19 | "extras": {}
20 | }
21 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MSFT_packing_occlusionRoughnessMetallic/schema/glTF.MSFT_packing_occlusionRoughnessMetallic.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "MSFT_packing_occlusionRoughnessMetallic extension",
4 | "type": "object",
5 | "description": "glTF extension the specifies a packing of occlusion, roughness and metallic in a single texture and a two channel normal map.",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "occlusionRoughnessMetallicTexture": {
9 | "type": "object",
10 | "description": "A texture with packing Occlusion (R), Roughness (G), Metallic (B).",
11 | "properties": {
12 | "index": {
13 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
14 | "description": "The index of the texture."
15 | }
16 | }
17 | },
18 | "roughnessMetallicOcclusionTexture": {
19 | "type": "object",
20 | "description": "A texture with packing Roughness (R), Metallic (G), Occlusion (B).",
21 | "properties": {
22 | "index": {
23 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
24 | "description": "The index of the texture."
25 | }
26 | }
27 | },
28 | "normalTexture": {
29 | "type": "object",
30 | "description": "A texture which contains two channel (RG) normal map.",
31 | "properties": {
32 | "index": {
33 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
34 | "description": "The index of the texture."
35 | }
36 | }
37 | },
38 | "extensions": {},
39 | "extras": {}
40 | }
41 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/MSFT_texture_dds/schema/glTF.MSFT_texture_dds.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "title": "MSFT_texture_dds extension",
4 | "type": "object",
5 | "description": "glTF extension to specify textures using the DirectDraw Surface file format (DDS).",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "source": {
9 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
10 | "description": "The index of the images node which points to a DDS texture file."
11 | },
12 | "extensions": {},
13 | "extras": {}
14 | }
15 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/NV_materials_mdl/schema/functionCall.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "$id": "functionCall.schema.json",
4 | "title": "Function Call",
5 | "type": "object",
6 | "description": "Function call with its list of arguments. Can represent the entry point into a function call graph or be a node in such a graph.",
7 | "allOf": [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "module": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The ID of the containing module. This field **MUST NOT** be defined if a built-in function is specified."
12 | },
13 | "functionName": {
14 | "type": "string",
15 | "minLength": 1,
16 | "description": "The unqualified name of the function."
17 | },
18 | "type": {
19 | "allOf": [ { "$ref": "functionCall.type.schema.json" } ],
20 | "description": "The return type of the function."
21 | },
22 | "arguments": {
23 | "type": "array",
24 | "items": {
25 | "$ref": "functionCall.argument.schema.json"
26 | },
27 | "minItems": 1,
28 | "description": "A list of named value and/or function call arguments. Multiple arguments with the same name **MUST NOT** exist."
29 | },
30 | "name": { },
31 | "extensions": { },
32 | "extras": { }
33 | },
34 | "required": [
35 | "functionName",
36 | "type"
37 | ]
38 | }
39 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/NV_materials_mdl/schema/functionCall.type.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "$id": "functionCall.type.schema.json",
4 | "title": "Type",
5 | "type": "object",
6 | "description": "MDL type describing either a built-in or user-defined type, or an array of a built-in or user-defined type.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "module": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The ID of the containing module. This field **MUST NOT** be defined if a built-in type is specified."
12 | },
13 | "typeName": {
14 | "type": "string",
15 | "minLength": 1,
16 | "description": "The unqualified name of the type."
17 | },
18 | "arraySize": {
19 | "type": "integer",
20 | "minimum": 0,
21 | "description": "The array size. If this field is defined the type is considered to be a array."
22 | },
23 | "modifier": {
24 | "anyOf": [
25 | {
26 | "type": "string",
27 | "const": "varying"
28 | },
29 | {
30 | "type": "string",
31 | "const": "uniform"
32 | },
33 | {
34 | "type": "string"
35 | }
36 | ],
37 | "description": "The name of the type modifier."
38 | },
39 | "extensions": { },
40 | "extras": { }
41 | },
42 | "required": [
43 | "typeName"
44 | ]
45 | }
46 |
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/NV_materials_mdl/schema/glTF.NV_materials_mdl.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "$id": "glTF.NV_materials_mdl.schema.json",
4 | "title": "NV_materials_mdl glTF extension",
5 | "type": "object",
6 | "description": "glTF extension that enables using MDL materials.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "modules": {
10 | "type": "array",
11 | "items": {
12 | "$ref": "module.schema.json"
13 | },
14 | "minItems": 1,
15 | "description": "The list of all MDL modules."
16 | },
17 | "functionCalls": {
18 | "type": "array",
19 | "items": {
20 | "$ref": "functionCall.schema.json"
21 | },
22 | "minItems": 1,
23 | "description": "The list of all function calls."
24 | },
25 | "bsdfMeasurements": {
26 | "type": "array",
27 | "items": {
28 | "$ref": "bsdfMeasurement.schema.json"
29 | },
30 | "minItems": 1,
31 | "description": "The list of all BSDF measurements."
32 | },
33 | "extensions": {},
34 | "extras": {}
35 | }
36 | }
--------------------------------------------------------------------------------
/extensions/2.0/Vendor/NV_materials_mdl/schema/material.NV_materials_mdl.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "http://json-schema.org/draft-04/schema",
3 | "$id": "material.NV_materials_mdl.schema.json",
4 | "title": "NV_materials_mdl material extension",
5 | "type": "object",
6 | "description": "glTF extension that enables using MDL materials.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "functionCall": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of the MDL function call. The reference function call **MUST** represent the entry point to a function call graph and have the return type `material`."
12 | },
13 | "extensions": { },
14 | "extras": { }
15 | },
16 | "required": [
17 | "functionCall"
18 | ]
19 | }
--------------------------------------------------------------------------------
/extensions/Template.md:
--------------------------------------------------------------------------------
1 |
5 |
6 | # TODO_EXTENSION_NAME
7 |
8 | ## Contributors
9 |
10 | * TODO: Name, affiliation, and contact info for each contributor
11 |
12 | ## Status
13 |
14 | TODO: Draft or Stable
15 |
16 | ## Dependencies
17 |
18 | Written against the glTF 2.0 spec.
19 |
20 | ## Overview
21 |
22 | TODO
23 |
24 | ## glTF Schema Updates
25 |
26 | TODO
27 |
28 | ### JSON Schema
29 |
30 | TODO: Links to the JSON schema for the new extension properties.
31 |
32 | ## Known Implementations
33 |
34 | * TODO: List of known implementations, with links to each if available.
35 |
36 | ## Resources
37 |
38 | * TODO: Resources, if any.
39 |
--------------------------------------------------------------------------------
/specification/1.0/figures/dictionary-objects.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/1.0/figures/dictionary-objects.png
--------------------------------------------------------------------------------
/specification/1.0/figures/files.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/1.0/figures/files.png
--------------------------------------------------------------------------------
/specification/1.0/figures/gltfOverview-0.2.0-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/1.0/figures/gltfOverview-0.2.0-small.png
--------------------------------------------------------------------------------
/specification/1.0/figures/gltfOverview-0.2.0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/1.0/figures/gltfOverview-0.2.0.png
--------------------------------------------------------------------------------
/specification/1.0/figures/pptx/figures.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/1.0/figures/pptx/figures.pptx
--------------------------------------------------------------------------------
/specification/1.0/schema/animation.channel.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "channel",
4 | "type" : "object",
5 | "description" : "Targets an animation's sampler at a node's property.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "sampler" : {
11 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
12 | "description" : "The ID of a sampler in this animation used to compute the value for the target.",
13 | "gltf_detailedDescription" : "The ID of a sampler in this animation used to compute the value for the target, e.g., a node's translation, rotation, or scale (TRS)."
14 | },
15 | "target" : {
16 | "allOf" : [ { "$ref" : "animation.channel.target.schema.json" } ],
17 | "description" : "The ID of the node and TRS property to target."
18 | }
19 | },
20 | "additionalProperties" : false,
21 | "required": ["sampler", "target"]
22 | }
23 |
--------------------------------------------------------------------------------
/specification/1.0/schema/animation.channel.target.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "target",
4 | "type" : "object",
5 | "description" : "The ID of the node and TRS property that an animation channel targets.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "id" : {
11 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
12 | "description" : "The ID of the node to target."
13 | },
14 | "path" : {
15 | "type" : "string",
16 | "description" : "The name of the node's TRS property to modify.",
17 | "enum" : ["translation", "rotation", "scale"]
18 | }
19 | },
20 | "additionalProperties" : false,
21 | "required": ["id", "path"]
22 | }
23 |
--------------------------------------------------------------------------------
/specification/1.0/schema/animation.parameter.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "parameter",
4 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
5 | "description" : "The ID of the accessor containing keyframes for this parameter.",
6 | "additionalProperties" : false
7 | }
8 |
--------------------------------------------------------------------------------
/specification/1.0/schema/animation.sampler.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "animation sampler",
4 | "type" : "object",
5 | "description" : "Combines input and output parameters with an interpolation algorithm to define a keyframe graph (but not its target).",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "input" : {
11 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
12 | "description" : "The ID of a parameter in this animation to use as keyframe input, e.g., time.",
13 | "gltf_detailedDescription" : "The ID of a parameter in this animation to use as keyframe input. This parameter must have type `FLOAT`. The values represent time in seconds with `time[0] >= 0.0`, and monotonically increasing values, i.e., `time[n + 1] >= time[n]`."
14 | },
15 | "interpolation" : {
16 | "type" : "string",
17 | "description" : "Interpolation algorithm.",
18 | "enum" : ["LINEAR"],
19 | "default" : "LINEAR",
20 | "gltf_detailedDescription" : "Interpolation algorithm. When an animation targets a node's rotation, and the animation's interpolation is `\"LINEAR\"`, spherical linear interpolation (slerp) should be used to interpolate quaternions."
21 | },
22 | "output" : {
23 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
24 | "description" : "The ID of a parameter in this animation to use as keyframe output."
25 | }
26 | },
27 | "additionalProperties" : false,
28 | "required": ["input", "output"]
29 | }
30 |
--------------------------------------------------------------------------------
/specification/1.0/schema/animation.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "animation",
4 | "type" : "object",
5 | "description" : "A keyframe animation.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name": {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "channels" : {
12 | "type" : "array",
13 | "description" : "An array of channels, each of which targets an animation's sampler at a node's property.",
14 | "items" : {
15 | "$ref" : "animation.channel.schema.json"
16 | },
17 | "default" : []
18 | },
19 | "parameters" : {
20 | "type" : "object",
21 | "description" : "A dictionary object of strings whose values are IDs of accessors with keyframe data, e.g., time, translation, rotation, etc.",
22 | "properties" : {
23 | },
24 | "additionalProperties" : {
25 | "$ref" : "animation.parameter.schema.json"
26 | },
27 | "default" : {}
28 | },
29 | "samplers" : {
30 | "type" : "object",
31 | "description" : "A dictionary object of samplers that combines input and output parameters with an interpolation algorithm to define a keyframe graph (but not its target).",
32 | "properties" : {
33 | },
34 | "additionalProperties" : {
35 | "$ref" : "animation.sampler.schema.json"
36 | },
37 | "default" : {}
38 | }
39 | },
40 | "dependencies" : {
41 | "channels" : ["samplers"],
42 | "samplers" : ["parameters"]
43 | },
44 | "additionalProperties" : false
45 | }
46 |
--------------------------------------------------------------------------------
/specification/1.0/schema/arrayValues.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "type" : "array",
4 | "items" : {
5 | "type" : ["number", "boolean", "string"]
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/specification/1.0/schema/asset.profile.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "profile",
4 | "type" : "object",
5 | "description" : "Specifies the target rendering API and version, e.g., WebGL 1.0.3.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "api" : {
11 | "type" : "string",
12 | "description" : "Specifies the target rendering API.",
13 | "default" : "WebGL"
14 | },
15 | "version" : {
16 | "type" : "string",
17 | "description" : "The API version.",
18 | "default" : "1.0.3"
19 | }
20 | },
21 | "additionalProperties" : false
22 | }
23 |
--------------------------------------------------------------------------------
/specification/1.0/schema/asset.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "asset",
4 | "type" : "object",
5 | "description" : "Metadata about the glTF asset.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "copyright" : {
11 | "type" : "string",
12 | "description" : "A copyright message suitable for display to credit the content creator."
13 | },
14 | "generator" : {
15 | "type" : "string",
16 | "description" : "Tool that generated this glTF model. Useful for debugging."
17 | },
18 | "premultipliedAlpha" : {
19 | "type" : "boolean",
20 | "description" : "Specifies if the shaders were generated with premultiplied alpha.",
21 | "default" : false,
22 | "gltf_webgl" : "`getContext()` with premultipliedAlpha"
23 | },
24 | "profile" : {
25 | "allOf" : [ { "$ref" : "asset.profile.schema.json" } ],
26 | "default" : {}
27 | },
28 | "version" : {
29 | "type" : "string",
30 | "pattern": "^1\\.",
31 | "description" : "The glTF version."
32 | }
33 | },
34 | "additionalProperties" : false,
35 | "required": ["version"]
36 | }
37 |
--------------------------------------------------------------------------------
/specification/1.0/schema/buffer.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "buffer",
4 | "type" : "object",
5 | "description" : "A buffer points to binary geometry, animation, or skins.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "uri" : {
12 | "type" : "string",
13 | "description" : "The uri of the buffer.",
14 | "format" : "uriref",
15 | "gltf_detailedDescription" : "The uri of the buffer. Relative paths are relative to the .gltf file. Instead of referencing an external file, the uri can also be a data-uri.",
16 | "gltf_uriType" : "application"
17 | },
18 | "byteLength" : {
19 | "type" : "integer",
20 | "description" : "The length of the buffer in bytes.",
21 | "minimum" : 0,
22 | "default" : 0
23 | },
24 | "type" : {
25 | "type" : "string",
26 | "description" : "XMLHttpRequest `responseType`.",
27 | "enum" : ["arraybuffer", "text"],
28 | "default" : "arraybuffer"
29 | }
30 | },
31 | "additionalProperties" : false,
32 | "required": ["uri"]
33 | }
34 |
--------------------------------------------------------------------------------
/specification/1.0/schema/bufferView.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "bufferView",
4 | "type" : "object",
5 | "description" : "A view into a buffer generally representing a subset of the buffer.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "buffer" : {
12 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
13 | "description" : "The ID of the buffer."
14 | },
15 | "byteOffset" : {
16 | "type" : "integer",
17 | "description" : "The offset into the buffer in bytes.",
18 | "minimum" : 0
19 | },
20 | "byteLength" : {
21 | "type" : "integer",
22 | "description" : "The length of the bufferView in bytes.",
23 | "minimum" : 0,
24 | "default" : 0
25 | },
26 | "target" : {
27 | "type" : "integer",
28 | "description" : "The target that the WebGL buffer should be bound to.",
29 | "enum" : [34962, 34963],
30 | "gltf_enumNames" : ["ARRAY_BUFFER", "ELEMENT_ARRAY_BUFFER"],
31 | "gltf_detailedDescription" : "The target that the WebGL buffer should be bound to. All valid values correspond to WebGL enums. When this is not provided, the bufferView contains animation or skin data.",
32 | "gltf_webgl" : "`bindBuffer()`"
33 | }
34 | },
35 | "additionalProperties" : false,
36 | "required": ["buffer", "byteOffset"]
37 | }
38 |
--------------------------------------------------------------------------------
/specification/1.0/schema/camera.orthographic.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "orthographic",
4 | "type" : "object",
5 | "description" : "An orthographic camera containing properties to create an orthographic projection matrix.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "xmag" : {
11 | "type" : "number",
12 | "description" : "The floating-point horizontal magnification of the view."
13 | },
14 | "ymag" : {
15 | "type" : "number",
16 | "description" : "The floating-point vertical magnification of the view."
17 | },
18 | "zfar" : {
19 | "type" : "number",
20 | "description" : "The floating-point distance to the far clipping plane.",
21 | "minimum" : 0.0
22 | },
23 | "znear" : {
24 | "type" : "number",
25 | "description" : "The floating-point distance to the near clipping plane.",
26 | "minimum" : 0.0
27 | }
28 | },
29 | "additionalProperties" : false,
30 | "required": ["xmag", "ymag", "zfar", "znear"]
31 | }
32 |
--------------------------------------------------------------------------------
/specification/1.0/schema/camera.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "camera",
4 | "type" : "object",
5 | "description" : "A camera's projection. A node can reference a camera ID to apply a transform to place the camera in the scene.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "orthographic" : {
12 | "allOf" : [ { "$ref" : "camera.orthographic.schema.json" } ],
13 | "description" : "An orthographic camera containing properties to create an orthographic projection matrix."
14 | },
15 | "perspective" : {
16 | "allOf" : [ { "$ref" : "camera.perspective.schema.json" } ],
17 | "description" : "A perspective camera containing properties to create a perspective projection matrix."
18 | },
19 | "type" : {
20 | "type" : "string",
21 | "description" : "Specifies if the camera uses a perspective or orthographic projection.",
22 | "enum" : ["perspective", "orthographic"],
23 | "gltf_detailedDescription" : "Specifies if the camera uses a perspective or orthographic projection. Based on this, either the camera's `perspective` or `orthographic` property will be defined."
24 | }
25 | },
26 | "additionalProperties" : false,
27 | "required": ["type"]
28 | }
29 |
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/accessors.json:
--------------------------------------------------------------------------------
1 | {
2 | "accessors" : {
3 | "accessor_id" : {
4 | "bufferView" : "bufferViewWithVertices_id",
5 | "byteOffset" : 0,
6 | "byteStride" : 3,
7 | "componentType" : 5126,
8 | "count" : 1024,
9 | "type" : "SCALAR",
10 | "name": "user-defined accessor name",
11 | "max" : [-1.0, -1.0, -1.0],
12 | "min" : [1.0, 1.0, 1.0],
13 | "extensions" : {
14 | "extension_name" : {
15 | "extension specific" : "value"
16 | }
17 | },
18 | "extras" : {
19 | "Application specific" : "The extra object can contain any properties."
20 | }
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/asset.json:
--------------------------------------------------------------------------------
1 | {
2 | "asset" : {
3 | "copyright" : "(C) Copyright Khronos Group",
4 | "generator" : "collada2gltf@042d7d2a3782aaf6d86961d052fc53bea8b3e424",
5 | "premultipliedAlpha" : true,
6 | "profile" : {
7 | "api" : "WebGL",
8 | "version" : "1.0.3",
9 | "extras" : {
10 | "Application specific" : "The extra object can contain any properties."
11 | }
12 | },
13 | "version" : "1.0",
14 | "extensions" : {
15 | "extension_name" : {
16 | "extension specific" : "value"
17 | }
18 | },
19 | "extras" : {
20 | "Application specific" : "The extra object can contain any properties."
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/bufferViews.json:
--------------------------------------------------------------------------------
1 | {
2 | "bufferViews" : {
3 | "vertices_id" : {
4 | "buffer" : "buffer_id",
5 | "byteLength": 76768,
6 | "byteOffset": 0,
7 | "name": "user-defined name of bufferView with vertices",
8 | "target": 34962,
9 | "extensions" : {
10 | "extension_name" : {
11 | "extension specific" : "value"
12 | }
13 | },
14 | "extras" : {
15 | "Application specific" : "The extra object can contain any properties."
16 | }
17 | },
18 | "indices_id" : {
19 | "buffer" : "buffer_id",
20 | "byteLength": 25272,
21 | "byteOffset": 76768,
22 | "name": "user-defined name of bufferView with indices",
23 | "target": 34963,
24 | "extensions" : {
25 | "extension_name" : {
26 | "extension specific" : "value"
27 | }
28 | },
29 | "extras" : {
30 | "Application specific" : "The extra object can contain any properties."
31 | }
32 | }
33 | }
34 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/buffers.json:
--------------------------------------------------------------------------------
1 | {
2 | "buffers" : {
3 | "verticesBuffer_id" : {
4 | "uri" : "vertices.bin",
5 | "byteLength": 1024,
6 | "name": "user-defined buffer name",
7 | "type" : "arraybuffer",
8 | "extensions" : {
9 | "extension_name" : {
10 | "extension specific" : "value"
11 | }
12 | },
13 | "extras" : {
14 | "Application specific" : "The extra object can contain any properties."
15 | }
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/cameras.json:
--------------------------------------------------------------------------------
1 | {
2 | "cameras" : {
3 | "perspectiveCamera_id" : {
4 | "name" : "user-defined name of perspective camera",
5 | "perspective" : {
6 | "aspectRatio" : 1.77,
7 | "yfov" : 0.7854,
8 | "zfar" : 1000,
9 | "znear" : 1
10 | },
11 | "type" : "perspective",
12 | "extensions" : {
13 | "extension_name" : {
14 | "extension specific" : "value"
15 | }
16 | },
17 | "extras" : {
18 | "Application specific" : "The extra object can contain any properties."
19 | }
20 | },
21 | "orthographicCamera_id" : {
22 | "name" : "user-defined name of orthographic camera",
23 | "orthographic" : {
24 | "xmag" : 0.5,
25 | "ymag" : 0.5,
26 | "zfar" : 1000,
27 | "znear" : 1
28 | },
29 | "type" : "orthographic",
30 | "extensions" : {
31 | "extension_name" : {
32 | "extension specific" : "value"
33 | }
34 | },
35 | "extras" : {
36 | "Application specific" : "The extra object can contain any properties."
37 | }
38 | }
39 | }
40 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "extensionsUsed" : ["Example EXT_texture_filter_anisotropic", "Example root-level extension"],
3 | "extensions" : {
4 | "Example root-level extension" : {
5 | "extension specific" : "value"
6 | }
7 | },
8 | "samplers" : {
9 | "sampler_id": {
10 | "magFilter": 9729,
11 | "minFilter": 9987,
12 | "name": "user-defined sampler name",
13 | "wrapS": 10497,
14 | "wrapT": 10497,
15 | "extensions" : {
16 | "Example EXT_texture_filter_anisotropic" : {
17 | "textureMaxAnisotropy" : 8
18 | }
19 | },
20 | "extras" : {
21 | "Application specific" : "The extra object can contain any properties."
22 | }
23 | }
24 | }
25 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/images.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : {
3 | "image_id" : {
4 | "name": "user-defined image name",
5 | "uri" : "image.png",
6 | "extensions" : {
7 | "extension_name" : {
8 | "extension specific" : "value"
9 | }
10 | },
11 | "extras" : {
12 | "Application specific" : "The extra object can contain any properties."
13 | }
14 | }
15 | }
16 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/materials.json:
--------------------------------------------------------------------------------
1 | {
2 | "materials" : {
3 | "material_id": {
4 | "technique": "technique_id",
5 | "values": {
6 | "ambient": [
7 | 0,
8 | 0,
9 | 0,
10 | 1
11 | ],
12 | "diffuse": "texture_image_0",
13 | "shininess": 38.4
14 | },
15 | "name": "user-defined material name",
16 | "extensions" : {
17 | "extension_name" : {
18 | "extension specific" : "value"
19 | }
20 | },
21 | "extras" : {
22 | "Application specific" : "The extra object can contain any properties."
23 | }
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/meshes.json:
--------------------------------------------------------------------------------
1 | {
2 | "meshes" : {
3 | "mesh_id": {
4 | "name": "user-defined name of mesh",
5 | "primitives": [
6 | {
7 | "attributes": {
8 | "NORMAL": "accessor_id0",
9 | "POSITION": "accessor_id1",
10 | "TEXCOORD_0": "accessor_id2"
11 | },
12 | "indices": "accessor_id3",
13 | "material": "material_id",
14 | "mode": 4,
15 | "extensions" : {
16 | "extension_name" : {
17 | "extension specific" : "value"
18 | }
19 | },
20 | "extras" : {
21 | "Application specific" : "The extra object can contain any properties."
22 | }
23 | }
24 | ],
25 | "extensions" : {
26 | "extension_name" : {
27 | "extension specific" : "value"
28 | }
29 | },
30 | "extras" : {
31 | "Application specific" : "The extra object can contain any properties."
32 | }
33 | }
34 | }
35 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/programs.json:
--------------------------------------------------------------------------------
1 | {
2 | "programs" : {
3 | "program_id": {
4 | "attributes": [
5 | "a_normal",
6 | "a_position"
7 | ],
8 | "fragmentShader": "fs_id",
9 | "name": "user-defined program name",
10 | "vertexShader": "vs_id",
11 | "extensions" : {
12 | "extension_name" : {
13 | "extension specific" : "value"
14 | }
15 | },
16 | "extras" : {
17 | "Application specific" : "The extra object can contain any properties."
18 | }
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/samplers.json:
--------------------------------------------------------------------------------
1 | {
2 | "samplers" : {
3 | "sampler_id": {
4 | "magFilter": 9729,
5 | "minFilter": 9987,
6 | "name": "user-defined sampler name",
7 | "wrapS": 10497,
8 | "wrapT": 10497,
9 | "extensions" : {
10 | "extension_name" : {
11 | "extension specific" : "value"
12 | }
13 | },
14 | "extras" : {
15 | "Application specific" : "The extra object can contain any properties."
16 | }
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/scenes.json:
--------------------------------------------------------------------------------
1 | {
2 | "scene" : "defaultScene",
3 | "scenes" : {
4 | "defaultScene": {
5 | "name": "user-defined scene name",
6 | "nodes": [
7 | "mesh_node_id",
8 | "camera_node_id"
9 | ],
10 | "extensions" : {
11 | "extension_name" : {
12 | "extension specific" : "value"
13 | }
14 | },
15 | "extras" : {
16 | "Application specific" : "The extra object can contain any properties."
17 | }
18 | }
19 | }
20 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/shaders.json:
--------------------------------------------------------------------------------
1 | {
2 | "shaders" : {
3 | "vs_id" : {
4 | "name": "user-defined vertex shader name",
5 | "uri" : "vertexshader.glsl",
6 | "type": 35633,
7 | "extensions" : {
8 | "extension_name" : {
9 | "extension specific" : "value"
10 | }
11 | },
12 | "extras" : {
13 | "Application specific" : "The extra object can contain any properties."
14 | }
15 | },
16 | "fs_id" : {
17 | "name": "user-defined fragment shader name",
18 | "uri" : "fragmentshader.glsl",
19 | "type": 35632
20 | },
21 | "fs_data_uri_id" : {
22 | "name": "user-defined fragment shader with a data uri name",
23 | "uri" : "data:,void%20main()%7Bgl_FragColor%3Dvec4(1.0)%3B",
24 | "type": 35632
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/skins.json:
--------------------------------------------------------------------------------
1 | {
2 | "skins" : {
3 | "skin_id": {
4 | "bindShapeMatrix": [
5 | 1,
6 | 0,
7 | 0,
8 | 0,
9 | 0,
10 | 1,
11 | 0,
12 | 0,
13 | 0,
14 | 0,
15 | 1,
16 | 0,
17 | 0,
18 | 0,
19 | 0,
20 | 1
21 | ],
22 | "inverseBindMatrices": "accessor_id",
23 | "jointNames": [
24 | "joint_name",
25 | "another_joint_name"
26 | ],
27 | "name": "user-defined skin name",
28 | "extensions" : {
29 | "extension_name" : {
30 | "extension specific" : "value"
31 | }
32 | },
33 | "extras" : {
34 | "Application specific" : "The extra object can contain any properties."
35 | }
36 | }
37 | }
38 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/examples/textures.json:
--------------------------------------------------------------------------------
1 | {
2 | "textures" : {
3 | "texture_id": {
4 | "format": 6408,
5 | "internalFormat": 6408,
6 | "name": "user-defined texture name",
7 | "sampler": "sampler_id",
8 | "source": "image_id",
9 | "target": 3553,
10 | "type": 5121,
11 | "extensions" : {
12 | "extension_name" : {
13 | "extension specific" : "value"
14 | }
15 | },
16 | "extras" : {
17 | "Application specific" : "The extra object can contain any properties."
18 | }
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/specification/1.0/schema/extension.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "extension",
4 | "type" : "object",
5 | "description" : "Dictionary object with extension-specific objects.",
6 | "properties" : {
7 | },
8 | "additionalProperties" : {
9 | "type" : "object"
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/specification/1.0/schema/extras.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "extras",
4 | "description" : "Application-specific data."
5 | }
6 |
--------------------------------------------------------------------------------
/specification/1.0/schema/glTFChildOfRootProperty.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "Child of a glTF root property",
4 | "type" : "object",
5 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
6 | "properties" : {
7 | "name" : {
8 | "type" : "string",
9 | "description" : "The user-defined name of this object.",
10 | "gltf_detailedDescription" : "The user-defined name of this object. This is not necessarily unique, e.g., an accessor and a buffer could have the same name, or two accessors could even have the same name."
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/specification/1.0/schema/glTFProperty.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "glTF property",
4 | "type" : "object",
5 | "properties" : {
6 | "extensions" : {
7 | "$ref" : "extension.schema.json"
8 | },
9 | "extras" : {
10 | "$ref" : "extras.schema.json"
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/specification/1.0/schema/glTFid.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "glTF id",
4 | "type" : "string",
5 | "minLength" : 1
6 | }
7 |
--------------------------------------------------------------------------------
/specification/1.0/schema/image.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "image",
4 | "type" : "object",
5 | "description" : "Image data used to create a texture.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "uri" : {
12 | "type" : "string",
13 | "description" : "The uri of the image.",
14 | "format" : "uriref",
15 | "gltf_detailedDescription" : "The uri of the image. Relative paths are relative to the .gltf file. Instead of referencing an external file, the uri can also be a data-uri. The image format must be jpg, png, bmp, or gif.",
16 | "gltf_uriType" : "image"
17 | }
18 | },
19 | "additionalProperties" : false,
20 | "required": ["uri"]
21 | }
22 |
--------------------------------------------------------------------------------
/specification/1.0/schema/material.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "material",
4 | "type" : "object",
5 | "description" : "The material appearance of a primitive.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "technique" : {
12 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
13 | "description" : "The ID of the technique.",
14 | "gltf_detailedDescription" : "The ID of the technique. If this is not supplied, and no extension is present that defines material properties, then the primitive should be rendered using a default material with 50% gray emissive color."
15 | },
16 | "values" : {
17 | "type" : "object",
18 | "description" : "A dictionary object of parameter values.",
19 | "properties" : {
20 | },
21 | "additionalProperties" : {
22 | "$ref" : "material.values.schema.json"
23 | },
24 | "default" : {},
25 | "gltf_detailedDescription" : "A dictionary object of parameter values. Parameters with the same name as the technique's parameter override the technique's parameter value."
26 | }
27 | },
28 | "additionalProperties" : false
29 | }
30 |
--------------------------------------------------------------------------------
/specification/1.0/schema/material.values.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "values",
4 | "anyOf" : [ {"type": ["number", "boolean", "string"]} , { "$ref" : "arrayValues.schema.json" }],
5 | "description" : "A dictionary object of parameter values. Parameters with the same name as the technique's parameter override the technique's parameter value."
6 | }
7 |
--------------------------------------------------------------------------------
/specification/1.0/schema/mesh.primitive.attribute.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "attribute",
4 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
5 | "description" : "A dictionary object of strings, where each string is the ID of the accessor containing an attribute."
6 | }
7 |
--------------------------------------------------------------------------------
/specification/1.0/schema/mesh.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "mesh",
4 | "type" : "object",
5 | "description" : "A set of primitives to be rendered. A node can contain one or more meshes. A node's transform places the mesh in the scene.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "primitives" : {
12 | "type" : "array",
13 | "description" : "An array of primitives, each defining geometry to be rendered with a material.",
14 | "items" : {
15 | "$ref" : "mesh.primitive.schema.json"
16 | },
17 | "default" : []
18 | }
19 | },
20 | "additionalProperties" : false
21 | }
22 |
--------------------------------------------------------------------------------
/specification/1.0/schema/program.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "program",
4 | "type" : "object",
5 | "description" : "A shader program, including its vertex and fragment shader, and names of vertex shader attributes.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties": {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "attributes" : {
12 | "type" : "array",
13 | "description" : "Names of GLSL vertex shader attributes.",
14 | "items" : {
15 | "type" : "string",
16 | "minLength" : 1,
17 | "maxLength" : 256
18 | },
19 | "default" : [],
20 | "gltf_webgl" : "`bindAttribLocation()`"
21 | },
22 | "fragmentShader" : {
23 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
24 | "description" : "The ID of the fragment shader."
25 | },
26 | "vertexShader" : {
27 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
28 | "description" : "The ID of the vertex shader."
29 | }
30 | },
31 | "additionalProperties" : false,
32 | "required": ["fragmentShader", "vertexShader"],
33 | "gltf_webgl" : "`attachShader()`, `bindAttribLocation()`, `createProgram()`, `deleteProgram()`, `getProgramParameter()`, `getProgramInfoLog()`, `linkProgram()`, `useProgram()`, and `validateProgram()`"
34 | }
35 |
--------------------------------------------------------------------------------
/specification/1.0/schema/scene.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "scene",
4 | "type" : "object",
5 | "description" : "The root nodes of a scene.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "nodes" : {
12 | "type" : "array",
13 | "description" : "The IDs of each root node.",
14 | "items" : {
15 | "$ref" : "glTFid.schema.json"
16 | },
17 | "uniqueItems" : true,
18 | "default" : []
19 | }
20 | },
21 | "additionalProperties" : false
22 | }
23 |
--------------------------------------------------------------------------------
/specification/1.0/schema/shader.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "shader",
4 | "type" : "object",
5 | "description" : "A vertex or fragment shader.",
6 | "allOf" : [ { "$ref" : "glTFChildOfRootProperty.schema.json" } ],
7 | "properties" : {
8 | "name" : {},
9 | "extensions" : {},
10 | "extras" : {},
11 | "uri" : {
12 | "type" : "string",
13 | "description" : "The uri of the GLSL source.",
14 | "format" : "uriref",
15 | "gltf_detailedDescription" : "The uri of the GLSL source. Relative paths are relative to the .gltf file. Instead of referencing an external file, the uri can also be a data-uri.",
16 | "gltf_uriType" : "text"
17 | },
18 | "type" : {
19 | "type" : "integer",
20 | "description" : "The shader stage.",
21 | "enum" : [35632, 35633],
22 | "gltf_enumNames" : ["FRAGMENT_SHADER", "VERTEX_SHADER"],
23 | "gltf_detailedDescription" : "The shader stage. All valid values correspond to WebGL enums."
24 | }
25 | },
26 | "additionalProperties" : false,
27 | "required" : ["uri", "type"],
28 | "gltf_webgl" : "`createShader()`, `deleteShader()`, `shaderSource()`, `compileShader()`, `getShaderParameter()`, and `getShaderInfoLog()`"
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/specification/1.0/schema/technique.attribute.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "attribute",
4 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
5 | "description" : "A dictionary object of strings that maps GLSL attribute names to technique parameter IDs."
6 | }
7 |
--------------------------------------------------------------------------------
/specification/1.0/schema/technique.states.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "states",
4 | "type" : "object",
5 | "description" : "Fixed-function rendering states.",
6 | "allOf" : [ { "$ref" : "glTFProperty.schema.json" } ],
7 | "properties" : {
8 | "extensions" : {},
9 | "extras" : {},
10 | "enable" : {
11 | "type" : "array",
12 | "description" : "WebGL states to enable.",
13 | "items" : {
14 | "type" : "integer",
15 | "enum" : [3042, 2884, 2929, 32823, 32926, 3089],
16 | "gltf_enumNames" : ["BLEND", "CULL_FACE", "DEPTH_TEST", "POLYGON_OFFSET_FILL", "SAMPLE_ALPHA_TO_COVERAGE", "SCISSOR_TEST"]
17 | },
18 | "uniqueItems" : true,
19 | "default" : [],
20 | "gltf_detailedDescription" : "WebGL states to enable. States not in the array are disabled. All valid values correspond to WebGL enums.",
21 | "gltf_webgl" : "`enable()` and `disable()`"
22 | },
23 | "functions" : {
24 | "$ref" : "technique.states.functions.schema.json"
25 | }
26 | },
27 | "additionalProperties" : false
28 | }
29 |
--------------------------------------------------------------------------------
/specification/1.0/schema/technique.uniform.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema" : "http://json-schema.org/draft-04/schema",
3 | "title" : "uniform",
4 | "allOf" : [ { "$ref" : "glTFid.schema.json" } ],
5 | "description" : "A dictionary object of strings that maps GLSL uniform names to technique parameter IDs."
6 | }
7 |
--------------------------------------------------------------------------------
/specification/2.0/figures/coordinate-system.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/2.0/figures/coordinate-system.png
--------------------------------------------------------------------------------
/specification/2.0/figures/figures.pptx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/2.0/figures/figures.pptx
--------------------------------------------------------------------------------
/specification/2.0/figures/gltfOverview-2.0.0d-small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/2.0/figures/gltfOverview-2.0.0d-small.png
--------------------------------------------------------------------------------
/specification/2.0/figures/gltfOverview-2.0.0d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KhronosGroup/glTF/d8b075e918e6ba52a87a85232ee118fa7b87a23c/specification/2.0/figures/gltfOverview-2.0.0d.png
--------------------------------------------------------------------------------
/specification/2.0/figures/texcoords.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/specification/2.0/schema/accessor.sparse.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "accessor.sparse.schema.json",
4 | "title": "Accessor Sparse",
5 | "type": "object",
6 | "description": "Sparse storage of accessor values that deviate from their initialization value.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "count": {
10 | "type": "integer",
11 | "description": "Number of deviating accessor values stored in the sparse array.",
12 | "minimum": 1
13 | },
14 | "indices": {
15 | "allOf": [ { "$ref": "accessor.sparse.indices.schema.json" } ],
16 | "description": "An object pointing to a buffer view containing the indices of deviating accessor values. The number of indices is equal to `count`. Indices **MUST** strictly increase."
17 | },
18 | "values": {
19 | "allOf": [ { "$ref": "accessor.sparse.values.schema.json" } ],
20 | "description": "An object pointing to a buffer view containing the deviating accessor values."
21 | },
22 | "extensions": { },
23 | "extras": { }
24 | },
25 | "required": [ "count", "indices", "values" ]
26 | }
27 |
--------------------------------------------------------------------------------
/specification/2.0/schema/accessor.sparse.values.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "accessor.sparse.values.schema.json",
4 | "title": "Accessor Sparse Values",
5 | "type": "object",
6 | "description": "An object pointing to a buffer view containing the deviating accessor values. The number of elements is equal to `accessor.sparse.count` times number of components. The elements have the same component type as the base accessor. The elements are tightly packed. Data **MUST** be aligned following the same rules as the base accessor.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "bufferView": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of the bufferView with sparse values. The referenced buffer view **MUST NOT** have its `target` or `byteStride` properties defined."
12 | },
13 | "byteOffset": {
14 | "type": "integer",
15 | "description": "The offset relative to the start of the bufferView in bytes.",
16 | "minimum": 0,
17 | "default": 0
18 | },
19 | "extensions": { },
20 | "extras": { }
21 | },
22 | "required": [ "bufferView" ]
23 | }
24 |
--------------------------------------------------------------------------------
/specification/2.0/schema/animation.channel.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "animation.channel.schema.json",
4 | "title": "Animation Channel",
5 | "type": "object",
6 | "description": "An animation channel combines an animation sampler with a target property being animated.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "sampler": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of a sampler in this animation used to compute the value for the target.",
12 | "gltf_detailedDescription": "The index of a sampler in this animation used to compute the value for the target, e.g., a node's translation, rotation, or scale (TRS)."
13 | },
14 | "target": {
15 | "allOf": [ { "$ref": "animation.channel.target.schema.json" } ],
16 | "description": "The descriptor of the animated property."
17 | },
18 | "extensions": { },
19 | "extras": { }
20 | },
21 | "required": [ "sampler", "target" ]
22 | }
23 |
--------------------------------------------------------------------------------
/specification/2.0/schema/animation.channel.target.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "animation.channel.target.schema.json",
4 | "title": "Animation Channel Target",
5 | "type": "object",
6 | "description": "The descriptor of the animated property.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "node": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of the node to animate. When undefined, the animated object **MAY** be defined by an extension."
12 | },
13 | "path": {
14 | "description": "The name of the node's TRS property to animate, or the `\"weights\"` of the Morph Targets it instantiates. For the `\"translation\"` property, the values that are provided by the sampler are the translation along the X, Y, and Z axes. For the `\"rotation\"` property, the values are a quaternion in the order (x, y, z, w), where w is the scalar. For the `\"scale\"` property, the values are the scaling factors along the X, Y, and Z axes.",
15 | "anyOf": [
16 | {
17 | "const": "translation"
18 | },
19 | {
20 | "const": "rotation"
21 | },
22 | {
23 | "const": "scale"
24 | },
25 | {
26 | "const": "weights"
27 | },
28 | {
29 | "type": "string"
30 | }
31 | ]
32 | },
33 | "extensions": { },
34 | "extras": { }
35 | },
36 | "required": [ "path" ]
37 | }
38 |
--------------------------------------------------------------------------------
/specification/2.0/schema/animation.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "animation.schema.json",
4 | "title": "Animation",
5 | "type": "object",
6 | "description": "A keyframe animation.",
7 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "channels": {
10 | "type": "array",
11 | "description": "An array of animation channels. An animation channel combines an animation sampler with a target property being animated. Different channels of the same animation **MUST NOT** have the same targets.",
12 | "items": {
13 | "$ref": "animation.channel.schema.json"
14 | },
15 | "minItems": 1
16 | },
17 | "samplers": {
18 | "type": "array",
19 | "description": "An array of animation samplers. An animation sampler combines timestamps with a sequence of output values and defines an interpolation algorithm.",
20 | "items": {
21 | "$ref": "animation.sampler.schema.json"
22 | },
23 | "minItems": 1
24 | },
25 | "name": { },
26 | "extensions": { },
27 | "extras": { }
28 | },
29 | "required": [ "channels", "samplers" ]
30 | }
31 |
--------------------------------------------------------------------------------
/specification/2.0/schema/asset.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "asset.schema.json",
4 | "title": "Asset",
5 | "type": "object",
6 | "description": "Metadata about the glTF asset.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "copyright": {
10 | "type": "string",
11 | "description": "A copyright message suitable for display to credit the content creator."
12 | },
13 | "generator": {
14 | "type": "string",
15 | "description": "Tool that generated this glTF model. Useful for debugging."
16 | },
17 | "version": {
18 | "type": "string",
19 | "description": "The glTF version in the form of `.` that this asset targets.",
20 | "pattern": "^[0-9]+\\.[0-9]+$"
21 | },
22 | "minVersion": {
23 | "type": "string",
24 | "description": "The minimum glTF version in the form of `.` that this asset targets. This property **MUST NOT** be greater than the asset version.",
25 | "pattern": "^[0-9]+\\.[0-9]+$"
26 | },
27 | "extensions": { },
28 | "extras": { }
29 | },
30 | "required": [ "version" ]
31 | }
32 |
--------------------------------------------------------------------------------
/specification/2.0/schema/buffer.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "buffer.schema.json",
4 | "title": "Buffer",
5 | "type": "object",
6 | "description": "A buffer points to binary geometry, animation, or skins.",
7 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "uri": {
10 | "type": "string",
11 | "description": "The URI (or IRI) of the buffer.",
12 | "format": "iri-reference",
13 | "gltf_detailedDescription": "The URI (or IRI) of the buffer. Relative paths are relative to the current glTF asset. Instead of referencing an external file, this field **MAY** contain a `data:`-URI.",
14 | "gltf_uriType": "application"
15 | },
16 | "byteLength": {
17 | "type": "integer",
18 | "description": "The length of the buffer in bytes.",
19 | "minimum": 1
20 | },
21 | "name": { },
22 | "extensions": { },
23 | "extras": { }
24 | },
25 | "required": [ "byteLength" ]
26 | }
27 |
--------------------------------------------------------------------------------
/specification/2.0/schema/camera.orthographic.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "camera.orthographic.schema.json",
4 | "title": "Camera Orthographic",
5 | "type": "object",
6 | "description": "An orthographic camera containing properties to create an orthographic projection matrix.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "xmag": {
10 | "type": "number",
11 | "description": "The floating-point horizontal magnification of the view. This value **MUST NOT** be equal to zero. This value **SHOULD NOT** be negative."
12 | },
13 | "ymag": {
14 | "type": "number",
15 | "description": "The floating-point vertical magnification of the view. This value **MUST NOT** be equal to zero. This value **SHOULD NOT** be negative."
16 | },
17 | "zfar": {
18 | "type": "number",
19 | "description": "The floating-point distance to the far clipping plane. This value **MUST NOT** be equal to zero. `zfar` **MUST** be greater than `znear`.",
20 | "exclusiveMinimum": 0.0
21 | },
22 | "znear": {
23 | "type": "number",
24 | "description": "The floating-point distance to the near clipping plane.",
25 | "minimum": 0.0
26 | },
27 | "extensions": { },
28 | "extras": { }
29 | },
30 | "required": [ "xmag", "ymag", "zfar", "znear" ]
31 | }
32 |
--------------------------------------------------------------------------------
/specification/2.0/schema/extension.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "extension.schema.json",
4 | "title": "Extension",
5 | "type": "object",
6 | "description": "JSON object with extension-specific objects.",
7 | "properties": {
8 | },
9 | "additionalProperties": {
10 | "type": "object"
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/specification/2.0/schema/extras.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "extras.schema.json",
4 | "title": "Extras",
5 | "description": "Application-specific data.",
6 | "gltf_sectionDescription": "Although `extras` **MAY** have any type, it is common for applications to store and access custom data as key/value pairs. Therefore, `extras` **SHOULD** be a JSON object rather than a primitive value for best portability."
7 | }
8 |
--------------------------------------------------------------------------------
/specification/2.0/schema/glTFChildOfRootProperty.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "glTFChildOfRootProperty.schema.json",
4 | "title": "glTF Child of Root Property",
5 | "type": "object",
6 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
7 | "properties": {
8 | "name": {
9 | "type": "string",
10 | "description": "The user-defined name of this object.",
11 | "gltf_detailedDescription": "The user-defined name of this object. This is not necessarily unique, e.g., an accessor and a buffer could have the same name, or two accessors could even have the same name."
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/specification/2.0/schema/glTFProperty.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "glTFProperty.schema.json",
4 | "title": "glTF Property",
5 | "type": "object",
6 | "properties": {
7 | "extensions": {
8 | "$ref": "extension.schema.json"
9 | },
10 | "extras": {
11 | "$ref": "extras.schema.json"
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/specification/2.0/schema/glTFid.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "glTFid.schema.json",
4 | "title": "glTF Id",
5 | "type": "integer",
6 | "minimum": 0
7 | }
8 |
--------------------------------------------------------------------------------
/specification/2.0/schema/material.normalTextureInfo.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "material.normalTextureInfo.schema.json",
4 | "title": "Material Normal Texture Info",
5 | "type": "object",
6 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
7 | "properties": {
8 | "index": { },
9 | "texCoord": { },
10 | "scale": {
11 | "type": "number",
12 | "description": "The scalar parameter applied to each normal vector of the normal texture.",
13 | "default": 1.0,
14 | "gltf_detailedDescription": "The scalar parameter applied to each normal vector of the texture. This value scales the normal vector in X and Y directions using the formula: `scaledNormal = normalize(( * 2.0 - 1.0) * vec3(, , 1.0))`."
15 | },
16 | "extensions": { },
17 | "extras": { }
18 | }
19 | }
--------------------------------------------------------------------------------
/specification/2.0/schema/material.occlusionTextureInfo.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "material.occlusionTextureInfo.schema.json",
4 | "title": "Material Occlusion Texture Info",
5 | "type": "object",
6 | "allOf": [ { "$ref": "textureInfo.schema.json" } ],
7 | "properties": {
8 | "index": { },
9 | "texCoord": { },
10 | "strength": {
11 | "type": "number",
12 | "description": "A scalar multiplier controlling the amount of occlusion applied.",
13 | "default": 1.0,
14 | "minimum": 0.0,
15 | "maximum": 1.0,
16 | "gltf_detailedDescription": "A scalar parameter controlling the amount of occlusion applied. A value of `0.0` means no occlusion. A value of `1.0` means full occlusion. This value affects the final occlusion value as: `1.0 + strength * ( - 1.0)`."
17 | },
18 | "extensions": { },
19 | "extras": { }
20 | }
21 | }
--------------------------------------------------------------------------------
/specification/2.0/schema/mesh.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "mesh.schema.json",
4 | "title": "Mesh",
5 | "type": "object",
6 | "description": "A set of primitives to be rendered. Its global transform is defined by a node that references it.",
7 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "primitives": {
10 | "type": "array",
11 | "description": "An array of primitives, each defining geometry to be rendered.",
12 | "items": {
13 | "$ref": "mesh.primitive.schema.json"
14 | },
15 | "minItems": 1
16 | },
17 | "weights": {
18 | "type": "array",
19 | "description": "Array of weights to be applied to the morph targets. The number of array elements **MUST** match the number of morph targets.",
20 | "items": {
21 | "type": "number"
22 | },
23 | "minItems": 1
24 | },
25 | "name": { },
26 | "extensions": { },
27 | "extras": { }
28 | },
29 | "required": [ "primitives" ]
30 | }
31 |
--------------------------------------------------------------------------------
/specification/2.0/schema/scene.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "scene.schema.json",
4 | "title": "Scene",
5 | "type": "object",
6 | "description": "The root nodes of a scene.",
7 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "nodes": {
10 | "type": "array",
11 | "description": "The indices of each root node.",
12 | "items": {
13 | "$ref": "glTFid.schema.json"
14 | },
15 | "uniqueItems": true,
16 | "minItems": 1
17 | },
18 | "name": { },
19 | "extensions": { },
20 | "extras": { }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/specification/2.0/schema/texture.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "texture.schema.json",
4 | "title": "Texture",
5 | "type": "object",
6 | "description": "A texture and its sampler.",
7 | "allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
8 | "properties": {
9 | "sampler": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of the sampler used by this texture. When undefined, a sampler with repeat wrapping and auto filtering **SHOULD** be used."
12 | },
13 | "source": {
14 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
15 | "description": "The index of the image used by this texture. When undefined, an extension or other mechanism **SHOULD** supply an alternate texture source, otherwise behavior is undefined."
16 | },
17 | "name": { },
18 | "extensions": { },
19 | "extras": { }
20 | },
21 | "gltf_webgl": "`createTexture()`, `deleteTexture()`, `bindTexture()`, `texImage2D()`, and `texParameterf()`"
22 | }
23 |
--------------------------------------------------------------------------------
/specification/2.0/schema/textureInfo.schema.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json-schema.org/draft/2020-12/schema",
3 | "$id": "textureInfo.schema.json",
4 | "title": "Texture Info",
5 | "type": "object",
6 | "description": "Reference to a texture.",
7 | "allOf": [ { "$ref": "glTFProperty.schema.json" } ],
8 | "properties": {
9 | "index": {
10 | "allOf": [ { "$ref": "glTFid.schema.json" } ],
11 | "description": "The index of the texture."
12 | },
13 | "texCoord": {
14 | "type": "integer",
15 | "description": "The set index of texture's TEXCOORD attribute used for texture coordinate mapping.",
16 | "default": 0,
17 | "minimum": 0,
18 | "gltf_detailedDescription": "This integer value is used to construct a string in the format `TEXCOORD_` which is a reference to a key in `mesh.primitives.attributes` (e.g. a value of `0` corresponds to `TEXCOORD_0`). A mesh primitive **MUST** have the corresponding texture coordinate attributes for the material to be applicable to it."
19 | },
20 | "extensions": { },
21 | "extras": { }
22 | },
23 | "required": [ "index" ]
24 | }
--------------------------------------------------------------------------------
/specification/README.md:
--------------------------------------------------------------------------------
1 |
5 |
6 | # Khronos glTF Registry
7 | glTF registry contains base specifications; specifications of Khronos- and vendor-approved glTF extensions; JSON-Schema files corresponding to the specifications; and other related documentation.
8 |
9 | ## glTF Specification and JSON Schemas
10 | [glTF 1.0](1.0)
11 |
12 | [glTF 2.0](2.0)
13 |
14 | ## glTF Extensions
15 | [glTF Extension Registry](../extensions)
16 |
17 | ## glTF 2.0 overview
18 |
19 |
20 |
21 |
22 | Diagram by Marco Hutter ( (repo) ).
23 |
24 |
--------------------------------------------------------------------------------