Rewired

Rewired is an advanced input system for Unity

Visit the Rewired Website

Take control over input! Rewired makes joysticks, the keyboard, mouse, and other controllers work as they should. Frustrated with Unity’s severely lacking input system? Have you tried other solutions only to find they have too many limitations? Check out Rewired…

Hot-Plugging
Did you know that if you unplug a joystick or if a wireless controller falls asleep, you have to quit and restart the game for the controller to show up again? Not anymore! Rewired is the first and only input system available for Unity that fully supports controller hot-plugging on Windows, Windows Store, and OSX. Other systems stop short, only supporting hot-plugging on Windows, and only with the relatively few XInput compatible controllers that exist. Not with Rewired! Hot-plugging works with virtually any USB controller on Windows and OSX. [1]
Player-Centric
Rewired features a player-centric input system making it the perfect solution for multi-player games. Instead of getting input from the controller, you get input from the player. So no matter whether the input is coming from the keyboard, mouse, joystick, or touch controller, you always get the result with no hassle. Controllers can be intelligently auto-assigned to players on connect/disconnect, so you don’t have to worry about what controllers each player owns. Instead, you simply get input for the action you’re looking for and Rewired handles the rest!
Controller Maps
Rewired features a powerful controller mapping system that allows you to create highly complex input schemes for any style of game. Maps stack so you can have as many maps as you need for each controller, the keyboard, and mouse. If you have multiple game modes that need different controls such as Menu, Infantry, Tank, Airplane, you can have shared controls on one map, and mode-specific controls each on its own map, then enable/disable maps as needed. Create pre-defined map layouts, allow users to map controls, and save maps to XML.

 
A Convenient Editor

Create and edit all your Players, Actions, Input Behaviors, Maps, Categories, and more directly in the Rewired Editor. The editor is packed with features and has an intuitive workflow.
 

The Editor
The Rewired Editor was designed to be your one-stop-shop for input configuration. It gives you access to everything you need to create input for your game. Configure global settings such as the update loops, auto-assignment of joysticks, and more. Create all your players, actions, and controller maps, assign maps to players, and more from an easy-to-use interface. Organize your input how you want with map and action categories. The editor fully supports Undo and Redo and has complete tool-tip descriptions.
Categorization
Do you need to create dozens and dozens of actions? Unity’s input manager forces you to create one long list of actions in a fixed-order array. It can quickly become confusing and cumbersome to make changes scrolling through a list of tens or hundreds of actions. Other systems require you create your actions by coding. Rewired solves those problem with action categories. Now you can split up your actions into logical categories for easier editing. And you can reorder, duplicate, insert, and delete actions as you see fit.
Maps and Layouts
Create pre-defined controller layouts for various controllers or save time and just create maps for a controller template. Create complex, shared and stacked mapping set-ups easily by assigning the maps you want to each player, then setting the start enabled state on the maps. Even create system-only maps for special actions such as Save, Load, etc. Map the keyboard, mouse, joysticks, and custom controllers all from one interface. You can even create map categories and layouts for organization.

 
Rewired has so many great features, it’s hard to list them all… See the Rewired website for more information.

 

1 Controller must be compatible with underlying system. On Windows the controller must be compatible with DirectInput or XInput. On OSX, it must be compatible with Apple HID, etc. Support for exotic controller types not guaranteed.
2 Frame-rate independent input only applies to USB controllers and Custom Controllers, not including the keyboard and mouse. Does not apply to platforms that fallback to Unity input.