Unity’s New Input System: Overview

Ryan McCoach
4 min readFeb 23, 2025

--

The New Input System in Unity provides a more flexible, scalable, and configurable way to handle player input compared to the legacy Input class. It supports multiple input devices (keyboard, mouse, gamepad, touch, VR controllers) with a unified approach.

Benefits Over the Legacy System

Input Actions Asset

An Input Actions Asset is a configuration file in Unity’s New Input System that defines all the input mappings for a game in an organized, action-based way.

Create Input Actions Asset

  1. Create a project folder to store the input actions maps for your game.
  2. Click on the create button
  3. Select ‘Input Actions’. Give it a descriptive name.

This will open up the Input Actions window. This can be opened/closed like any other asset. This window shows the three components of an Input Action Asset:

  1. Action Maps — Groups of related actions (e.g., “Gameplay”, “UI”, “Menu”).
  2. Actions — Individual inputs like “Move”, “Jump”, or “Attack”.
  3. Action Properties — define how inputs are processed.

Create an Action Map

In the Action Map window select the ‘plus’ icon to create a new Action Map. An Action Map is a collection of related actions and only one Action Map can be active at a time.

Examples

  1. Gameplay Action Map (For player movement and interaction)
  2. UI Action Map (For menus and interface interactions)
  3. Vehicle Action Map (For controlling a car, plane, or other vehicles)
  4. Combat Action Map (For aiming and shooting mechanics)
  5. Cutscene Action Map (For controlling camera or skipping scenes)

Action Maps help development by organizing controls, allowing dynamically switching input contexts, and preventing conflicting inputs.

Create an Action

When an Action Map is created, Unity will automatically generate an Action. Just delete each time, to ensure a fresh start. To create a new Action, click on the ‘plus’ icon in the Actions panel. Give the action a proper name and delete the binding that is automatically created.

A Binding is the specific keys, buttons, or joystick inputs assigned to an action. There are 4 options when creating a new binding:

  1. Binding (Simple Binding) — A basic binding maps a single key, button, or axis to an action.
  • Jump → Space (Keyboard)
  • Fire → Left Mouse Button
  1. Jump → Space (Keyboard)
  2. Fire → Left Mouse Button
  3. Positive/Negative Binding — A positive/negative binding is used for axis-based controls, where one key moves in a positive direction and another in a negative direction.
  4. Move Forward → W (Positive)
  5. Move Backward → S (Negative)
  6. Left Stick Up → +1 (Positive)
  7. Left Stick Down → -1 (Negative)
  8. Binding with One Modifier — A binding with one modifier requires holding a key (modifier) while pressing another key to trigger an action.
  9. Crouch + Attack → Ctrl + Left Mouse Button
  10. Sprint → Shift + W
  11. Binding with Two Modifiers — A binding with two modifiers requires two keys to be held before pressing a third key.
  12. Save Game → Ctrl + Shift + S
  13. Debug Mode → Alt + F1

Use Cases:

  • Simple Bindings for basic controls.
  • Positive/Negative Bindings for movement or axis-based input.
  • Modifier Bindings for shortcut-style interactions or layered controls.

The different binding types will offer different binding properties, but for this example the simple binding will allow you to choose a path or input device and from there you can select the button on that device to trigger the action.

--

--

No responses yet