docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Create a custom on-screen control

    To create custom input controls, you can extend OnScreenControl.

    The following sample demonstrates one way to do this:

        [AddComponentMenu("Input/On-Screen Button")]
        public class OnScreenButton : OnScreenControl, IPointerDownHandler, IPointerUpHandler
        {
            public void OnPointerUp(PointerEventData data)
            {
                SendValueToControl(0.0f);
            }
    
            public void OnPointerDown(PointerEventData data)
            {
                SendValueToControl(1.0f);
            }
    
            [InputControl(layout = "Button")]
            [SerializeField]
            private string m_ControlPath;
    
            protected override string controlPathInternal
            {
                get => m_ControlPath;
                set => m_ControlPath = value;
            }
        }
    
    In This Article
    Back to top
    Copyright © 2026 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)