Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Packages/com.unity.inputsystem/Documentation~/Concepts.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ uid: basic-concepts

This page introduces the basic concepts that relate to working with the Input System. They relate to the steps in the sequence of events that occur when a user sends input to your game or app. The Input System provides features which implement these steps, or you can choose to implement some of them yourself.

![](Images/ConceptsOverview.png)
![A flowchart showing the general workflow of the Input System, with icons representing the different concepts. It starts with the User icon, which then leads into the Input Device and its Controls icon. This then leads into the Action Map and Actions concept. The Input Device and Action Map and Actions icons are collectively grouped under the Binding header. This leads into the final icon representing your action code.](Images/ConceptsOverview.png)

|Concept|Description|
|-------|-----------|
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,22 @@ Unless you have specific project requirements that require more than one Action
To create and assign the current project-wide actions, go to **Edit** > **Project Settings** > **Input System Package**.

If you don't yet have an Action Asset assigned as project-wide in your project, the Input System Package settings window displays an empty field for you to assign your action asset, and a button allowing you to create and assign one.
![image alt text](./Images/InputSettingsNoProjectWideAsset.png)</br>
*The Input System Package Project Settings with no project-wide actions assigned*

![Screenshot of the Project Settings window, with Input System Package selected. Its settings are displayed on the right of the window. The Project-wide Actions field is empty, and an information box explaining you can assign an Action Asset as project-wide by selecting it in this field or creating it in this window is shown. A button to automatically create and assign the default project-wide Action Asset is displayed under the information box.](./Images/InputSettingsNoProjectWideAsset.png)</br>
*The Input System Package Project Settings with no project-wide actions assigned displays a button to create and assign a default project-wide Action Asset.*

> **Note:** If you already have an Action Asset assigned, this button is not displayed, and instead the Actions Editor is displayed, allowing you to edit the project-wide actions.

To create an Action Asset with default actions pre-configured, click **"Create a new project-wide Action Asset"**. The asset is created in your project, and automatically assigned as the **project-wide actions**.

The Action Asset appears in your Project view, and is named "InputSystem_Actions". This is where your new configuration of actions is saved, including any changes you make to it.

![](images/InputSystemActionsAsset.png)<br/>
*The new Actions Asset in your Project window*
![](images/InputSystemActionsAsset.png)

## Edit project-wide actions

Once you have created and assigned project-wide actions, the Input System Package page in Project Settings displays the **Actions Editor** interface. Read more about how to use the [Actions Editor](ActionsEditor.md) to configure your actions.

![image alt text](./Images/ProjectSettingsInputActionsSimpleShot.png)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you expand on why this has to be removed? It provides the reader with the expectation of what is described.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For UI images, documentation is moving away from providing screenshots of the UI if the information is provided in-text to lower upkeep needed to keep images updated with UI changes. In this case, the text itself leads to the UI reference page for the ActionsEditor, so users who want to know more would be going to that page and see a fully labelled version of the same image in greater detail, so it makes this screenshot slightly redundant.

*The Input System Package Project Settings after creating and assigning the default actions*

## The default actions

When you create and assign default project-wide actions using the method described above, the Action Asset comes pre-configured with some default Actions such as "Move", "Jump", and more, which suit many common app and game scenarios. They are configured to read input from the most common types of input controller such as Keyboard, Mouse, Gamepad, Touchscreen and XR.
Expand All @@ -47,7 +44,7 @@ If you’d like to delete all the default actions so that you can start from an

You can also delete all action maps, or reset all the actions back to the default values from the **more** (⋮) menu at the top right of the Input Actions section of the settings window, below the Project Settings window search field.

![The Input Actions **more** menu as displayed in the Project Settings window](images/InputActionsSettingsMoreMenu.png)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question here.

Copy link
Collaborator Author

@Sam-Unity Sam-Unity May 21, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar to above, for the majority of the screenshot doesn't provide relevant information that we want users to focus on, as the main thing is the highlighted location of the 'more' menu in red. But the location and icon is already described in the text.

In this case, alt-text provided in the image caption would become a repeat of what has already been said above by the adjacent/accompanying text, so the image is decorative.

