# Input

> Understand the options for implementing input in Unity.

Unity supports input from many types of devices, and almost every project requires input of some kind, whether it is to allow users to navigate a UI, control a character in a game, or move around and interact with objects in virtual reality.

Unity has two methods of implementing input:

* The **[Input System Package](https://docs.unity3d.com/Packages/com.unity.inputsystem@latest)**, which is newer, more flexible, and better supported.
* The legacy Editor (which includes the built-in `Input` class).

| **Topic**                                                                | **Description**                                                                     |
| ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------- |
| **[Introduction to Input](/engine/6000.7/manual/input/introduction.md)** | Understand the different options for implementing input in Unity.                   |
| **[Mobile Keyboard](/engine/6000.7/manual/input/mobile-keyboard.md)**    | Open the on-screen keyboard automatically for GUI elements or manually via scripts. |
| **[Unity XR input](/engine/6000.7/manual/input/xr_input.md)**            | Access device controls and features for VR and AR.                                  |
| **[Legacy Input](/engine/6000.7/manual/input/legacy.md)**                | Reference for the deprecated built-in Input Manager.                                |
| **[IME in Unity](/engine/6000.7/manual/input/imeinput.md)**              | Type non-ASCII characters using the built-in Input Method Editor support.           |

## Additional resources and examples

* 👥 **Community**: [Join the conversation on Unity Discussions](https://discussions.unity.com/lists/input)
* 📺 **Video**: [Unity Input System in Unity 6 (1/7): Input Action Editor](https://youtu.be/TiTKAseu17A?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (2/7): Input System Scripting](https://youtu.be/Cd2Erk_bsRY?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (3/7): Input System Mobile controls](https://youtu.be/aI-r7ILNDug?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (4/7): Input System and UI toolkit](https://youtu.be/GdjP5pggaHw?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (5/7): Rebinding Input System controls](https://youtu.be/JfuqMaOiNPs?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (6/7): Player Input Component](https://youtu.be/beDfIBLfx4c?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
* 📺 **Video**: [Unity Input System in Unity 6 (7/7): Player Input Manager and local multiplayer](https://youtu.be/lGxXQzE5Vu8?list=PLX2vGYjWbI0RpLvO3B7aH-ObfcOifMD20)
