Path: blob/master/modules/openxr/doc_classes/OpenXRDpadBindingModifier.xml
10278 views
<?xml version="1.0" encoding="UTF-8" ?>1<class name="OpenXRDpadBindingModifier" inherits="OpenXRIPBindingModifier" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">2<brief_description>3The DPad binding modifier converts an axis input to a dpad output.4</brief_description>5<description>6The 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 [b]not[/b] 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.7See [url=https://registry.khronos.org/OpenXR/specs/1.1/html/xrspec.html#XR_EXT_dpad_binding]XR_EXT_dpad_binding[/url] for in-depth details.8[b]Note:[/b] 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.9</description>10<tutorials>11</tutorials>12<members>13<member name="action_set" type="OpenXRActionSet" setter="set_action_set" getter="get_action_set">14Action set for which this dpad binding modifier is active.15</member>16<member name="center_region" type="float" setter="set_center_region" getter="get_center_region" default="0.1">17Center region in which our center position of our dpad return [code]true[/code].18</member>19<member name="input_path" type="String" setter="set_input_path" getter="get_input_path" default="""">20Input path for this dpad binding modifier.21</member>22<member name="is_sticky" type="bool" setter="set_is_sticky" getter="get_is_sticky" default="false">23If [code]false[/code], when the joystick enters a new dpad zone this becomes [code]true[/code].24If [code]true[/code], when the joystick remains in active dpad zone, this remains [code]true[/code] even if we overlap with another zone.25</member>26<member name="off_haptic" type="OpenXRHapticBase" setter="set_off_haptic" getter="get_off_haptic">27Haptic pulse to emit when the user releases the input.28</member>29<member name="on_haptic" type="OpenXRHapticBase" setter="set_on_haptic" getter="get_on_haptic">30Haptic pulse to emit when the user presses the input.31</member>32<member name="threshold" type="float" setter="set_threshold" getter="get_threshold" default="0.6">33When our input value is equal or larger than this value, our dpad in that direction becomes [code]true[/code]. It stays [code]true[/code] until it falls under the [member threshold_released] value.34</member>35<member name="threshold_released" type="float" setter="set_threshold_released" getter="get_threshold_released" default="0.4">36When our input value falls below this, our output becomes [code]false[/code].37</member>38<member name="wedge_angle" type="float" setter="set_wedge_angle" getter="get_wedge_angle" default="1.5707964">39The angle of each wedge that identifies the 4 directions of the emulated dpad.40</member>41</members>42</class>434445