Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
189 changes: 189 additions & 0 deletions client_schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,189 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"definitions": {
"extension_name": {
"type": "string",
"description": "Name of an OpenXR extension",
"pattern": "^XR_([A-Z]+)(_([a-zA-Z0-9])+)+$"
},
"extension_with_details": {
"type": "object",
"properties": {
"name": {
"allOf": [
{
"title": "Extension name"
},
{
"$ref": "#/definitions/extension_name"
}
]
},
"notes": {
"type": "string",
"title": "Notes",
"description": "Free-form text about support of this extension"
}
},
"required": [
"name",
"notes"
]
},
"extension": {
"allOf": [
{
"title": "Supported Extension"
},
{
"anyOf": [
{
"$ref": "#/definitions/extension_name"
},
{
"$ref": "#/definitions/extension_with_details"
}
]
}
],
"examples": [
"XR_KHR_composition_layer_cylinder",
{
"name": "XR_EXT_hand_tracking",
"notes": "Currently in beta"
}
]
},
"platform": {
"type": "string",
"enum": [
"Windows (Desktop)",
"Windows (HoloLens 2)",
"Linux (Desktop/Embedded)",
"Android (All-in-one)",
"Android (Phone/Installable)",
"MacOS (Desktop)"
]
},
"form_factor": {
"type": "string",
"title": "XrFormFactor",
"enum": [
"XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY",
"XR_FORM_FACTOR_HANDHELD_DISPLAY"
]
},
"view_configuration": {
"type": "string",
"title": "XrViewConfigurationType",
"enum": [
"XR_VIEW_CONFIGURATION_TYPE_PRIMARY_MONO",
"XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO",
"XR_VIEW_CONFIGURATION_TYPE_PRIMARY_QUAD_VARJO",
"XR_VIEW_CONFIGURATION_TYPE_SECONDARY_MONO_FIRST_PERSON_OBSERVER_MSFT"
]
},
"environment_blend_mode": {
"type": "string",
"enum": [
"OPAQUE",
"ADDITIVE",
"ALPHA_BLEND"
]
},
"view_configuration_data": {
"type": "object",
"title": "View Configuration Data",
"properties": {
"view_configuration": {
"$ref": "#/definitions/view_configuration"
},
"secondary_msft": {
"title": "Secondary (MSFT) view configuration?",
"type": "boolean",
"default": false
},
"environment_blend_modes": {
"title": "Supported environment blend modes in this view configuration",
"type": "array",
"items": {
"$ref": "#/definitions/environment_blend_mode"
},
"minItems": 1
}
},
"required": [
"view_configuration",
"environment_blend_modes"
]
},
"form_factor_data": {
"type": "object",
"title": "Form Factor Data",
"properties": {
"form_factor": {
"$ref": "#/definitions/form_factor"
},
"view_configurations": {
"type": "array",
"items": {
"$ref": "#/definitions/view_configuration_data"
},
"minItems": 1
}
},
"required": [
"form_factor",
"view_configurations"
]
}
},
"type": "object",
"properties": {
"name": {
"type": "string",
"title": "Client Name"
},
"vendor": {
"type": "string",
"title": "Vendor"
},
"platform": {
"$description": "Platforms this client supports.",
"type": "array",
"items": {
"$ref": "#/definitions/platform"
}
},
"updated": {
"type": "string",
"title": "Last updated",
"description": "Date this document was last reflective of the reality"
},
"notes": {
"type": "string",
"title": "Notes",
"description": "Freeform notes about this data file"
},
"extensions": {
"title": "Supported extensions",
"description": "A list of all supported extensions in this runtime, on this platform. Details or caveats may be included in 'notes'.",
"type": "array",
"items": {
"$ref": "#/definitions/extension"
}
},
"form_factors": {
"type": "array",
"minItems": 1,
"items": {
"$ref": "#/definitions/form_factor_data"
}
}
},
"required": [
"name",
"vendor",
"extensions"
]
}
File renamed without changes.
99 changes: 99 additions & 0 deletions clients/godot.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
{
"$schema": "../client_schema.json",
"name": "Godot Game Engine",
"vendor": "Godot Community",
"notes": "Some extensions require the use of the Godot OpenXR Vendors Plugin.",
"platforms": [
"Windows (Desktop)",
"Linux (Desktop/Embedded)",
"Android (All-in-one)",
"Android (Phone/Installable)",
"MacOS (Desktop)"
],
"extensions": [
"XR_KHR_android_create_instance",
"XR_KHR_composition_layer_cylinder",
"XR_KHR_composition_layer_depth",
"XR_KHR_composition_layer_equirect2",
"XR_KHR_loader_init_android",
"XR_KHR_opengl_es_enable",
"XR_KHR_opengl_enable",
"XR_KHR_visibility_mask",
"XR_KHR_vulkan_enable2",
"XR_EXT_debug_utils",
"XR_EXT_eye_gaze_interaction",
"XR_EXT_hand_interaction",
"XR_EXT_hand_tracking",
"XR_EXT_hand_joints_motion_range",
"XR_EXT_hand_tracking_data_source",
"XR_EXT_local_floor",
"XR_EXT_view_configuration_depth_range",
"XR_EXT_palm_pose",
"XR_EXT_hp_mixed_reality_controller",
"XR_EXT_samsung_odyssey_controller",
"XR_FB_body_tracking",
"XR_FB_composition_layer_alpha_blend",
"XR_FB_composition_layer_secure_content",
"XR_FB_composition_layer_settings",
"XR_FB_display_refresh_rate",
"XR_FB_face_tracking2",
"XR_FB_foveation",
"XR_FB_foveation_configuration",
"XR_FB_hand_tracking_aim",
"XR_FB_hand_tracking_capsules",
"XR_FB_hand_tracking_mesh",
"XR_FB_passthrough",
"XR_META_passthrough_preferences",
"XR_META_passthrough_color_lut",
"XR_META_spatial_entity_mesh",
"XR_FB_render_model",
"XR_FB_scene",
"XR_FB_scene_capture",
"XR_FB_spatial_entity_container",
"XR_FB_spatial_entity",
"XR_FB_spatial_entity_query",
"XR_FB_spatial_entity_sharing",
"XR_FB_spatial_entity_storage_batch",
"XR_FB_spatial_entity_storage",
"XR_FB_spatial_entity_user",
"XR_FB_swapchain_update_state",
"XR_FB_swapchain_update_state_vulkan",
"XR_FB_swapchain_update_state_opengl_es",
"XR_FB_triangle_mesh",
"XR_FB_touch_controller_proximity",
"XR_FB_touch_controller_pro",
"XR_META_touch_controller_plus",
"XR_META_automatic_layer_filter",
"XR_HTC_facial_tracking",
"XR_HTC_passthrough",
"XR_HTC_vive_cosmos_controller_interaction",
"XR_HTC_vive_focus3_controller_interaction",
"XR_HTC_hand_interaction",
"XR_HTCX_vive_tracker_interaction",
"XR_ML_ml2_controller_interaction",
"XR_MSFT_hand_interaction"
],
"form_factors": [
{
"form_factor": "XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY",
"view_configurations": [
{
"view_configuration": "XR_VIEW_CONFIGURATION_TYPE_PRIMARY_MONO",
"environment_blend_modes": [
"OPAQUE",
"ADDITIVE",
"ALPHA_BLEND"
]
},
{
"view_configuration": "XR_VIEW_CONFIGURATION_TYPE_PRIMARY_STEREO",
"environment_blend_modes": [
"OPAQUE",
"ADDITIVE",
"ALPHA_BLEND"
]
}
]
}
]
}
2 changes: 2 additions & 0 deletions clients/godot.json.license
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Copyright 2024, The Khronos Group Inc.
SPDX-License-Identifier: CC-BY-4.0
4 changes: 3 additions & 1 deletion extension_support_report.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,9 @@

from openxr_inventory.extensions import generate_report
from openxr_inventory.runtime_inventory import load_all_runtimes
from openxr_inventory.client_inventory import load_all_clients

if __name__ == "__main__":
runtimes = load_all_runtimes()
generate_report(runtimes)
clients = load_all_clients()
generate_report(runtimes, clients)
Loading