However if you feel the image is still important, it can be restored and we'll leave the alt-text blank.

![](images/InputActionsSettingsMoreMenu.png)

> **Note:** this **more** (⋮) menu is not available when the Actions Editor is open in a separate window, it is only present in the Project Settings window.

Expand Down
9 changes: 4 additions & 5 deletions Packages/com.unity.inputsystem/Documentation~/Workflows.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,11 @@ You can choose to configure Actions and Bindings in the Editor UI, or you can se

The descriptions below describe these main workflows and link to more detailed description of them.


| | |
|Workflows |Description |
|---|---|
|[**Using Actions**](Workflow-Actions.md)<br/><br/>This is the **recommended** workflow for most situations. In this workflow, you use the [Actions Editor window](./ActionsEditor.md) to configure sets of actions and bindings, then set up references and read the values for those actions in your code [(read more)](Workflow-Actions.md).<br/><br/>|![image alt text](Images/Workflow-Actions.png)|
|[**Using Actions and the PlayerInput Component**](Workflow-PlayerInput.html)<br/><br/>This workflow provides extra features that allow you to connect up **callbacks** directly from Actions to your own callback handler methods, removing the need to deal with Action references in your code. It also provides features that are useful in **local multiplayer** scenarios such as device assignment and split-screen functionality. [(read more)](Workflow-PlayerInput.html).<br/><br/>|![image alt text](Images/Workflow-PlayerInput.png)|
|[**Directly read device states**](Workflow-Direct.html)<br/><br/>This workflow is a simplified, script-only approach which bypasses the Actions and Bindings features entirely. Instead your script explicitly references specific device controls (such as "left gamepad stick") and reads the values directly. This is suitable for **fast prototyping**, or single fixed platform scenarios. It is a **less flexible** workflow because it bypasses some of the main input system features [(read more)](Workflow-Direct.html). <br/><br/>|![image alt text](Images/Workflow-Direct.png)|
|[**Using Actions**](Workflow-Actions.md)|This is the **recommended** workflow for most situations. In this workflow, you use the [Actions Editor window](./ActionsEditor.md) to configure sets of actions and bindings, then set up references and read the values for those actions in your code.|
|[**Using Actions and the PlayerInput Component**](Workflow-PlayerInput.md)|This workflow provides extra features that allow you to connect up **callbacks** directly from Actions to your own callback handler methods, removing the need to deal with Action references in your code. It also provides features that are useful in **local multiplayer** scenarios such as device assignment and split-screen functionality.|
|[**Directly read device states**](Workflow-Direct.md)|This workflow is a simplified, script-only approach which bypasses the Actions and Bindings features entirely. Instead your script explicitly references specific device controls (such as "left gamepad stick") and reads the values directly. This is suitable for **fast prototyping**, or single fixed platform scenarios. It is a **less flexible** workflow because it bypasses some of the main input system features|



Expand Down
7 changes: 4 additions & 3 deletions Packages/com.unity.inputsystem/Documentation~/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ The **Input System** allows your users to control your game or app using a devic

## Introduction

![Screenshot of the Input Actions Editor window displaying the default Action Maps, Actions, and Action Properties. They are displayed in 3 columns side-by-side in that order.](Images/ActionsEditor.png)<br/>
*The Input Actions Editor window, displaying some of the default actions that come pre-configured with the Input System package.*


Unity supports input through two separate systems, one older, and one newer.

The older system, which is built-in to the editor, is called the [Input Manager](https://docs.unity3d.com/Manual/class-InputManager.html). The Input Manager is part of the core Unity platform and is the default, if you do not install this Input System Package.
Expand All @@ -16,6 +20,3 @@ This **Input System package** is a newer, more flexible system, which allows you
During the installation process for the Input System package, the installer offers to automatically deactivate the older built-in system. ([Read more](Installation.md))

To get started, see the [Installation](Installation.md) and [Workflows](Workflows.md) sections. For a demo project, see the [Warriors demo](https://github.com/UnityTechnologies/InputSystem_Warriors) on GitHub.

![](Images/ActionsEditor.png)<br/>
_The Input Actions Editor, displaying some of the default actions that come pre-configured with the Input System package._