GLTF SCHEMAS

When you install the SDK it will add a folder that contains a number of glTF schema files. These files are JSON formatted and can be used with tools other than 3Ds Max or Blender to create your own import/export tools and other plugins. You can find more information about the glTF schema format from the following link:

 

If you are using 3Ds Max, then installing the SDK should also have installed a plugin for the version of 3Ds Max that you are using, and this permits you to use the schemas listed here without having to do anything further. You can find more information on the plugin contents, here:

 

For information on how to use the Blender plugin that uses these material schemas, please see here:

 

The schemas available are as follows:

Used to add the Collision Material parameter to materials.

  • boxcollision.schema.json
  • collision.schema.json
  • cylindercollision.schema.json
  • gltf.ASOBO_collision_object.schema.json
  • spherecollision.schema.json
	"ASOBO_collision_object" : {
}

Used to add a second Occlusion Texture sampled on the UV2 of a material.

  • gltf.ASOBO_extra_occlusion_texture.schema.json
"ASOBO_extra_occlusion" : {
    "extraOcclusionTexture" : {
        "index" : 1,
        "texCoord": 1
    }
}

Used to describe gizmos for collisions. It could be Box, Cylinder or Sphere.

  • boxgizmo.schema.json
  • cylindergizmo.schema.json
  • gizmo.schema.json
  • gltf.ASOBO_gizmo_object.schema.json
  • gltf.ASOBO_tags.schema.json
  • spheregizmo.schema.json
"ASOBO_gizmo_object": {
    "gizmo_objects": [
        {
        "translation": [
            <x>,
            <y>,
            <z>
            ],
        "type": "sphere",
        "params": {
            "radius": <radius>
            },
        "extensions": {
            "ASOBO_tags": {
                "tags": [
                    "Collision"
                    ]
                }
            }
        }
    ]
}

Used to describe some functionality related to lighting.

  • gltf.ASOBO_macro_light.schema.json
"ASOBO_macro_light" : {
    "color" : [
        1,
        1,
        1
        ],
    "intensity" : 1000,
    "cone_angle" : 74.99999867197056,
    "has_symmetry" : true,
    "flash_frequency" : 0.7199999690055847,
    "flash_duration" : 0.08999999612569809,
    "flash_phase" : 0,
    "rotation_speed" : 0,
    "day_night_cycle" : false
}

Used to enable/disable the alpha component dither property for the material.

  • gltf.ASOBO_material_alphamode_dither.schema.json
"ASOBO_material_alphamode_dither": {
    "enabled": true
}

Used to define an Anisotropic material. The specular on the material is offset by the two roughness components following a custom direction in tangent space.

  • gltf.ASOBO_material_anisotropic_v2.schema.json
"ASOBO_material_anisotropic" : {
    "anisoDirectionRoughnessTexture" : {
        "index" : 0
    }
}

Used to set a factor to blend the base color, metallic, roughness, normal, emissive, and occlusion textures with. Only required by Decal, GeoDecalFrosted, and GeoDecal Blended Mask materials.

  • gltf.ASOBO_material_blend_gbuffer.schema.json
"ASOBO_material_blend_gbuffer" : {
    "enabled" : true,
    "baseColorBlendFactor" : 1,
    "metallicBlendFactor" : 0,
    "roughnessBlendFactor" : 1,
    "normalBlendFactor" : 1,
    "emissiveBlendFactor" : 1,
    "occlusionBlendFactor" : 1
}

Used to describe ClearCoat material parameters.

  • gltf.ASOBO_material_clear_coat_v2.schema.json
"ASOBO_material_clear_coat_v2": {
    "clearcoatRoughnessFactor": 0.25,
										    "clearcoatNormalFactor": 0.5,
										    "clearcoatColorNormalTiling": 2.0
}

Used to describe ClearCoat material parameters.

  • gltf.ASOBO_material_clear_coat_v2.schema.json
"ASOBO_material_clear_coat_v2": {
    "clearcoatRoughnessFactor": 0.25,
										    "clearcoatNormalFactor": 0.5,
										    "clearcoatColorNormalTiling": 2.0
}

Used to describe parameters used in the creation of Detail Maps.

  • gltf.ASOBO_material_detail_map.schema.json
"ASOBO_material_detail_map": {
    "UVScale": 10.0,
    "blendThreshold": 0.25,
    "detailColorTexture": {
        "index": 2
    },
    "detailNormalTexture": {
        "scale": 0.4,
        "index": 3
    },
    "detailMetalRoughAOTexture": {
        "index": 4
    },
    "blendMaskTexture": {
        "index": 5
    }
}

Used to add a wear and tear or dirt/grime overlay to the standard and clear-coat materials.

  • gltf.ASOBO_material_dirt.schema.json
"ASOBO_material_dirt": {
    "dirtUvScale": 10.0,
    "dirtBlendSharpness": 1.0,
    "dirtBlendAmount": 0.1,
    "dirtTexture": {
        "index": 0
    },
    "dirtOcclusionRoughnessMetallicTexture": {
        "index": 1
    }
}

Used to enable or disable motion blur for a material.

  • gltf.ASOBO_material_disable_motion_blur.schema.json
"ASOBO_material_disable_motion_blur" : {
    "enabled" : true
}

Used to set the Draw Order for a material, ie: set what has to be draw in front of (or underneath) other materials.

  • gltf.ASOBO_material_draw_order.schema.json
"ASOBO_material_draw_order" : {
    "drawOrderOffset" : 5
}

Used to enable or disable the EnvironmentOccluder material property.

  • gltf.ASOBO_material_environment_occluder.schema.json
"ASOBO_material_environment_occluder" : {
    "enabled" : true
}

