diff options
Diffstat (limited to 'modules/openxr/extensions/openxr_extension_wrapper_extension.cpp')
-rw-r--r-- | modules/openxr/extensions/openxr_extension_wrapper_extension.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/modules/openxr/extensions/openxr_extension_wrapper_extension.cpp b/modules/openxr/extensions/openxr_extension_wrapper_extension.cpp index 4829f713d2..5ad7a97eca 100644 --- a/modules/openxr/extensions/openxr_extension_wrapper_extension.cpp +++ b/modules/openxr/extensions/openxr_extension_wrapper_extension.cpp @@ -38,6 +38,8 @@ void OpenXRExtensionWrapperExtension::_bind_methods() { GDVIRTUAL_BIND(_set_instance_create_info_and_get_next_pointer, "next_pointer"); GDVIRTUAL_BIND(_set_session_create_and_get_next_pointer, "next_pointer"); GDVIRTUAL_BIND(_set_swapchain_create_info_and_get_next_pointer, "next_pointer"); + GDVIRTUAL_BIND(_set_hand_joint_locations_and_get_next_pointer, "hand_index", "next_pointer"); + GDVIRTUAL_BIND(_get_composition_layer); GDVIRTUAL_BIND(_on_register_metadata); GDVIRTUAL_BIND(_on_before_instance_created); GDVIRTUAL_BIND(_on_instance_created, "instance"); @@ -117,6 +119,26 @@ void *OpenXRExtensionWrapperExtension::set_swapchain_create_info_and_get_next_po return nullptr; } +void *OpenXRExtensionWrapperExtension::set_hand_joint_locations_and_get_next_pointer(int p_hand_index, void *p_next_pointer) { + uint64_t pointer; + + if (GDVIRTUAL_CALL(_set_hand_joint_locations_and_get_next_pointer, p_hand_index, GDExtensionPtr<void>(p_next_pointer), pointer)) { + return reinterpret_cast<void *>(pointer); + } + + return nullptr; +} + +XrCompositionLayerBaseHeader *OpenXRExtensionWrapperExtension::get_composition_layer() { + uint64_t pointer; + + if (GDVIRTUAL_CALL(_get_composition_layer, pointer)) { + return reinterpret_cast<XrCompositionLayerBaseHeader *>(pointer); + } + + return nullptr; +} + void OpenXRExtensionWrapperExtension::on_register_metadata() { GDVIRTUAL_CALL(_on_register_metadata); } |