Standalone Input Module
The module is designed to work as you would expect a controller / mouse input to work. Events for button presses, dragging, and similar are sent in response to input.
The module sends pointer events to components as a mouse / input device is moved around, and uses the Graphics Raycaster and Physics Raycaster to calculate which element is currently pointed at by a given pointer device. You can configure these raycasters to detect or ignore parts of your SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary, to suit your requirements.
The module sends move events and submit / cancel events in response to Input tracked via the Input managerA Unity window where you can define all the different input axes, buttons and controls for your Project. More info
See in Glossary. This works for both keyboard and controller input. The tracked axis and keys can be configured in the module’s inspectorA Unity window that displays information about the currently selected GameObject, Asset or Project Settings, alowing you to inspect and edit the values. More info
See in Glossary.
Properties
Property: |
Function: |
Horizontal Axis |
Type the desired manager name for the horizontal axis button. |
Vertical Axis |
Type the desired manager name for the vertical axis. |
Submit Button |
Type the desired manager name for the Submit button. |
Cancel Button |
Type the desired manager name for the Cancel button. |
Input Actions Per Second |
Number of keyboard/controller inputs allowed per second. |
Repeat Delay |
Delay in seconds before the input actions per second repeat rate takes effect. |
Force Module Active |
Tick this checkbox to force this Standalone Input Module to be active. |
Details
The module uses:
- Vertical / Horizontal axis for keyboard and controller navigation
- Submit / Cancel button for sending submit and cancel events
- Has a timeout between events to only allow a maximum number of events a second.
The flow for the module is as follows
- Send a Move event to the selected object if a valid axis from the input manager is entered
- Send a submit or cancel event to the selected object if a submit or cancel button is pressed
- Process Mouse input
- If it is a new press
- Send PointerEnter event (sent to every object up the hierarchy that can handle it)
- Send PointerPress event
- Cache the drag handler (first element in the hierarchy that can handle it)
- Send BeginDrag event to the drag handler
- Set the ‘Pressed’ object as Selected in the event system
- If this is a continuing press
- Process movment
- Send DragEvent to the cached drag handler
- Handle PointerEnter and PointerExit events if touch moves between objects
- If this is a release
- Send PointerUp event to the object that received the PointerPress
- If the current hover object is the same as the PointerPress object send a PointerClick event
- Send a Drop event if there was a drag handler cached
- Send a EndDrag event to the cached drag handler
- Process scroll wheel events
Did you find this page useful? Please give it a rating:
Thanks for rating this page!
What kind of problem would you like to report?
Is something described here not working as you expect it to? It might be a Known Issue. Please check with the Issue Tracker at issuetracker.unity3d.com.
Thanks for letting us know! This page has been marked for review based on your feedback.
If you have time, you can provide more information to help us fix the problem faster.
Provide more information
You've told us this page needs code samples. If you'd like to help us further, you could provide a code sample, or tell us about what kind of code sample you'd like to see:
You've told us there are code samples on this page which don't work. If you know how to fix it, or have something better we could use instead, please let us know:
You've told us there is information missing from this page. Please tell us more about what's missing:
You've told us there is incorrect information on this page. If you know what we should change to make it correct, please tell us:
You've told us this page has unclear or confusing information. Please tell us more about what you found unclear or confusing, or let us know how we could make it clearer:
You've told us there is a spelling or grammar error on this page. Please tell us what's wrong:
You've told us this page has a problem. Please tell us more about what's wrong:
Thanks for helping to make the Unity documentation better!