Class OnScreenControl | Input System | 1.0.2
docs.unity3d.com
    Show / Hide Table of Contents

    Class OnScreenControl

    Base class for on-screen controls.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    OnScreenControl
    OnScreenButton
    OnScreenStick
    Inherited Members
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    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.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    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, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.DontDestroyOnLoad(Object)
    Object.FindObjectsOfType<T>()
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType(Type)
    Object.ToString()
    Object.name
    Object.hideFlags
    Namespace: UnityEngine.InputSystem.OnScreen
    Syntax
    public abstract class OnScreenControl : MonoBehaviour
    Remarks

    The set of on-screen controls together forms a device. A control layout is automatically generated from the set and a device using the layout is added to the system when the on-screen controls are enabled.

    The layout that the generated layout is based on is determined by the control paths chosen for each on-screen control. If, for example, an on-screen control chooses the 'a' key from the "Keyboard" layout as its path, a device layout is generated that is based on the "Keyboard" layout and the on-screen control becomes the 'a' key in that layout.

    If a GameObject has multiple on-screen controls that reference different types of device layouts (e.g. one control references 'buttonWest' on a gamepad and another references 'leftButton' on a mouse), then a device is created for each type referenced by the setup.

    Properties

    control

    The actual control that is fed input from the on-screen control.

    Declaration
    public InputControl control { get; }
    Property Value
    Type Description
    InputControl
    Remarks

    This is only valid while the on-screen control is enabled. Otherwise, it is null. Also, if no controlPath has been set, this will remain null even if the component is enabled.

    controlPath

    Declaration
    public string controlPath { get; set; }
    Property Value
    Type Description
    String

    controlPathInternal

    Declaration
    protected abstract string controlPathInternal { get; set; }
    Property Value
    Type Description
    String
    Remarks

    Moving the definition of how the control path is stored into subclasses allows them to apply their own InputControlAttribute attributes to them and thus set their own layout filters.

    Methods

    SendValueToControl<TValue>(TValue)

    Declaration
    protected void SendValueToControl<TValue>(TValue value)
        where TValue : struct
    Parameters
    Type Name Description
    TValue value
    Type Parameters
    Name Description
    TValue
    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