115 lines
5.5 KiB
XML
115 lines
5.5 KiB
XML
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||
|
<class name="OpenXRAPIExtension" inherits="RefCounted" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
|
||
|
<brief_description>
|
||
|
Makes the OpenXR API available for GDExtension.
|
||
|
</brief_description>
|
||
|
<description>
|
||
|
[OpenXRAPIExtension] makes OpenXR available for GDExtension. It provides the OpenXR API to GDExtension through the [method get_instance_proc_addr] method, and the OpenXR instance through [method get_instance].
|
||
|
It also provides methods for querying the status of OpenXR initialization, and helper methods for ease of use of the API with GDExtension.
|
||
|
</description>
|
||
|
<tutorials>
|
||
|
<link title="XrResult documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrResult.html</link>
|
||
|
<link title="XrInstance documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrInstance.html</link>
|
||
|
<link title="XrSpace documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html</link>
|
||
|
<link title="XrSession documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSession.html</link>
|
||
|
<link title="XrSystemId documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSystemId.html</link>
|
||
|
<link title="xrBeginSession documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/xrBeginSession.html</link>
|
||
|
<link title="XrPosef documentation">https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrPosef.html</link>
|
||
|
</tutorials>
|
||
|
<methods>
|
||
|
<method name="can_render">
|
||
|
<return type="bool" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if OpenXR is initialized for rendering with an XR viewport.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_error_string">
|
||
|
<return type="String" />
|
||
|
<param index="0" name="result" type="int" />
|
||
|
<description>
|
||
|
Returns an error string for the given [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_instance">
|
||
|
<return type="int" />
|
||
|
<description>
|
||
|
Returns the [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrInstance.html]XrInstance[/url] created during the initialization of the OpenXR API.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_instance_proc_addr">
|
||
|
<return type="int" />
|
||
|
<param index="0" name="name" type="String" />
|
||
|
<description>
|
||
|
Returns the function pointer of the OpenXR function with the specified name, cast to an integer. If the function with the given name does not exist, the method returns [code]0[/code].
|
||
|
[b]Note:[/b] [code]openxr/util.h[/code] contains utility macros for acquiring OpenXR functions, e.g. [code]GDEXTENSION_INIT_XR_FUNC_V(xrCreateAction)[/code].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_next_frame_time">
|
||
|
<return type="int" />
|
||
|
<description>
|
||
|
Returns the timing for the next frame.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_play_space">
|
||
|
<return type="int" />
|
||
|
<description>
|
||
|
Returns the play space, which is an [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html]XrSpace[/url] cast to an integer.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_session">
|
||
|
<return type="int" />
|
||
|
<description>
|
||
|
Returns the OpenXR session, which is an [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSession.html]XrSession[/url] cast to an integer.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_swapchain_format_name">
|
||
|
<return type="String" />
|
||
|
<param index="0" name="swapchain_format" type="int" />
|
||
|
<description>
|
||
|
Returns the name of the specified swapchain format.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_system_id">
|
||
|
<return type="int" />
|
||
|
<description>
|
||
|
Returns the id of the system, which is a [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrSystemId.html]XrSystemId[/url] cast to an integer.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="is_initialized">
|
||
|
<return type="bool" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if OpenXR is initialized.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="is_running">
|
||
|
<return type="bool" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if OpenXR is running ([url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/xrBeginSession.html]xrBeginSession[/url] was successfully called and the swapchains were created).
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="openxr_is_enabled" qualifiers="static">
|
||
|
<return type="bool" />
|
||
|
<param index="0" name="check_run_in_editor" type="bool" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if OpenXR is enabled.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="transform_from_pose">
|
||
|
<return type="Transform3D" />
|
||
|
<param index="0" name="pose" type="const void*" />
|
||
|
<description>
|
||
|
Creates a [Transform3D] from an [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrPosef.html]XrPosef[/url].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="xr_result">
|
||
|
<return type="bool" />
|
||
|
<param index="0" name="result" type="int" />
|
||
|
<param index="1" name="format" type="String" />
|
||
|
<param index="2" name="args" type="Array" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if the provided [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url] (cast to an integer) is successful. Otherwise returns [code]false[/code] and prints the [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url] converted to a string, with the specified additional information.
|
||
|
</description>
|
||
|
</method>
|
||
|
</methods>
|
||
|
</class>
|