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
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,11 @@
* [Interactions](interactions.md)
* [Processors](processors.md)
* [Configure sctions](configure-actions.md)
* [The actions editor window](actions-editor.md)
* [Input Actions Editor reference](actions-editor.md)
* [Input Actions Editor window reference](input-actions-editor-window-reference.md)
* [Action Properties panel reference](action-properties-panel-reference.md)
* [Binding Properties panel reference](binding-properties-panel-reference.md)
* [Control Schemes and Devices menu reference](control-schemes-devices-menu-reference.md)
* [Devices](devices.md)
* [Get information about devices](get-information-about-devices.md)
* [Using the Input System]()
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Action Properties panel reference

Use the Action Properties panel to configure actions, and their associated [interactions](interactions.md) and [processors](processors.md).

The Action Properties panel changes depending on the **Action Type** of the selected Action.

|Property|Description|
|-|-|
|**Action Type**| Define whether the action is a **Value**, **Button**, or **Pass Through** action type. Refer to [Action and control types](action-and-control-types.md) for detailed information on action types. |
|**Control Type**| Define the control type for the selected action. Refer to [Action and control types](action-and-control-types.md) for detailed information on control types. <br/><br/>This property is only available when **Action Type** is set to **Value** or **Pass Through**. |
|**Initial State Check**| Perform an initial state check when the Action is first enabled, to check the current state of any bound Control. <br/><br/>This setting is only available when Action Type is set to **Button** or **Pass Through**. It is always enabled for **Value**-type actions. Refer to [binding initial state checks|(binding-initial-state-checks.md) for detailed information.

[!include[Interactions reference](include-interactions-reference)]

[!include[Processors reference](include-processors-reference)]

This file was deleted.

61 changes: 7 additions & 54 deletions Packages/com.unity.inputsystem/Documentation~/actions-editor.md
Original file line number Diff line number Diff line change
@@ -1,56 +1,9 @@
---
uid: input-system-configuring-input
---
# Configuring Input with the Actions Editor
# Input Actions Editor reference
Comment thread
siobhan-unity marked this conversation as resolved.
Use the Input Actions Editor to create action maps, configure actions and bindings, connect controls, and assign interactions and processors.

The **Input Actions Editor** allows you to edit [Action Assets](ActionAssets.md), which contain a saved configuration of [Input Actions](actions.md) and their associated [Bindings](ActionBindings.md).

It allows you to group collections of Actions into [Action Maps](ActionsEditor.html#configure-action-maps), which represent different input scenarios in your project (such as UI navigation, gameplay, etc.)

It also allows you to define [Control Schemes](ActionBindings.md#control-schemes) which are a way to enable or disable a set of devices, or respond to which type of device is being used. This is often useful if you want to customise your UI based on whether your users are using mouse, keyboard, or gamepad as their chosen input.

### Action Assets and Project-Wide Actions

The typical workflow for most projects is to have a single Action Asset, which is assigned as the **project-wide actions**. If you have not yet created and assigned an Actions Asset as the project-wide actions, the recommended workflow is to do this first. Read more about [project-wide actions](about-project-wide-actions.md).

### Opening the Actions Editor

The **Input Actions Editor** is an editor window displayed when you open an Action Asset by double-clicking it.

It is also displayed in the Project Settings window under **Edit** > **Project Settings** > **Input System Package** if you have an Action Asset assigned as project-wide.

![image alt text](./Images/ActionsEditorCallout.png)
*The Input Actions editor, displaying the default actions*

### The Actions Editor panels

The Input Actions editor is divided into three panels (marked A, B & C above).

|Name|Description|
|Topic|Description|
|-|-|
|**(A)&nbsp;Action Maps**|Displays the list of currently defined Action Maps. Each Action Map is a collection of Actions that you can enable or disable together as a group.|
|**(B)&nbsp;Actions**|Displays all the actions defined in the currently selected Action Map, and the bindings associated with each Action.|
|**(C)&nbsp;Properties**|Displays the properties of the currently selected Action or Binding from the Actions panel. The title of this panel changes depending on whether you have an Action or a Binding selected in the Actions panel.|


### Configure Actions

* To add a new Action, select the Add (+) icon in the header of the Action column.
* To rename an existing Action, either long-click the name, or right-click the Action Map and select __Rename__ from the context menu.
* To delete an existing Action, either right-click it and select __Delete__ from the context menu.
* To duplicate an existing Action, either right-click it and select __Duplicate__ from the context menu.


> **Note:**
> Although you can reorder actions in this window, the ordering is for visual convenience only, and does not affect the order in which the actions are triggered in your code. If multiple actions are performed in the same frame, the order in which they are reported by the input system is undefined. To avoid problems, you should not write code that assumes they will be reported in a particular order.


### Editing Control Schemes

Input Action Assets can have multiple [Control Schemes](ActionBindings.md#control-schemes), which let you enable or disable different sets of Bindings for your Actions for different types of Devices.

![Control Scheme Properties](Images/ControlSchemeProperties.png)

To see the Control Schemes in the Input Action Asset editor window, open the Control Scheme drop-down list in the top left of the window. This menu lets you add or remove Control Schemes to your Actions Asset. If the Actions Asset contains any Control Schemes, you can select a Control Scheme, and then the window only shows bindings that are associated with that Scheme. If you select a binding, you can now pick the Control Schemes for which this binding should be active in the __Properties__ view to the left of the window.

When you add a new Control Scheme, or select an existing Control Scheme, and then select __Edit Control Scheme__, you can edit the name of the Control Scheme and which devices the Scheme should be active for. When you add a new Control Scheme, the "Device Type" list is empty by default (as shown above). You must add at least one type of device to this list for the Control Scheme to be functional.
|[Input Actions Editor window reference](input-actions-editor-window-reference.md)| Access and navigate the Input Actions Editor window. |
|[Action Properties panel reference](action-properties-panel-reference.md)| Create and configure actions.|
|[Binding properties panel reference](binding-properties-panel-reference.md)| Create and configure bindings.|
|[Control Schemes and Devices menu reference](control-schemes-devices-menu-reference.md)| Use the Control Schemes and Devices menus to connect controls and devices with bindings.|

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Binding Properties panel reference

Use the Binding Properties panel to configure [bindings](bindings.md) and [composite bindings](composite-bindings.md), and their associated [interactions](interactions.md) and [processors](processors.md).


The Binding Properties panel changes depending on whether you are configuring a single [binding](bindings.md) or a [composite binding](composite-bindings.md).

## Binding properties

For each [binding](bindings.md), the Binding Properties panel displays the following properties by default:

|Property|Description|
|-|-|
|**Path**| Select the path of the control to assign this binding to. You can select an [input device](devices.md) from the list available, or use the **Usage** menu to select from a list of [usages](control-usages.md). |
|**Use in control scheme**|Select the [control schemes](control-schemes.md) that you want to apply this binding to. <br/><br/> This section only appears if you have control schemes in your project. |

## Composite binding properties

When you create a [composite binding](composite-bindings.md), the Binding Properties panel displays the following properties by default:

|Property|Description|
|-|-|
|**Composite Type**|Select the [composite type](composite-bindings.md) of the selected binding. The options are: <br/>- **1D Axis**: Create a composite binding made of two buttons: one that pulls a 1D axis in its negative direction, and another that pulls it in its positive direction. <br/>- **2D Vector**: Create a composite binding that represents a 4-way button setup like the D-pad on gamepads. <br/>- **3D Vector**: Create a composite binding that represents a 6-way button where two combinations each control one axis of a 3D vector. <br/>- **One Modifier**: Create a composite binding that requires the user to hold down a "modifier" button in addition to another control from which the actual value of the Binding is determined. <br/>- **Two Modifiers**: Create a composite binding that requires the user to hold down a "modifier" button in addition to another control from which the actual value of the Binding is determined. |

For more information on the composite types that are available by default, refer to scripting documentation on [`InputSystem.Composites`](../api/UnityEngine.InputSystem.Composites). Others might also be available if your project contains custom composite binding types.

### Axis binding reference

When **Composite Type** is set to **1D Axis**, the Binding Properties panel displays the following properties by default:

|Property|Description|
|-|-|
|**Which Side Wins**|Define what happens when both buttons are triggered at the same time. <br/>- **Positive**: Prioritize the Positive binding. <br/>- **Negative**: Prioritize the Negative binding. <br/>- **Neither**: Do nothing when both bindings are triggered at the same time. |

For more details, refer to scripting reference documentation on [`Composites.AxisComposite`](..api/UnityEngine.InputSystem.Composites.AxisComposite.html).

### Vector binding reference

When **Composite Type** is set to **2D Vector** or **3D Vector**, the Binding Properties panel displays the following properties by default:

|Property|Description|
|-|-|
|**Mode**| Select the process that the Input System uses to calculate a Vector2 or Vector3 from the input values provided. <br/>- **Analog**: Accept and use the floating-point values from controls. <br/>- **Digital**: Treat control values as on/off, and do not normalize the resulting vector. <br/>- **Digital Normalized**: Treat control values as on/off, and normalize the resulting vector. |

For more details on each mode, refer to scripting reference documentation on [`Vector2Composite.Mode`](../api/UnityEngine.InputSystem.Composites.Vector2Composite.Mode) and [`Vector3Composite.Mode`](../api/UnityEngine.InputSystem.Composites.Vector3Composite.Mode).

### Binding with modifier reference

When **Composite Type** is set to **One Modifier**, **Two Modifiers**, **Button With One Modifier**, or **Button with Two Modifiers**, the Binding Properties panel displays the following properties by default:

|Property|Description|
|-|-|
|**Override Modifiers Need To Be Pressed First**| **Note**: This property is obsolete. Use the **Modifiers Order** property instead.<br/><br/>Override the Input Consumption setting, so that the composite binding still triggers if the modifiers are pressed after the button. |
|**Modifiers order**| Define the order in which buttons and modifiers must be pressed in order to trigger the composite binding. <br/>- **Default**: Apply the Input Consumption setting. <br/>- **Ordered**: Only trigger the binding if the modifiers are in a pressed state before the button enters a pressed state. <br/>- **Unordered**: Allow the binding to trigger regardless of the order in which the buttons and modifiers enter a pressed state. |

For more details, refer to scripting reference documentation on [`OneModifierComposite`](..api/UnityEngine.InputSystem.Composites.OneModifierComposite.html), [`TwoModifiersComposite`](..api/UnityEngine.InputSystem.Composites.TwoModifiersComposite.html), [`ButtonWithOneModifier`](..api/UnityEngine.InputSystem.Composites.ButtonWithOneModifier.html), and [`ButtonWithTwoModifiers`](..api/UnityEngine.InputSystem.Composites.ButtonWithTwoModifiers.html).

[!include[Interactions reference](include-interactions-reference)]

[!include[Processors reference](include-processors-reference)]

This file was deleted.

Loading