docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class BaseInputModule

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    UIBehaviour
    BaseInputModule
    FakeInputModule
    PointerInputModule
    Inherited Members
    UIBehaviour.Awake()
    UIBehaviour.Start()
    UIBehaviour.OnDestroy()
    UIBehaviour.IsActive()
    UIBehaviour.OnValidate()
    UIBehaviour.Reset()
    UIBehaviour.OnRectTransformDimensionsChange()
    UIBehaviour.OnBeforeTransformParentChanged()
    UIBehaviour.OnTransformParentChanged()
    UIBehaviour.OnDidApplyAnimationProperties()
    UIBehaviour.OnCanvasGroupChanged()
    UIBehaviour.OnCanvasHierarchyChanged()
    UIBehaviour.IsDestroyed()
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    MonoBehaviour.CancelInvoke(string)
    MonoBehaviour.IsInvoking(string)
    MonoBehaviour.StartCoroutine(string)
    MonoBehaviour.StartCoroutine(string, object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(string)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(object)
    MonoBehaviour.destroyCancellationToken
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.GetComponentIndex()
    Component.CompareTag(string)
    Component.SendMessageUpwards(string, object, SendMessageOptions)
    Component.SendMessageUpwards(string, object)
    Component.SendMessageUpwards(string)
    Component.SendMessageUpwards(string, SendMessageOptions)
    Component.SendMessage(string, object)
    Component.SendMessage(string)
    Component.SendMessage(string, object, SendMessageOptions)
    Component.SendMessage(string, SendMessageOptions)
    Component.BroadcastMessage(string, object, SendMessageOptions)
    Component.BroadcastMessage(string, object)
    Component.BroadcastMessage(string)
    Component.BroadcastMessage(string, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(object)
    Object.InstantiateAsync<T>(T)
    Object.InstantiateAsync<T>(T, Transform)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int)
    Object.InstantiateAsync<T>(T, int, Transform)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, InstantiateParameters)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, InstantiateParameters)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Scene)
    Object.Instantiate<T>(T, InstantiateParameters)
    Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, bool)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, float)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.EventSystems
    Assembly: UnityEngine.UI.dll
    Syntax
    [RequireComponent(typeof(EventSystem))]
    public abstract class BaseInputModule : UIBehaviour

    Fields

    m_InputOverride

    Declaration
    protected BaseInput m_InputOverride
    Field Value
    Type Description
    BaseInput

    m_RaycastResultCache

    Declaration
    [NonSerialized]
    protected List<RaycastResult> m_RaycastResultCache
    Field Value
    Type Description
    List<RaycastResult>

    Properties

    eventSystem

    Declaration
    protected EventSystem eventSystem { get; }
    Property Value
    Type Description
    EventSystem

    input

    The current BaseInput being used by the input module.

    Declaration
    public BaseInput input { get; }
    Property Value
    Type Description
    BaseInput

    inputOverride

    Used to override the default BaseInput for the input module.

    Declaration
    public BaseInput inputOverride { get; set; }
    Property Value
    Type Description
    BaseInput
    Remarks

    With this it is possible to bypass the Input system with your own but still use the same InputModule. For example this can be used to feed fake input into the UI or interface with a different input system.

    Methods

    ActivateModule()

    Called when the module is activated. Override this if you want custom code to execute when you activate your module.

    Declaration
    public virtual void ActivateModule()

    ConvertUIToolkitPointerId(PointerEventData)

    Returns Id of the pointer following PointerId convention.

    Declaration
    public virtual int ConvertUIToolkitPointerId(PointerEventData sourcePointerData)
    Parameters
    Type Name Description
    PointerEventData sourcePointerData

    PointerEventData whose pointerId will be converted to UI Toolkit pointer convention.

    Returns
    Type Description
    int
    See Also
    IPointerEvent

    DeactivateModule()

    Called when the module is deactivated. Override this if you want custom code to execute when you deactivate your module.

    Declaration
    public virtual void DeactivateModule()

    DetermineMoveDirection(float, float)

    Given an input movement, determine the best MoveDirection.

    Declaration
    protected static MoveDirection DetermineMoveDirection(float x, float y)
    Parameters
    Type Name Description
    float x

    X movement.

    float y

    Y movement.

    Returns
    Type Description
    MoveDirection

    DetermineMoveDirection(float, float, float)

    Given an input movement, determine the best MoveDirection.

    Declaration
    protected static MoveDirection DetermineMoveDirection(float x, float y, float deadZone)
    Parameters
    Type Name Description
    float x

    X movement.

    float y

    Y movement.

    float deadZone

    Dead zone.

    Returns
    Type Description
    MoveDirection

    FindCommonRoot(GameObject, GameObject)

    Given 2 GameObjects, return a common root GameObject (or null).

    Declaration
    protected static GameObject FindCommonRoot(GameObject g1, GameObject g2)
    Parameters
    Type Name Description
    GameObject g1

    GameObject to compare

    GameObject g2

    GameObject to compare

    Returns
    Type Description
    GameObject

    FindFirstRaycast(List<RaycastResult>)

    Return the first valid RaycastResult.

    Declaration
    protected static RaycastResult FindFirstRaycast(List<RaycastResult> candidates)
    Parameters
    Type Name Description
    List<RaycastResult> candidates
    Returns
    Type Description
    RaycastResult

    GetAxisEventData(float, float, float)

    Given some input data generate an AxisEventData that can be used by the event system.

    Declaration
    protected virtual AxisEventData GetAxisEventData(float x, float y, float moveDeadZone)
    Parameters
    Type Name Description
    float x

    X movement.

    float y

    Y movement.

    float moveDeadZone
    Returns
    Type Description
    AxisEventData

    GetBaseEventData()

    Generate a BaseEventData that can be used by the EventSystem.

    Declaration
    protected virtual BaseEventData GetBaseEventData()
    Returns
    Type Description
    BaseEventData

    HandlePointerExitAndEnter(PointerEventData, GameObject)

    Declaration
    protected void HandlePointerExitAndEnter(PointerEventData currentPointerData, GameObject newEnterTarget)
    Parameters
    Type Name Description
    PointerEventData currentPointerData
    GameObject newEnterTarget

    IsModuleSupported()

    Check to see if the module is supported. Override this if you have a platform specific module (eg. TouchInputModule that you do not want to activate on standalone.)

    Declaration
    public virtual bool IsModuleSupported()
    Returns
    Type Description
    bool

    Is the module supported.

    IsPointerOverGameObject(int)

    If the module is pointer based, then override this to return true if the pointer is over an event system object.

    Declaration
    public virtual bool IsPointerOverGameObject(int pointerId)
    Parameters
    Type Name Description
    int pointerId

    Pointer ID

    Returns
    Type Description
    bool

    Is the given pointer over an event system object?

    OnDisable()

    Declaration
    protected override void OnDisable()
    Overrides
    UIBehaviour.OnDisable()

    OnEnable()

    Declaration
    protected override void OnEnable()
    Overrides
    UIBehaviour.OnEnable()

    Process()

    Process the current tick for the module.

    Declaration
    public abstract void Process()

    ShouldActivateModule()

    Should the module be activated.

    Declaration
    public virtual bool ShouldActivateModule()
    Returns
    Type Description
    bool

    UpdateModule()

    Update the internal state of the Module.

    Declaration
    public virtual void UpdateModule()

    Did you find this page useful? Please give it a rating:

    Thanks for rating this page!

    Report a problem on this page

    What kind of problem would you like to report?

    • This page needs code samples
    • Code samples do not work
    • Information is missing
    • Information is incorrect
    • Information is unclear or confusing
    • There is a spelling/grammar error on this page
    • Something else

    Thanks for letting us know! This page has been marked for review based on your feedback.

    If you have time, you can provide more information to help us fix the problem faster.

    Provide more information

    You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:

    You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:

    You've told us there is information missing from this page. Please tell us more about what's missing:

    You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:

    You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:

    You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:

    You've told us this page has a problem. Please tell us more about what's wrong:

    Thank you for helping to make the Unity documentation better!

    Your feedback has been submitted as a ticket for our documentation team to review.

    We are not able to reply to every ticket submitted.

    In This Article
    • Fields
      • m_InputOverride
      • m_RaycastResultCache
    • Properties
      • eventSystem
      • input
      • inputOverride
    • Methods
      • ActivateModule()
      • ConvertUIToolkitPointerId(PointerEventData)
      • DeactivateModule()
      • DetermineMoveDirection(float, float)
      • DetermineMoveDirection(float, float, float)
      • FindCommonRoot(GameObject, GameObject)
      • FindFirstRaycast(List<RaycastResult>)
      • GetAxisEventData(float, float, float)
      • GetBaseEventData()
      • HandlePointerExitAndEnter(PointerEventData, GameObject)
      • IsModuleSupported()
      • IsPointerOverGameObject(int)
      • OnDisable()
      • OnEnable()
      • Process()
      • ShouldActivateModule()
      • UpdateModule()
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)