Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

OpenXRInteractionProfileMetadata

Eredita: Object

Meta-classe che registra i dispositivi supportati in OpenXR.

Descrizione

Questa classe consente alla base e alle estensioni OpenXR di registrare metadati relativi ai dispositivi di interazione supportati, quali controller, tracciatori, dispositivi tattili, ecc. È utilizzata principalmente dall'editor delle mappe di azioni e per ripulire qualsiasi mappa di azioni, rimuovendo le voci dipendenti dall'estensione, dove applicabile.

Metodi

void

register_interaction_profile(display_name: String, openxr_path: String, openxr_extension_names: String)

void

register_io_path(interaction_profile: String, display_name: String, toplevel_path: String, openxr_path: String, openxr_extension_names: String, action_type: ActionType)

void

register_path_rename(old_name: String, new_name: String)

void

register_profile_rename(old_name: String, new_name: String)

void

register_top_level_path(display_name: String, openxr_path: String, openxr_extension_names: String)


Descrizioni dei metodi

void register_interaction_profile(display_name: String, openxr_path: String, openxr_extension_names: String) 🔗

Registers an interaction profile using its OpenXR designation (e.g. /interaction_profiles/khr/simple_controller is the profile for OpenXR's simple controller profile).

display_name is the description shown to the user. openxr_path is the interaction profile path being registered. openxr_extension_names optionally restricts this profile to the given extension being enabled/available. If the extension is not available, the profile and all related entries used in an action map are filtered out.


void register_io_path(interaction_profile: String, display_name: String, toplevel_path: String, openxr_path: String, openxr_extension_names: String, action_type: ActionType) 🔗

Registers an input/output path for the given interaction_profile. The profile should previously have been registered using register_interaction_profile(). display_name is the description shown to the user. toplevel_path specifies the bind path this input/output can be bound to (e.g. /user/hand/left or /user/hand/right). openxr_path is the action input/output being registered (e.g. /user/hand/left/input/aim/pose). openxr_extension_names restricts this input/output to an enabled/available extension, this doesn't need to repeat the extension on the profile but relates to overlapping extension (e.g. XR_EXT_palm_pose that introduces …/input/palm_ext/pose input paths). action_type defines the type of input or output provided by OpenXR.


void register_path_rename(old_name: String, new_name: String) 🔗

Allows for renaming old input/output paths to new paths in order to load and process older action maps.


void register_profile_rename(old_name: String, new_name: String) 🔗

Allows for renaming old interaction profile paths to new paths in order to load and process older action maps.


void register_top_level_path(display_name: String, openxr_path: String, openxr_extension_names: String) 🔗

Registers a top level path to which profiles can be bound. For instance /user/hand/left refers to the bind point for the player's left hand. Extensions can register additional top level paths, for instance a haptic vest extension might register /user/body/vest.

display_name is the name shown to the user. openxr_path is the top level path being registered. openxr_extension_names is optional and ensures the top level path is only used if the specified extension is available/enabled.

When a top level path ends up being bound by OpenXR, an XRPositionalTracker is instantiated to manage the state of the device.