Controllers are an alternative to keyboard and mouse input. Almost all recently released PC games support controllers, although many only support the newer XInput controllers by default.
For information on specific controllers, see the controller category.
 XInput vs. DirectInput
DirectInput is Microsoft's older controller API. XInput controllers operate in DirectInput mode for these games. Logitech's F310 and F710 gamepads have a physical switch which should be set to "D" for these games.
 DirectInput controllers with XInput-only games
x360ce makes DirectInput controllers show up as XInput controllers for games that only support XInput.
 Customize XInput controller settings
Use Durazno to adjust axis inversion, rumble strength and various other settings.
 XInput force feedback rumble in DirectInput games
XInput controllers do not support the force feedback rumble support built into some older games. To re-enable this, install Force Feedback Driver for XInput (for Windows 8 use the Windows 7 version). Once this is installed many games will see the controller as force feedback-compatible and so those settings can then be used.
Some games will still not see the controller as force feedback-compatible even with this driver installed.
 Using multiple controllers with older games
Some older games do not allow you to select which controller to use, instead using the first controller reported by Windows; if you have multiple controllers the one you want may not be selected. To set the first controller open Game Controllers (
joy.cpl) and click the Advanced button, then choose the controller you want. This setting is only relevant if you have multiple controllers connected; if you only connect one controller at a time it will always be reported as the first controller.
Some special controllers (e.g. certain HOTAS setups) report the separate physical pieces as individual controllers, making it difficult to use the entire controller with games that can only see a single controller. For these controllers you will need to set the main portion of the controller as the preferred device and then use another method to set up controls for the other parts (see controller with keyboard-only game).
 Non-PC controllers (PlayStation 3, Wii, etc.)
- For PlayStation 3 controllers see PlayStation 3 DualShock Controller.
- For Wii controllers use FreePIE or GlovePIE with a compatible Bluetooth adapter.
- For other controllers use a USB adapter. The controller should then show up as a basic controller.
 Controller with keyboard-only games
Some games have limited or no controller support built in. This mostly affects older games but there are also some recent releases with no native support, notably BioWare's Mass Effect and Dragon Age games.
See controller with keyboard-only game for solutions.
 Mac OS X
Most Windows controllers are natively supported on Mac OS X. For XInput controllers, use Tattiebogle's Mac OS X Driver.
Most Windows controllers are natively supported by the major Linux distributions.
DOS games have very limited controller support and are usually only able to see a fixed number of buttons and axes; many DOS games don't support controllers at all. The DOSBox Mapper can be used to rearrange button assignment and also bind keyboard/mouse inputs to additional buttons/axes. The number of buttons/axes available for mapping can depend on the DOSBox joystick setting; see the DOSBox Joystick section for details.