forked from KhronosGroup/glTF
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnode.schema.json
83 lines (83 loc) · 4 KB
/
node.schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
{
"$schema" : "http://json-schema.org/draft-03/schema",
"title" : "node",
"type" : "object",
"description" : "A node in the node hierarchy. Nodes can reference meshes, cameras, lights, or skins.",
"extends" : { "$ref" : "glTFChildOfRootProperty.schema.json" },
"properties" : {
"camera" : {
"extends" : { "$ref" : "glTFid.schema.json" },
"description" : "The id (JSON property name) of the camera referenced by this node. A node will have either the camera, light, meshes, or instanceSkin property defined."
},
"children" : {
"type" : "array",
"description" : "The ids (JSON property name) of this node's children.",
"items" : {
"$ref" : "glTFid.schema.json"
},
"uniqueItems" : true,
"default" : []
},
"instanceSkin" : {
"extends" : { "$ref" : "nodeInstanceSkin.schema.json" },
"description" : "An instance of a skin."
},
"jointName" : {
"extends" : { "$ref" : "glTFid.schema.json" },
"description" : "Name used when this node is a joint in a skin. When this node is a skin, instanceSkin will also be defined."
},
"light" : {
"extends" : { "$ref" : "glTFid.schema.json" },
"description" : "The id (JSON property name) of the light referenced by this node. A node will have either the camera, light, meshes, or instanceSkin property defined."
},
"matrix" : {
"type" : "array",
"description" : "A floating-point 4x4 transformation matrix stored in column-major order. A node will have either a matrix property defined or any combination of rotation, scale, and translation properties defined. If none are provided, the transform is the identity. WebGL: see uniformMatrix4fv with the transpose parameter equal to false.",
"items" : {
"type": "number"
},
"minItems" : 16,
"maxItems" : 16,
"default" : [ 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0 ]
},
"meshes" : {
"type" : "array",
"description" : "The ids (JSON property name) of the meshes in this node. Multiple meshes are allowed so each can share the same transform matrix. A node will have either the camera, light, meshes, or instanceSkin property defined.",
"items" : {
"$ref" : "glTFid.schema.json"
},
"uniqueItems" : true
},
"rotation" : {
"type" : "array",
"description" : "The node's quaternion rotation. A node will have either a matrix property defined or any combination of rotation, scale, and translation properties defined. If none are provided, the transform is the identity.",
"items" : {
"type": "number"
},
"minItems" : 4,
"maxItems" : 4,
"default" : [ 1.0, 0.0, 0.0, 0.0 ]
},
"scale" : {
"type" : "array",
"description" : "The node's non-uniform scale. A node will have either a matrix property defined or any combination of rotation, scale, and translation properties defined. If none are provided, the transform is the identity.",
"items" : {
"type": "number"
},
"minItems" : 3,
"maxItems" : 3,
"default" : [ 1.0, 1.0, 1.0 ]
},
"translation" : {
"type" : "array",
"description" : "The node's translation. A node will have either a matrix property defined or any combination of rotation, scale, and translation properties defined. If none are provided, the transform is the identity.",
"items" : {
"type": "number"
},
"minItems" : 3,
"maxItems" : 3,
"default" : [ 0.0, 0.0, 0.0 ]
}
},
"additionalProperties" : false
}