Add Games File

This commit is contained in:
Ivan Anikin
2026-05-19 13:42:41 +07:00
parent 7908479e0c
commit 12e7e22c1a
3672 changed files with 125922 additions and 0 deletions
@@ -0,0 +1,23 @@
{
"title": "VRMC_materials_hdr_emissiveMultiplier",
"type": "object",
"description": "A multiplier for emissiveFactor",
"allOf": [
{
"$ref": "glTFProperty.schema.json"
}
],
"properties": {
"emissiveMultiplier": {
"type": "number",
"description": "A multiplier for emissiveFactor",
"default": 1.0,
"minimum": 0.0
},
"extensions": {},
"extras": {}
},
"required": [
"emissiveMultiplier"
]
}
@@ -0,0 +1,176 @@
{
"title": "VRMC_materials_mtoon",
"type": "object",
"description": "",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_materials_mtoon"
},
"transparentWithZWrite": {
"type": "boolean",
"default": "false",
"description": "enable depth buffer when `alphaMode` is `BLEND`"
},
"renderQueueOffsetNumber": {
"type": "integer",
"description": "",
"default": 0,
"minimum": -9,
"maximum": 9
},
"shadeColorFactor": {
"type": "array",
"description": "",
"items": {
"type": "number",
"minimum": 0.0,
"maximum": 1.0
},
"default": [ 1.0, 1.0, 1.0 ],
"minItems": 3,
"maxItems": 3
},
"shadeMultiplyTexture": {
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"description": ""
},
"shadingShiftFactor": {
"type": "number",
"description": "Lighting",
"default": 0.0
},
"shadingShiftTexture": {
"allOf": [ { "$ref": "mtoon.shadingShiftTexture.schema.json" } ]
},
"shadingToonyFactor": {
"type": "number",
"description": "",
"default": 0.9,
"minimum": 0.0,
"maximum": 1.0
},
"giEqualizationFactor": {
"type": "number",
"description": "",
"default": 0.9,
"minimum": 0.0,
"maximum": 1.0
},
"matcapFactor": {
"type": "array",
"description": "",
"items": {
"type": "number",
"minimum": 0.0,
"maximum": 1.0
},
"default": [ 1.0, 1.0, 1.0 ],
"minItems": 3,
"maxItems": 3
},
"matcapTexture": {
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"description": "MatCap"
},
"parametricRimColorFactor": {
"type": "array",
"description": "Rim",
"items": {
"type": "number",
"minimum": 0.0,
"maximum": 1.0
},
"default": [ 0.0, 0.0, 0.0 ],
"minItems": 3,
"maxItems": 3
},
"rimMultiplyTexture": {
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"description": ""
},
"rimLightingMixFactor": {
"type": "number",
"description": "",
"default": 1.0,
"minimum": 0.0,
"maximum": 1.0
},
"parametricRimFresnelPowerFactor": {
"type": "number",
"description": "",
"default": 5.0,
"minimum": 0.0
},
"parametricRimLiftFactor": {
"type": "number",
"description": "",
"default": 0.0
},
"outlineWidthMode": {
"title": "OutlineWidthMode",
"type": "string",
"enum": [
"none",
"worldCoordinates",
"screenCoordinates"
],
"default": "none",
"description": "Outline"
},
"outlineWidthFactor": {
"type": "number",
"description": "",
"default": 0.0,
"minimum": 0.0
},
"outlineWidthMultiplyTexture": {
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"description": ""
},
"outlineColorFactor": {
"type": "array",
"description": "",
"items": {
"type": "number",
"minimum": 0.0,
"maximum": 1.0
},
"default": [ 0.0, 0.0, 0.0 ],
"minItems": 3,
"maxItems": 3
},
"outlineLightingMixFactor": {
"type": "number",
"description": "",
"default": 1.0,
"minimum": 0.0,
"maximum": 1.0
},
"uvAnimationMaskTexture": {
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"description": ""
},
"uvAnimationScrollXSpeedFactor": {
"type": "number",
"default": 0,
"description": ""
},
"uvAnimationScrollYSpeedFactor": {
"type": "number",
"default": 0,
"description": ""
},
"uvAnimationRotationSpeedFactor": {
"type": "number",
"default": 0,
"description": ""
},
"extensions": { },
"extras": { }
},
"required": [
"specVersion"
]
}
@@ -0,0 +1,17 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Shading Shift Texture Info",
"type": "object",
"allOf": [ { "$ref": "textureInfo.schema.json" } ],
"properties": {
"index": { },
"texCoord": { },
"scale": {
"type": "number",
"description": "The scalar multiplier applied to the texture.",
"default": 1.0
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,28 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Aim Constraint",
"type": "object",
"description": "A constraint that makes it look at a source object.",
"allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
"properties": {
"source": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "The index of the node constrains the node."
},
"aimAxis": {
"description": "The aim axis of the constraint.",
"type": "string",
"enum": [ "PositiveX", "NegativeX", "PositiveY", "NegativeY", "PositiveZ", "NegativeZ" ]
},
"weight": {
"type": "number",
"description": "The weight of the constraint.",
"minimum": 0.0,
"maximum": 1.0,
"default": 1.0
},
"extensions": { },
"extras": { }
},
"required": [ "source", "aimAxis" ]
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Constraint",
"type": "object",
"description": "Contains roll, aim, or rotation",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"roll": {
"$ref": "VRMC_node_constraint.rollConstraint.schema.json"
},
"aim": {
"$ref": "VRMC_node_constraint.aimConstraint.schema.json"
},
"rotation": {
"$ref": "VRMC_node_constraint.rotationConstraint.schema.json"
},
"extensions": { },
"extras": { }
},
"oneOf": [
{ "required": [ "roll" ] },
{ "required": [ "aim" ] },
{ "required": [ "rotation" ] }
]
}
@@ -0,0 +1,28 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Roll Constraint",
"type": "object",
"description": "A constraint that transfers a rotation around one axis of a source.",
"allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
"properties": {
"source": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "The index of the node constrains the node."
},
"rollAxis": {
"description": "The roll axis of the constraint.",
"type": "string",
"enum": [ "X", "Y", "Z" ]
},
"weight": {
"type": "number",
"description": "The weight of the constraint.",
"minimum": 0.0,
"maximum": 1.0,
"default": 1.0
},
"extensions": { },
"extras": { }
},
"required": [ "source", "rollAxis" ]
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Rotation Constraint",
"type": "object",
"description": "A constraint that links the rotation with a source.",
"allOf": [ { "$ref": "glTFChildOfRootProperty.schema.json" } ],
"properties": {
"source": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "The index of the node constrains the node."
},
"weight": {
"type": "number",
"description": "The weight of the constraint.",
"minimum": 0.0,
"maximum": 1.0,
"default": 1.0
},
"extensions": { },
"extras": { }
},
"required": [ "source" ]
}
@@ -0,0 +1,19 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "VRMC_node_constraint extension",
"type": "object",
"description": "glTF extension that defines constraints.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_node_constraint"
},
"constraint": {
"$ref": "VRMC_node_constraint.constraint.schema.json"
},
"extensions": { },
"extras": { }
},
"required": [ "specVersion", "constraint" ]
}
@@ -0,0 +1,22 @@
{
"title": "Collider",
"type": "object",
"description": "collider definition for SpringBone",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "The node index."
},
"shape": {
"allOf": [ { "$ref": "VRMC_springBone.shape.schema.json" } ],
"description": ""
},
"extensions": { },
"extras": { }
},
"required": [
"node",
"shape"
]
}
@@ -0,0 +1,25 @@
{
"title": "ColliderGroup",
"type": "object",
"description": "collider group definition for SpringBone",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"name": {
"type": "string",
"description": "Name of the ColliderGroup"
},
"colliders": {
"type": "array",
"items": {
"$ref": "glTFid.schema.json"
},
"description": "An array of colliders.",
"minItems": 1
},
"extensions": { },
"extras": { }
},
"required": [
"colliders"
]
}
@@ -0,0 +1,56 @@
{
"title": "SpringBoneJoint",
"type": "object",
"description": "A bone joint of VRMCSpringBone.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "The node index."
},
"hitRadius": {
"type": "number",
"description": "The radius of spring sphere.",
"default": 0.0,
"minimum": 0.0
},
"stiffness": {
"type": "number",
"description": "The force to return to the initial pose.",
"default": 1.0,
"minimum": 0.0
},
"gravityPower": {
"type": "number",
"description": "Gravitational acceleration.",
"default": 0.0,
"minimum": 0.0
},
"gravityDir": {
"type": "array",
"description": "The direction of gravity. A gravity other than downward direction also works.",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3,
"default": [
0.0,
-1.0,
0.0
]
},
"dragForce": {
"type": "number",
"description": "Air resistance. Deceleration force.",
"default": 0.5,
"minimum": 0.0,
"maximum": 1.0
},
"extensions": { },
"extras": { }
},
"required": [
"node"
]
}
@@ -0,0 +1,39 @@
{
"title": "VRMCSpringBone",
"type": "object",
"description": "SpringBone makes objects such as costumes and hair swaying",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_springBone"
},
"colliders": {
"type": "array",
"description": "An array of colliders.",
"items": {
"$ref": "VRMC_springBone.collider.schema.json"
},
"minItems": 1
},
"colliderGroups": {
"type": "array",
"description": "An array of colliderGroups.",
"items": {
"$ref": "VRMC_springBone.colliderGroup.schema.json"
},
"minItems": 1
},
"springs": {
"type": "array",
"description": "An array of springs.",
"items": {
"$ref": "VRMC_springBone.spring.schema.json"
},
"minItems": 1
},
"extensions": { },
"extras": { }
},
"required": [ "specVersion" ]
}
@@ -0,0 +1,68 @@
{
"title": "ColliderShape",
"type": "object",
"description": "Shape of collider. Have one of sphere and capsule",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"sphere": {
"type": "object",
"title": "ColliderShapeSphere",
"properties": {
"offset": {
"type": "array",
"description": "The sphere center. vector3",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"radius": {
"type": "number",
"description": "The sphere radius",
"default": 0.0,
"minimum": 0.0
}
}
},
"capsule": {
"type": "object",
"title": "ColliderShapeCapsule",
"properties": {
"offset": {
"type": "array",
"description": "The capsule head. vector3",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"radius": {
"type": "number",
"description": "The capsule radius",
"default": 0.0,
"minimum": 0.0
},
"tail": {
"type": "array",
"description": "The capsule tail. vector3",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
}
}
},
"extensions": { },
"extras": { }
},
"oneOf": [
{ "required": [ "sphere" ] },
{ "required": [ "capsule" ] }
]
}
@@ -0,0 +1,38 @@
{
"title": "Spring",
"type": "object",
"description": "A bone group of VRMCSpringBone.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"name": {
"type": "string",
"description": "Name of the Spring"
},
"joints": {
"type": "array",
"description": "Joints of the spring. Except for the first element, a previous joint of the array must be an ancestor of the joint.",
"items": {
"$ref": "VRMC_springBone.joint.schema.json"
},
"minItems": 1
},
"colliderGroups": {
"type": "array",
"description": "Indices of ColliderGroups that detect collision with this spring.",
"items": {
"$ref": "glTFid.schema.json",
"description": "Index in colliderGroups."
},
"minItems": 1
},
"center": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "An index of node which is used as a root of center space."
},
"extensions": { },
"extras": { }
},
"required": [
"joints"
]
}
@@ -0,0 +1,19 @@
{
"title": "VRMCSpringBoneExtendedCollider",
"type": "object",
"description": "An extended collider for VRMC_springBone.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_springBone_extended_collider."
},
"shape": {
"allOf": [ { "$ref": "VRMC_springBone_extended_collider.shape.schema.json" } ],
"description": "The shape of the collider."
},
"extensions": { },
"extras": { }
},
"required": [ "specVersion" ]
}
@@ -0,0 +1,105 @@
{
"title": "ExtendedColliderShape",
"type": "object",
"description": "The shape of the collider. One of sphere, capsule, or plane is defined.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"sphere": {
"type": "object",
"title": "ExtendedColliderShapeSphere",
"properties": {
"offset": {
"type": "array",
"description": "The offset of the sphere from the origin in the local space.",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"radius": {
"type": "number",
"description": "The radius of the sphere.",
"default": 0.0,
"minimum": 0.0
},
"inside": {
"type": "boolean",
"description": "If true, the collider prevents spring bones from going outside of the sphere instead.",
"default": false
}
}
},
"capsule": {
"type": "object",
"title": "ExtendedColliderShapeCapsule",
"properties": {
"offset": {
"type": "array",
"description": "The offset of the capsule head from the origin in the local space.",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"radius": {
"type": "number",
"description": "The radius of the capsule.",
"default": 0.0,
"minimum": 0.0
},
"tail": {
"type": "array",
"description": "The offset of the capsule tail from the origin in the local space.",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"inside": {
"type": "boolean",
"description": "If true, the collider prevents spring bones from going outside of the capsule instead.",
"default": false
}
}
},
"plane": {
"type": "object",
"title": "ExtendedColliderShapePlane",
"properties": {
"offset": {
"type": "array",
"description": "The offset of the plane from the origin in the local space.",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 0.0],
"minItems": 3,
"maxItems": 3
},
"normal": {
"type": "array",
"description": "The normal of the plane in the local space. Must be normalized.",
"items": {
"type": "number"
},
"default": [0.0, 0.0, 1.0],
"minItems": 3,
"maxItems": 3
}
}
},
"extensions": { },
"extras": { }
},
"oneOf": [
{ "required": [ "sphere" ] },
{ "required": [ "capsule" ] },
{ "required": [ "plane" ] }
]
}
@@ -0,0 +1,40 @@
{
"title": "MaterialColorBind",
"type": "object",
"description": "Material color value associated with a expression",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"material": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "target material"
},
"type": {
"title": "MaterialColorType",
"type": "string",
"enum": [
"color",
"emissionColor",
"shadeColor",
"matcapColor",
"rimColor",
"outlineColor"
]
},
"targetValue": {
"type": "array",
"description": "target color",
"items": {
"type": "number"
},
"minItems": 4,
"maxItems": 4
},
"extensions": { },
"extras": { }
},
"required": [
"material",
"type",
"targetValue"
]
}
@@ -0,0 +1,27 @@
{
"title": "MorphTargetBind",
"type": "object",
"description": "Morph target value associated with a expression",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "The index of the node that attached to target mesh."
},
"index": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "The index of the morph target in the mesh."
},
"weight": {
"type": "number",
"description": "The weight value of target morph target."
},
"extensions": { },
"extras": { }
},
"required": [
"node",
"index",
"weight"
]
}
@@ -0,0 +1,72 @@
{
"title": "Expression",
"type": "object",
"description": "Definition of expression by weighted animation",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"morphTargetBinds": {
"type": "array",
"description": "Specify a morph target",
"items": {
"$ref": "VRMC_vrm.expressions.expression.morphTargetBind.schema.json"
},
"minItems": 1
},
"materialColorBinds": {
"type": "array",
"description": "Material color animation references",
"items": {
"$ref": "VRMC_vrm.expressions.expression.materialColorBind.schema.json"
},
"minItems": 1
},
"textureTransformBinds": {
"type": "array",
"description": "Texture transform animation references",
"items": {
"$ref": "VRMC_vrm.expressions.expression.textureTransformBind.schema.json"
},
"minItems": 1
},
"isBinary": {
"type": "boolean",
"default": false,
"description": "A value greater than 0.5 is 1.0, otherwise 0.0"
},
"overrideBlink": {
"title": "ExpressionOverrideType",
"type": "string",
"enum": [
"none",
"block",
"blend"
],
"default": "none",
"description": "Override values of Blink expressions when this Expression is enabled"
},
"overrideLookAt": {
"title": "ExpressionOverrideType",
"type": "string",
"enum": [
"none",
"block",
"blend"
],
"default": "none",
"description": "Override values of LookAt expressions when this Expression is enabled"
},
"overrideMouth": {
"title": "ExpressionOverrideType",
"type": "string",
"enum": [
"none",
"block",
"blend"
],
"default": "none",
"description": "Override values of Mouth expressions when this Expression is enabled"
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,43 @@
{
"title": "TextureTransformBind",
"type": "object",
"description": "Texture transform value associated with a expression",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"material": {
"allOf": [ { "$ref": "glTFid.schema.json" } ],
"description": "target material"
},
"scale": {
"type": "array",
"description": "uv scaling for TEXCOORD_0",
"items": {
"type": "number"
},
"minItems": 2,
"maxItems": 2,
"default": [
1,
1
]
},
"offset": {
"type": "array",
"description": "uv offset for TEXCOORD_0",
"items": {
"type": "number"
},
"minItems": 2,
"maxItems": 2,
"default": [
0,
0
]
},
"extensions": { },
"extras": { }
},
"required": [
"material"
]
}
@@ -0,0 +1,77 @@
{
"title": "Expressions",
"type": "object",
"description": "Definition of expressions",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"preset": {
"type": "object",
"description": "Preset expressions",
"properties": {
"happy": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"angry": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"sad": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"relaxed": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"surprised": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"aa": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"ih": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"ou": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"ee": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"oh": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"blink": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"blinkLeft": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"blinkRight": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"lookUp": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"lookDown": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"lookLeft": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"lookRight": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
},
"neutral": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
}
}
},
"custom": {
"type": "object",
"description": "Custom expressions",
"additionalProperties": {
"$ref": "VRMC_vrm.expressions.expression.schema.json"
}
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,24 @@
{
"title": "MeshAnnotation",
"type": "object",
"description": "Specify how the mesh should be interpreted by the camera",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "The index of the node that attached to target mesh."
},
"type": {
"title": "FirstPersonType",
"type": "string",
"enum": ["auto", "both", "thirdPersonOnly", "firstPersonOnly"],
"description": "How the camera interprets the mesh."
},
"extensions": { },
"extras": { }
},
"required": [
"node",
"type"
]
}
@@ -0,0 +1,18 @@
{
"title": "FirstPerson",
"type": "object",
"description": "First-person perspective settings",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"meshAnnotations": {
"type": "array",
"description": "Mesh rendering annotation for cameras.",
"items": {
"$ref": "VRMC_vrm.firstPerson.meshAnnotation.schema.json"
},
"minItems": 1
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,15 @@
{
"title": "HumanBone",
"type": "object",
"description": "Represents a single bone of a Humanoid.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "Represents a single glTF node tied to this humanBone."
},
"extensions": { },
"extras": { }
},
"required": [ "node" ]
}
@@ -0,0 +1,173 @@
{
"title": "HumanBones",
"type": "object",
"description": "Represents a set of humanBones of a humanoid.",
"properties": {
"hips": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"spine": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"chest": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"upperChest": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"neck": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"head": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftEye": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightEye": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"jaw": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftUpperLeg": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftLowerLeg": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftFoot": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftToes": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightUpperLeg": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightLowerLeg": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightFoot": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightToes": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftShoulder": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftUpperArm": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftLowerArm": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftHand": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightShoulder": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightUpperArm": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightLowerArm": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightHand": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbMetacarpal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftRingProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftRingIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftRingDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbMetacarpal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightRingProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightRingIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightRingDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleProximal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleIntermediate": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleDistal": {
"$ref": "VRMC_vrm.humanoid.humanBones.humanBone.schema.json"
}
},
"required": [ "hips", "spine", "head", "leftUpperLeg", "leftLowerLeg", "leftFoot", "rightUpperLeg", "rightLowerLeg", "rightFoot", "leftUpperArm", "leftLowerArm", "leftHand", "rightUpperArm", "rightLowerArm", "rightHand" ]
}
@@ -0,0 +1,14 @@
{
"title": "Humanoid",
"type": "object",
"description": "Correspondence between nodes and human bones",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"humanBones": {
"$ref": "VRMC_vrm.humanoid.humanBones.schema.json"
},
"extensions": { },
"extras": { }
},
"required": [ "humanBones" ]
}
@@ -0,0 +1,20 @@
{
"title": "LookAtRangeMap",
"type": "object",
"description": "Horizontal inward movement. The left eye moves right. The right eye moves left.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"inputMaxValue": {
"type": "number",
"minimum": 0.0,
"maximum": 180.0,
"description": "Yaw and pitch angles ( degrees ) between the head bone forward vector and the eye gaze LookAt vector"
},
"outputScale": {
"type": "number",
"description": "Degree for type.bone, Weight for type.expressions"
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,43 @@
{
"title": "LookAt",
"type": "object",
"description": "Eye gaze control",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"offsetFromHeadBone": {
"type": "array",
"description": "The origin of LookAt. Position offset from the head bone",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"type": {
"title": "LookAtType",
"type": "string",
"enum": [
"bone",
"expression"
]
},
"rangeMapHorizontalInner": {
"description": "Horizontal inward movement. The left eye moves right. The right eye moves left.",
"$ref": "VRMC_vrm.lookAt.rangeMap.schema.json"
},
"rangeMapHorizontalOuter": {
"description": "Horizontal outward movement. The left eye moves left. The right eye moves right.",
"$ref": "VRMC_vrm.lookAt.rangeMap.schema.json"
},
"rangeMapVerticalDown": {
"description": "Vertical downward movement. Both eyes move upwards",
"$ref": "VRMC_vrm.lookAt.rangeMap.schema.json"
},
"rangeMapVerticalUp": {
"description": "Vertical upward movement. Both eyes move downwards",
"$ref": "VRMC_vrm.lookAt.rangeMap.schema.json"
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,133 @@
{
"title": "Meta",
"type": "object",
"description": "",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"name": {
"type": "string",
"description": "The name of the model",
"minLength": 1
},
"version": {
"type": "string",
"description": "The version of the model"
},
"authors": {
"type": "array",
"description": "Authors of the model",
"items": {
"type": "string",
"minLength": 1
},
"minItems": 1
},
"copyrightInformation": {
"type": "string",
"description": "An information that describes the copyright of the model"
},
"contactInformation": {
"type": "string",
"description": "An information that describes the contact information of the author"
},
"references": {
"type": "array",
"description": "References / original works of the model",
"items": {
"type": "string"
},
"minItems": 1
},
"thirdPartyLicenses": {
"type": "string",
"description": "Third party licenses of the model, if required. You can use line breaks"
},
"thumbnailImage": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "The index to the thumbnail image of the model in gltf.images"
},
"licenseUrl": {
"type": "string",
"description": "A URL towards the license document this model refers to"
},
"avatarPermission": {
"title": "AvatarPermissionType",
"type": "string",
"enum": [
"onlyAuthor",
"onlySeparatelyLicensedPerson",
"everyone"
],
"default": "onlyAuthor",
"description": "A person who can perform as an avatar with this model"
},
"allowExcessivelyViolentUsage": {
"type": "boolean",
"default": false,
"description": "A flag that permits to use this model in excessively violent contents"
},
"allowExcessivelySexualUsage": {
"type": "boolean",
"default": false,
"description": "A flag that permits to use this model in excessively sexual contents"
},
"commercialUsage": {
"title": "CommercialUsageType",
"type": "string",
"enum": [
"personalNonProfit",
"personalProfit",
"corporation"
],
"default": "personalNonProfit",
"description": "An option that permits to use this model in commercial products"
},
"allowPoliticalOrReligiousUsage": {
"type": "boolean",
"default": false,
"description": "A flag that permits to use this model in political or religious contents"
},
"allowAntisocialOrHateUsage": {
"type": "boolean",
"default": false,
"description": "A flag that permits to use this model in contents contain anti-social activities or hate speeches"
},
"creditNotation": {
"title": "CreditNotationType",
"type": "string",
"enum": [
"required",
"unnecessary"
],
"default": "required",
"description": "An option that forces or abandons to display the credit of this model"
},
"allowRedistribution": {
"type": "boolean",
"default": false,
"description": "A flag that permits to redistribute this model"
},
"modification": {
"title": "ModificationType",
"type": "string",
"enum": [
"prohibited",
"allowModification",
"allowModificationRedistribution"
],
"default": "prohibited",
"description": "An option that controls the condition to modify this model"
},
"otherLicenseUrl": {
"type": "string",
"description": "Describe the URL links of other license"
},
"extensions": { },
"extras": { }
},
"required": [
"name",
"authors",
"licenseUrl"
]
}
@@ -0,0 +1,43 @@
{
"title": "VRMCVrm",
"type": "object",
"description": "",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_vrm"
},
"meta": {
"title": "Meta",
"type": "object",
"description": "Meta informations of the VRM model",
"$ref": "VRMC_vrm.meta.schema.json"
},
"humanoid": {
"$ref": "VRMC_vrm.humanoid.schema.json"
},
"firstPerson": {
"title": "FirstPerson",
"type": "object",
"description": "First-person perspective settings",
"$ref": "VRMC_vrm.firstPerson.schema.json"
},
"lookAt": {
"title": "LookAt",
"type": "object",
"description": "Eye gaze control",
"$ref": "VRMC_vrm.lookAt.schema.json"
},
"expressions": {
"$ref": "VRMC_vrm.expressions.schema.json"
},
"extensions": { },
"extras": { }
},
"required": [
"specVersion",
"meta",
"humanoid"
]
}
@@ -0,0 +1,16 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Expression",
"type": "object",
"description": "Represents a single expression.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "Represents a single glTF node mapped to this expression."
},
"extensions": { },
"extras": { }
},
"required": [ "node" ]
}
@@ -0,0 +1,66 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Expressions",
"type": "object",
"description": "An object which maps expressions to nodes.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"preset": {
"type": "object",
"description": "An object that contains definitions of preset expressions.",
"properties": {
"happy": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"angry": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"sad": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"relaxed": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"surprised": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"aa": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"ih": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"ou": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"ee": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"oh": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"blink": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"blinkLeft": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"blinkRight": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
},
"neutral": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
}
}
},
"custom": {
"type": "object",
"description": "An object that contains definitions of custom expressions.",
"additionalProperties": {
"$ref": "VRMC_vrm_animation.expressions.expression.schema.json"
}
},
"extensions": { },
"extras": { }
}
}
@@ -0,0 +1,16 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "HumanBone",
"type": "object",
"description": "Represents a single bone of a Humanoid.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "Represents a single glTF node mapped to this humanBone."
},
"extensions": { },
"extras": { }
},
"required": [ "node" ]
}
@@ -0,0 +1,169 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "HumanBones",
"type": "object",
"description": "An object which maps humanoid bones to nodes.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"hips": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"spine": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"chest": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"upperChest": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"neck": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"head": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"jaw": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftUpperLeg": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftLowerLeg": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftFoot": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftToes": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightUpperLeg": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightLowerLeg": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightFoot": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightToes": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftShoulder": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftUpperArm": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftLowerArm": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftHand": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightShoulder": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightUpperArm": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightLowerArm": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightHand": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbMetacarpal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftThumbDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftIndexDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftMiddleDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftRingProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftRingIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftRingDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"leftLittleDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbMetacarpal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightThumbDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightIndexDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightMiddleDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightRingProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightRingIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightRingDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleProximal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleIntermediate": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
},
"rightLittleDistal": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.humanBone.schema.json"
}
},
"required": [ "hips", "spine", "head", "leftUpperLeg", "leftLowerLeg", "leftFoot", "rightUpperLeg", "rightLowerLeg", "rightFoot", "leftUpperArm", "leftLowerArm", "leftHand", "rightUpperArm", "rightLowerArm", "rightHand" ]
}
@@ -0,0 +1,13 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "Humanoid",
"type": "object",
"description": "An object which describes about humanoid bones.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"humanBones": {
"$ref": "VRMC_vrm_animation.humanoid.humanBones.schema.json"
}
},
"required": [ "humanBones" ]
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "LookAt",
"type": "object",
"description": "An object which maps a eye gaze point to a node.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"node": {
"allOf": [{ "$ref": "glTFid.schema.json" }],
"description": "Represents a single glTF node represents the eye gaze point."
},
"offsetFromHeadBone": {
"type": "array",
"description": "The position offset of the origin of the LookAt from the humanoid head bone",
"items": {
"type": "number"
},
"minItems": 3,
"maxItems": 3
},
"extensions": { },
"extras": { }
},
"required": [ "node" ]
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-04/schema",
"title": "VRMC_vrm_animation extension",
"type": "object",
"description": "glTF extension that defines humanoid animations.",
"allOf": [ { "$ref": "glTFProperty.schema.json" } ],
"properties": {
"specVersion": {
"type": "string",
"description": "Specification version of VRMC_vrm_animation"
},
"humanoid": {
"$ref": "VRMC_vrm_animation.humanoid.schema.json"
},
"expressions": {
"$ref": "VRMC_vrm_animation.expressions.schema.json"
},
"lookAt": {
"$ref": "VRMC_vrm_animation.lookAt.schema.json"
},
"extensions": { },
"extras": { }
},
"required": [ "specVersion" ]
}