Table of Contents

Class XRNode3D

A 3D node that has its position automatically updated by the XRServer.

Inheritance
XRNode3D
Derived

Remarks

This node can be bound to a specific pose of a XRPositionalTracker and will automatically have its transform updated by the XRServer. Nodes of this type must be added as children of the XROrigin3D node.

See Also

Properties

pose

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 aim and grip but other may be configured within a given XRInterface.

var pose : StringName = &"default"

Property Value

StringName

Remarks

show_when_tracked

Enables showing the node when tracking starts, and hiding the node when tracking is lost.

var show_when_tracked : bool = false

Property Value

bool

Remarks

  • void set_show_when_tracked(bool value)
  • bool get_show_when_tracked

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 left_hand and right_hand but others may be configured within a given XRInterface.

var tracker : StringName = &""

Property Value

StringName

Remarks

Methods

get_has_tracking_data

Qualifiers: const

Returns true if the tracker has current tracking data for the pose being tracked.

bool get_has_tracking_data

get_is_active

Qualifiers: const

Returns true if the tracker has been registered and the pose is being tracked.

bool get_is_active

get_pose

Returns the XRPose containing the current state of the pose being tracked. This gives access to additional properties of this pose.

XRPose get_pose

trigger_haptic_pulse(String, float, float, float, float)

Triggers a haptic pulse on a device associated with this interface.

action_name is the name of the action for this pulse.

frequency is the frequency of the pulse, set to 0.0 to have the system use a default frequency.

amplitude is the amplitude of the pulse between 0.0 and 1.0.

duration_sec is the duration of the pulse in seconds.

delay_sec is a delay in seconds before the pulse is given.

void trigger_haptic_pulse(String action_name, float frequency, float amplitude, float duration_sec, float delay_sec)

Parameters

action_name String
frequency float
amplitude float
duration_sec float
delay_sec float

Events

tracking_changed(bool)

Emitted when the tracker starts or stops receiving updated tracking data for the pose being tracked. The tracking argument indicates whether the tracker is getting updated tracking data.

signal tracking_changed(bool tracking)

Parameters

tracking bool