You are reading the
(unstable) version of this documentation, which may document features not available
or compatible with Godot 3.x.
Checking the stable version of the documentation...
Work in progress
Godot documentation is being updated to reflect the latest changes in version
4.0. Some documentation pages may
still state outdated information. This banner will tell you if you're reading one of such pages.
The contents of this page are up to date. If you can still find outdated information, please open an issue.
Inherits: Node3D < Node < Object
Inherited By: XRAnchor3D, XRController3D
A spatial node that has its position automatically updated by the XRServer.
This node can be bound to a specific pose of a XRPositionalTracker and will automatically have its Node3D.transform updated by the XRServer. Nodes of this type must be added as children of the XROrigin3D node.
get_has_tracking_data ( ) const
get_is_active ( ) const
get_pose ( )
trigger_haptic_pulse ( String action_name, float frequency, float amplitude, float duration_sec, float delay_sec )
StringName pose =
void set_pose_name ( StringName value )
StringName get_pose_name ( )
The name of the pose we're bound to. Which poses a tracker supports is not known during design time.
Godot defines number of standard pose names such as
grip but other may be configured within a given XRInterface.
StringName tracker =
void set_tracker ( StringName value )
StringName get_tracker ( )
The name of the tracker we're bound to. Which trackers are available is not known during design time.
Godot defines a number of standard trackers such as
right_hand but others may be configured within a given XRInterface.
bool get_has_tracking_data ( ) const
true if the tracker has current tracking data for the pose being tracked.
bool get_is_active ( ) const
true if the tracker has been registered and the pose is being tracked.
XRPose get_pose ( )
Returns the XRPose containing the current state of the pose being tracked. This gives access to additional properties of this pose.
void trigger_haptic_pulse ( String action_name, float frequency, float amplitude, float duration_sec, float delay_sec )
Triggers a haptic pulse on a device associated with this interface.
action_name is the name of the action for this pulse.