Table of Contents

Class OpenXRDpadBindingModifier

Namespace
Godot
Assembly
GodotSharp.dll

The DPad binding modifier converts an axis input to a dpad output, emulating a DPad. New input paths for each dpad direction will be added to the interaction profile. When bound to actions the DPad emulation will be activated. You should not combine dpad inputs with normal inputs in the same action set for the same control, this will result in an error being returned when suggested bindings are submitted to OpenXR.

See XR_EXT_dpad_binding for in-depth details.

Note: If the DPad binding modifier extension is enabled, all dpad binding paths will be available in the action map. Adding the modifier to an interaction profile allows you to further customize the behavior.

public class OpenXRDpadBindingModifier : OpenXripBindingModifier, IDisposable
Inheritance
OpenXRDpadBindingModifier
Implements
Inherited Members

Constructors

OpenXRDpadBindingModifier()

public OpenXRDpadBindingModifier()

Properties

ActionSet

Action set for which this dpad binding modifier is active.

public OpenXRActionSet ActionSet { get; set; }

Property Value

OpenXRActionSet

CenterRegion

Center region in which our center position of our dpad return true.

public float CenterRegion { get; set; }

Property Value

float

InputPath

Input path for this dpad binding modifier.

public string InputPath { get; set; }

Property Value

string

IsSticky

If false, when the joystick enters a new dpad zone this becomes true.

If true, when the joystick remains in active dpad zone, this remains true even if we overlap with another zone.

public bool IsSticky { get; set; }

Property Value

bool

OffHaptic

Haptic pulse to emit when the user releases the input.

public OpenXRHapticBase OffHaptic { get; set; }

Property Value

OpenXRHapticBase

OnHaptic

Haptic pulse to emit when the user presses the input.

public OpenXRHapticBase OnHaptic { get; set; }

Property Value

OpenXRHapticBase

Threshold

When our input value is equal or larger than this value, our dpad in that direction becomes true. It stays true until it falls under the ThresholdReleased value.

public float Threshold { get; set; }

Property Value

float

ThresholdReleased

When our input value falls below this, our output becomes false.

public float ThresholdReleased { get; set; }

Property Value

float

WedgeAngle

The angle of each wedge that identifies the 4 directions of the emulated dpad.

public float WedgeAngle { get; set; }

Property Value

float

Methods

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