Table of Contents

Class XRNode3D

Namespace
Godot
Assembly
GodotSharp.dll

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.

public class XRNode3D : Node3D, IDisposable
Inheritance
XRNode3D
Implements
Derived
Inherited Members

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.

public StringName Pose { get; set; }

Property Value

StringName

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.

public StringName Tracker { get; set; }

Property Value

StringName

Methods

GetHasTrackingData()

Returns true if the Tracker has current tracking data for the Pose being tracked.

public bool GetHasTrackingData()

Returns

bool

GetIsActive()

Returns true if the Tracker has been registered and the Pose is being tracked.

public bool GetIsActive()

Returns

bool

GetPose()

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

public XRPose GetPose()

Returns

XRPose

HasGodotClassMethod(in godot_string_name)

Check if the type contains a method with the given name. This method is used by Godot to check if a method exists before invoking it. Do not call or override this method.

protected override bool HasGodotClassMethod(in godot_string_name method)

Parameters

method godot_string_name

Name of the method to check for.

Returns

bool

HasGodotClassSignal(in godot_string_name)

Check if the type contains a signal with the given name. This method is used by Godot to check if a signal exists before raising it. Do not call or override this method.

protected override bool HasGodotClassSignal(in godot_string_name signal)

Parameters

signal godot_string_name

Name of the signal to check for.

Returns

bool

InvokeGodotClassMethod(in godot_string_name, NativeVariantPtrArgs, out godot_variant)

Invokes the method with the given name, using the given arguments. This method is used by Godot to invoke methods from the engine side. Do not call or override this method.

protected override bool InvokeGodotClassMethod(in godot_string_name method, NativeVariantPtrArgs args, out godot_variant ret)

Parameters

method godot_string_name

Name of the method to invoke.

args NativeVariantPtrArgs

Arguments to use with the invoked method.

ret godot_variant

Value returned by the invoked method.

Returns

bool

TriggerHapticPulse(string, double, double, double, double)

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

actionName is the name of the action for this pulse.

public void TriggerHapticPulse(string actionName, double frequency, double amplitude, double durationSec, double delaySec)

Parameters

actionName string
frequency double
amplitude double
durationSec double
delaySec double

Events

TrackingChanged

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.

public event XRNode3D.TrackingChangedEventHandler TrackingChanged

Event Type

XRNode3D.TrackingChangedEventHandler