-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathdisplay_descriptor_schema_v1.json
234 lines (234 loc) · 7.88 KB
/
display_descriptor_schema_v1.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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "OSVR Display Descriptor (v1)",
"description": "This schema documents and guides creation of a display descriptor, that describes properties of a head-mounted display",
"type": "object",
"properties": {
"meta": {
"title": "JSON Schema metadata",
"description": "Details about the JSON display descriptor schema.",
"type": "object",
"properties": {
"schemaVersion": {
"title": "Schema Version",
"description": "Version number of the display descriptor JSON schema. If you're using this schema, the value should be 1",
"type": "number",
"default": 1
}
}
},
"hmd": {
"title": "HMD",
"description": "Properties of a head-mounted display.",
"type": "object",
"properties": {
"device": {
"title": "HMD Device Description",
"description": "Describes HMD hardware and metadata.",
"type": "object",
"properties": {
"vendor": {
"title": "Device vendor/manufacturer",
"type": "string"
},
"model": {
"title": "Device model",
"type": "string"
},
"Version": {
"title": "Device version",
"type": "string"
},
"num_displays": {
"title": "Number of physical screens (NOT USED)",
"description": "This is redundant with information elsewhere in the schema and should not be used.",
"type": "integer",
"default": 1
},
"Note": {
"title": "Notes about the device",
"type": "string"
}
},
"required": [
"vendor",
"model"
]
},
"field_of_view": {
"title": "HMD Field of View Description",
"description": "Defines the optical parameters of the HMD. Since some HMDs have partial overlap – meaning that the viewing direction of the left and right eye are not identical – we define the field of view of just one eye and then the overlap between them.",
"type": "object",
"properties": {
"monocular_horizontal": {
"title": "Monocular Horizontal FOV in degrees",
"type": "number"
},
"monocular_vertical": {
"title": "Monocular Vertical FOV in degrees",
"type": "number"
},
"overlap_percent": {
"title": "Percentage of horizontal FOV that is 'overlapped'.",
"type": "number"
},
"pitch_tilt": {
"title": "Pitch tilt in degrees (NOT HANDLED)",
"description": "Some HMDs have their field of view tilted downwards. In this case, pitch_tilt would have a non-zero value in degrees, where positive is a downward tilt.",
"type": "number",
"default": 0
}
},
"required": [
"monocular_horizontal",
"monocular_vertical",
"overlap_percent"
]
},
"resolutions": {
"title": "Supported resolutions",
"type": "array",
"minItems": 1,
"maxItems": 1,
"items": {
"title": "HMD Resolution Description",
"description": "Describes HMD properties related to resolution.",
"type": "object",
"properties": {
"width": {
"title": "Horizontal size, in pixels, of a video input.",
"type": "integer"
},
"height": {
"title": "Vertical size, in pixels, of a video input.",
"type": "integer"
},
"video_inputs": {
"title": "Number of distinct video inputs",
"description": "Some HMDs have 2 separate inputs, one for each eye.",
"type": "integer",
"default": 1
},
"display_mode": {
"title": "Display Mode",
"description": "If a single input is used in side-by-side mode, width and height show the entire width and height of both sides combined.",
"enum": [
"horz_side_by_side",
"vert_side_by_side",
"full_screen"
],
"default": "horz_side_by_side"
}
},
"required": [
"width",
"height",
"video_inputs",
"display_mode"
]
}
},
"distortion": {
"title": "HMD Distortion Description",
"description": "Describes HMD properties related to distortion shader.",
"type": "object",
"properties": {
"k1_red": {
"title": "K1 Red distortion value",
"type": "number",
"default": 0
},
"k1_green": {
"title": "K1 Green distortion value",
"type": "number",
"default": 0
},
"k1_blue": {
"title": "K1 Blue distortion value",
"type": "number",
"default": 0
}
},
"required": [
"k1_red",
"k1_green",
"k1_blue"
]
},
"rendering": {
"title": "HMD Rendering Description (NOT HANDLED)",
"description": "Describes HMD properties related to rendering. These parameters are not used - please use the per-eye rotate_180 parameter for now",
"type": "object",
"properties": {
"right_roll": {
"title": "Right eye roll amount (degrees)",
"type": "number",
"default": 0
},
"left_roll": {
"title": "Left eye roll amount (degrees)",
"type": "number",
"default": 0
}
},
"required": [
"right_roll",
"left_roll"
]
},
"eyes": {
"title": "HMD Eyes Description",
"description": "Describes HMD properties related to eyes.",
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"properties": {
"center_proj_x": {
"title": "Horizontal center of projection",
"type": "number",
"minimum": 0,
"maximum": 1
},
"center_proj_y": {
"title": "Vertical center of projection",
"type": "number",
"minimum": 0,
"maximum": 1
},
"rotate_180": {
"anyOf": [
{
"title": "Flip Display Rotation",
"description": "Indicates if the view needs to flipped 180 degrees on the z axis (that is, in the plane of the screen) - 1 for true, 0 for false.",
"type": "integer",
"minimum": 0,
"maximum": 1
},
{
"title": "Flip Display Rotation",
"description": "Indicates if the view needs to flipped 180 degrees on the z axis (that is, in the plane of the screen)",
"type": "boolean",
"default": false
}
]
}
},
"required": [
"center_proj_y",
"center_proj_x"
]
}
},
"required": [
"device",
"field_of_view",
"resolutions",
"distortion",
"rendering",
"eyes"
]
}
}
}
}