Class DpadControl | Package Manager UI website
docs.unity3d.com
    Show / Hide Table of Contents

    Class DpadControl

    A control made up of four discrete, directional buttons. Forms a vector but can also be addressed as individual buttons.

    Inheritance
    System.Object
    InputControl
    InputControl<Vector2>
    Vector2Control
    DpadControl
    Inherited Members
    Vector2Control.x
    Vector2Control.y
    Vector2Control.EvaluateMagnitude(Void*)
    InputControl<Vector2>.valueType
    InputControl<Vector2>.valueSizeInBytes
    InputControl<Vector2>.ReadValue()
    InputControl<Vector2>.ReadValueFromPreviousFrame()
    InputControl<Vector2>.ReadDefaultValue()
    InputControl<Vector2>.ReadValueFromState(Void*)
    InputControl<Vector2>.ReadUnprocessedValue()
    InputControl<Vector2>.ReadValueFromStateAsObject(Void*)
    InputControl<Vector2>.ReadValueFromStateIntoBuffer(Void*, Void*, Int32)
    InputControl<Vector2>.WriteValueFromBufferIntoState(Void*, Int32, Void*)
    InputControl<Vector2>.WriteValueFromObjectIntoState(Object, Void*)
    InputControl<Vector2>.ReadValueFromBufferAsObject(Void*, Int32)
    InputControl<Vector2>.CompareValue(Void*, Void*)
    InputControl<Vector2>.ProcessValue(Vector2)
    InputControl.name
    InputControl.displayName
    InputControl.shortDisplayName
    InputControl.path
    InputControl.layout
    InputControl.variants
    InputControl.device
    InputControl.parent
    InputControl.children
    InputControl.usages
    InputControl.aliases
    InputControl.stateBlock
    InputControl.noisy
    InputControl.synthetic
    InputControl.Item[String]
    InputControl.ToString()
    InputControl.EvaluateMagnitude()
    InputControl.TryGetChildControl(String)
    InputControl.TryGetChildControl<TControl>(String)
    InputControl.GetChildControl(String)
    InputControl.GetChildControl<TControl>(String)
    InputControl.RefreshConfigurationIfNeeded()
    InputControl.RefreshConfiguration()
    InputControl.m_StateBlock
    InputControl.currentStatePtr
    InputControl.previousFrameStatePtr
    InputControl.defaultStatePtr
    InputControl.noiseMaskPtr
    InputControl.stateOffsetRelativeToDeviceRoot
    Namespace: UnityEngine.InputSystem.Controls
    Syntax
    public class DpadControl : Vector2Control
    Remarks

    Is stored as four bits by default.

    The vector that is aggregated from the button states is normalized. I.e. even if pressing diagonally, the vector will have a length of 1 (instead of reading something like (1,1) for example).

    Constructors

    DpadControl()

    Declaration
    public DpadControl()

    Properties

    down

    The button representing the vertical downwards state of the D-Pad.

    Declaration
    public ButtonControl down { get; }
    Property Value
    Type Description
    ButtonControl

    left

    The button representing the horizontal left state of the D-Pad.

    Declaration
    public ButtonControl left { get; }
    Property Value
    Type Description
    ButtonControl

    right

    The button representing the horizontal right state of the D-Pad.

    Declaration
    public ButtonControl right { get; }
    Property Value
    Type Description
    ButtonControl

    up

    Declaration
    public ButtonControl up { get; }
    Property Value
    Type Description
    ButtonControl

    Methods

    FinishSetup()

    Declaration
    protected override void FinishSetup()
    Overrides
    Vector2Control.FinishSetup()

    MakeDpadVector(Boolean, Boolean, Boolean, Boolean, Boolean)

    Create a direction vector from the given four button states.

    Declaration
    public static Vector2 MakeDpadVector(bool up, bool down, bool left, bool right, bool normalize = true)
    Parameters
    Type Name Description
    System.Boolean up
    System.Boolean down
    System.Boolean left
    System.Boolean right
    System.Boolean normalize
    Returns
    Type Description
    Vector2

    A normalized 2D direction vector.

    ReadUnprocessedValueFromState(Void*)

    Declaration
    public override Vector2 ReadUnprocessedValueFromState(void *statePtr)
    Parameters
    Type Name Description
    System.Void* statePtr
    Returns
    Type Description
    Vector2
    Overrides
    Vector2Control.ReadUnprocessedValueFromState(Void*)

    WriteValueIntoState(Vector2, Void*)

    Declaration
    public override void WriteValueIntoState(Vector2 value, void *statePtr)
    Parameters
    Type Name Description
    Vector2 value
    System.Void* statePtr
    Overrides
    Vector2Control.WriteValueIntoState(Vector2, Void*)

    Extension Methods

    InputControlExtensions.IsActuated(InputControl, Single)
    InputControlExtensions.ReadValueAsObject(InputControl)
    InputControlExtensions.ReadValueIntoBuffer(InputControl, Void*, Int32)
    InputControlExtensions.ReadDefaultValueAsObject(InputControl)
    InputControlExtensions.ReadValueFromEvent<TValue>(InputControl<TValue>, InputEventPtr, out TValue)
    InputControlExtensions.ReadUnprocessedValueFromEvent<TValue>(InputControl<TValue>, InputEventPtr)
    InputControlExtensions.ReadUnprocessedValueFromEvent<TValue>(InputControl<TValue>, InputEventPtr, out TValue)
    InputControlExtensions.WriteValueFromObjectIntoEvent(InputControl, InputEventPtr, Object)
    InputControlExtensions.WriteValueIntoState(InputControl, Void*)
    InputControlExtensions.WriteValueIntoState<TValue>(InputControl, TValue, Void*)
    InputControlExtensions.WriteValueIntoState<TValue>(InputControl<TValue>, TValue, Void*)
    InputControlExtensions.WriteValueIntoState<TValue>(InputControl<TValue>, Void*)
    InputControlExtensions.WriteValueIntoState<TValue, TState>(InputControl<TValue>, TValue, ref TState)
    InputControlExtensions.WriteValueIntoEvent<TValue>(InputControl, TValue, InputEventPtr)
    InputControlExtensions.WriteValueIntoEvent<TValue>(InputControl<TValue>, TValue, InputEventPtr)
    InputControlExtensions.CheckStateIsAtDefault(InputControl)
    InputControlExtensions.CheckStateIsAtDefault(InputControl, Void*, Void*)
    InputControlExtensions.CheckStateIsAtDefaultIgnoringNoise(InputControl)
    InputControlExtensions.CheckStateIsAtDefaultIgnoringNoise(InputControl, Void*)
    InputControlExtensions.CompareStateIgnoringNoise(InputControl, Void*)
    InputControlExtensions.CompareState(InputControl, Void*, Void*, Void*)
    InputControlExtensions.CompareState(InputControl, Void*, Void*)
    InputControlExtensions.HasValueChangeInState(InputControl, Void*)
    InputControlExtensions.HasValueChangeInEvent(InputControl, InputEventPtr)
    InputControlExtensions.GetStatePtrFromStateEvent(InputControl, InputEventPtr)
    InputControlExtensions.QueueValueChange<TValue>(InputControl<TValue>, TValue, Double)
    InputControlExtensions.FindControlsRecursive<TControl>(InputControl, IList<TControl>, Func<TControl, Boolean>)
    Back to top
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023