Used to enable or disable the FakeTerrain material property.

  • gltf.ASOBO_material_fake_terrain.schema.json
"ASOBO_material_fake_terrain" : {
    "enabled" : true
}

Used to set the fresnel factor and the fresnel opacity factor properties of the FresnelFade material.

  • gltf.ASOBO_material_fresnel_fade.schema.json
"ASOBO_material_fresnel_fade" : {
    "fresnelFactor" : 1.4199999570846558,
    "fresnelOpacityOffset" : 0.7000000476837158
}

Used to set the mode and sharpness factor for the GeoDecal Blended Mask material.

  • gltf.ASOBO_material_geometry_decal.schema.json
"ASOBO_material_geometry_decal": {
    "blendSharpnessFactor": 1.0,
    "mode": "default"
}

Used to enable/disable the ghost effect of the Ghost material, as well as set its bias, scale, and power.

  • gltf.ASOBO_material_ghost_effect.schema.json
"ASOBO_material_ghost_effect" : {
    "bias" : 1,
    "scale" : 1,
    "power" : 1
}

Used to set the deformation factor for Glass materials.

  • gltf.ASOBO_material_glass.schema.json
"ASOBO_material_glass" : {
    "glassDeformationFactor" : 0.32999998331069946
}

Used to enable or disable the Invisible material.

  • gltf.ASOBO_material_invisible.schema.json
"ASOBO_material_invisible" : {
    "enabled" : true
}

Used to set parameters for the ParallaxWindow material.

  • gltf.ASOBO_material_parallax_window.schema.json
"ASOBO_material_parallax_window" : {
    "parallaxScale" : 1,
    "roomSizeXScale" : 0.3400000333786011,
    "roomSizeYScale" : 1.5699999332427979,
    "roomNumberXY" : 5,
    "corridor" : true,
    "behindWindowMapTexture" : {
        "index" : 1
    }
}

Used to set parameters for the ParallaxWindow material.

  • gltf.ASOBO_material_pearlescent.schema.json
"ASOBO_material_pearlescent" : {
    "pearlShift" : 1.4399999380111694,
    "pearlRange" : 1.2300000190734863,
    "pearlBrightness" : 1
}

Used to set rain parameters for the ClearCoat and Windshield materials.

  • gltf.ASOBO_material_rain_options.schema.json
"ASOBO_material_rain_options": {
    "rainDropScale": 2.0,
										    "rainDropSide": false
}

Used to set Sail material parameters.

  • gltf.ASOBO_material_sail.schema.json
"ASOBO_material_sail": {
    "sailLightAbsorption": 0.3
}

Used to add the Don't Cast Shadows option to a material.

  • gltf.ASOBO_material_shadow_options.schema.json
"ASOBO_material_shadow_options" : {
    "noCastShadow" : true
}

Used to enable and set parameters for SSS (Sub-Surface Scattering) materials.

  • gltf.ASOBO_material_SSS.schema.json
"ASOBO_material_SSS" : {
    "SSSColor" : [
        0.01829090155661106,
        0.8000000715255737,
        0.029998445883393288,
        1
        ],
										    "opacityTexture": {
         "index": 3
    }
}

Used to add and set various parameters related to the material texture UV Options.

  • gltf.ASOBO_material_UV_options.schema.json
"ASOBO_material_UV_options" : {
    "AOUseUV2" : false,
    "clampUVX" : true,
    "clampUVY" : true,
    "clampUVZ" : false,
    "UVOffsetU" : -0.47999998927116394,
    "UVOffsetV" : 1.4399999380111694,
    "UVTilingU" : 2.0199999809265137,
    "UVTilingV" : 2.2899999618530273,
    "UVRotation" : 1.8299999237060547
}

Used to add Windflex effects to materials.

  • gltf.ASOBO_material_wind_flex.schema.json
"ASOBO_material_wind_flex " : {
    "windFlexNormal" : false
}

Used to define the parameters required by the Windshield material.

  • gltf.ASOBO_material_windshield_v3.schema.json
"ASOBO_material_windshield_v3": {
    "wiperMaskTexture": {
        "index": 6
    },
    "windshieldDetailNormalTexture": {
        "index": 7
    },
    "scratchesNormalTexture": {
        "index": 8
    },
    "windshieldInsectsTexture": {
        "index": 9
    },
    "windshieldInsectsMaskTexture": {
        "index": 10
    },
    "detail1Rough": 1.0,
    "detail2Rough": 1.0,
    "detail1Opacity": 1.0,
    "detail2Opacity": 1.0,
    "microScratchesTiling": 0.5,
    "microScratchesStrength": 0.5,
    "detailNormalRefractScale": 0.5,
    "wiperLines": true,
    "wiperLinesTiling": 0.5,
    "wiperLinesStrength": 0.5,
    "rainDropScale": 100.0,
    "wiper1State": 0.5
}

Used to add support for the DirectX normal map convention

  • gltf.ASOBO_normal_map_convention.schema.json
"ASOBO_normal_map_convention": {
    "tangent_space_convention": "DirectX"
}

Used to set AO Strength parameter for the material.

  • gltf.ASOBO_occlusion_strength.schema.json
"ASOBO_occlusion_strength": {
    "strength": 0.0
}

Used to describe material animation in the glTF. See here for more information: Animated Materials

  • gltf.ASOBO_property_animation.schema.json
"ASOBO_property_animation": {
    "channels": [
        {
        "sampler": 1,
        "target": "materials/14/extensions/ASOBO_material_UV_options/UVOffsetV"
        }
    ]
}

Used to specify meshes which need to be deformed, following a physical mesh.

  • gltf.ASOBO_softbody_mesh.schema.json
"ASOBO_softbody_mesh": {
}