It's technically advertising, though i've got no ties to the developer Glad you found it useful! Although if you could post something on his facebook page enquiring about a hypothetical 4 player support.that could be cool! XD I just really want this thing to get fleshed out as it seems like it might be the actual solution to this whole DINPUT vs XINPUT thing. If the game supports Dinput, it'll recognise it too, and you have the option to remap buttons and inputs in the game and in the overlay config menu. And if the game doesn't support anything except kb/mouse then the controller is that, both in drivers and in game. So if you want to use xinput. Dinput stands for direct input. As of 2010, the XInput API will have restrictions that DirectInput does not respect: XInput only supports next-generation controllers. This is mainly limited to Xbox 360 controllers with even Windows drivers. Windows controllers, joysticks, and exteroception general feedback devices are not supported.
There’s little argument against the mouse and keyboard as the best way to play classic PC genres like first-person shooters and real-time strategy games. But the mainstream gaming world is dominated by gaming console titles that aren’t designed for a keyboard and mouse. Using a console controller on a PC solves this problem neatly.
Unlike an actual console, it’s not as simple as plugging in whatever controller you have handy and just pressing start. Unfortunately, it can take a little legwork to make your controller work on a PC. In this article, I’ll go over some of the controller options available out there and how you can set them up to work with your PC.
I’m not going to cover controllers for retro-gaming such as the Nintendo 64 controller. Only modern video game controllers.
We’ll be going over the following options:
- PC-specific controllers
- PS3 and Xbox 360 controllers
- PS4 and Xbox One controllers
Table of Contents
Made-for-PC Controllers
Before the Xbox 360 and Playstation 3 era, PC gamers already had gamepads of their own. In fact, joysticks and gamepads have been around for a long time. The first ever gamepad for the IBM PC and its clones was the Gravis PC Gamepad released back in 1991.
For the most part, PC gamepads worked pretty great, but they didn’t have a standard so games didn’t necessarily support them natively.
With the coming of DirectX and it’s component DirectInput, things became a little more reliable. Gamepad makers also started copying the Playstation Dualshock design, which is more or less the template for the buttons on a “standard” controller these days.
You can still use PC gamepads just fine with older games that support DirectInput, but most modern PC games have moved on to Xinput, which is what the Xbox controllers use.
Dinput vs Xinput
To make it as simple as possible, games that support Xinput work natively with the Xbox 360 controller. They will usually show button prompts that match the controller. If a game only supports Xinput, as many do, your DirectInput controller just won’t work with that game.
That is unless you use something like x360ce which makes the computer think your old gamepad is actually an Xbox 360 controller.
You can also buy gamepads that have a switch to toggle between the two types of input, but unless you want to play older games, Xinput should be all you need.
PS3 and Xbox 360 controllers
The easiest to use console controller on a PC has to be the Xbox 360 controller. It comes in a wired and wireless variety and the method to get both working is a little different.
The X360 Method
If you have a wired Xbox 360 controller and are running a modern version of Windows (Seven and up) then all you have to do is plug it into a free USB port and you’re done.
That’s it.
It’s not that surprising I guess, given that Windows is built to work with this controller.
When it comes to the wireless version, things are slightly trickier. While Windows does natively support the wireless version, it needs a special hardware receiver for it. You’ll need to buy one, but after that, it’s also just a matter of plugging it in.
The PS3 Method
Getting a PS3 controller to work has been quite a pain in the past, but now there’s software available that makes it pretty easy to get up and running.
You can run it wired or wireless via Bluetooth, but in either case you need to install the right software so that Windows will talk to the device.
Here’s what you need to do:
- Plug the controller into your PC with the USB charging cable
- Let Windows finish any automatic driver installations
- Download and install the official Xbox 360 driver
- Install the SCP driver package
- Run the “ScpToolkit Driver Installer” as administrator
- Check all boxes and select the right Dualshock 3 for you (e.g. Bluetooth)
- Click install
After this you should simply be able to plug in the Dualshock 3 and it will just work.
PS4 and Xbox One controllers
The latest console controllers are also the most comfortable and feature-rich. Thankfully, they also enjoy the best support in Windows as well.
The PS4 Method
Arguably one of the best controllers today, the Dualshock 4 that come with the PS4 needed the same sort of mild hacking to work on PC as the PS3 version. That’s all changed now with official support from Sony for Windows 10.
All you need to do is buy the official receiver and you are good to go.
If you don’t feel like paying out more, then there’s always DS4Windows.
Both are pretty straightforward. Just plug in and install. You should be good to go.
The Xbone Method
As with the X360 controller, using an Xbox One controller with Windows is easy. It has everything built in.
Unlike the X360 controller, there’s no wired version so you’ll have to connect wirelessly.
Here I have some good news and some bad news.
The good news is that you don’t need to buy a receiver if you only want to connect a single controller. You can use your PC’s existing Bluetooth.
The bad news is that only some Xbone controllers support Bluetooth. Microsoft has a little guide to help you tell if yours has the feature.
Directinput To Xinput Reddit
Enjoy Using a Console Controller on a PC!
That should give you enough info to let you use a console controller on a PC. There are so many games ported from the big consoles that simply have to be played with a console gamepad to really enjoy them. In fact, if you have a decent PC I’d say this is the best way to enjoy those games. Even better than on the consoles themselves!
Directinput Vs Xinput Triggers
Now that you have your console controller on a PC, why not take some time to fine tune the graphics?
While using a console controller on a PC is a blast, maybe you’re looking for some old-school keyboard action instead?
IMAGE CREDITS
Gravis Gamepad By Tosiabunio (Own work) [CC BY 3.0 (http://creativecommons.org/licenses/by/3.0)], via Wikimedia Commons
Dualshock 3 By Alphathon (Own work) [CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0) or GFDL (http://www.gnu.org/copyleft/fdl.html)], via Wikimedia Commons
Xbox Elite controller By Gamingforfun365 (This was photographed.) [GFDL (http://www.gnu.org/copyleft/fdl.html) or CC BY-SA 3.0 (http://creativecommons.org/licenses/by-sa/3.0)], via Wikimedia Commons
All other images are Public Domain
More Tech Posts
I bought a crappy cheap game controller to use for a few weeks and ran into the total compatibility nightmare which is Windows game controllers.
Long story short, there’s two completely separate APIs. DirectInput and XInput. Old controllers (like my cheap PS3 knockoff) used DirectInput. Starting ~2005 Microsoft introduced XInput as a new API with better support for advanced controllers. It had drawbacks and some game controllers were slow to adopt it. Around 2011 Microsoft deprecated DirectInput, so everyone’s supposed to use XInput now. Despite that you can still buy new controllers that do DirectInput. Some controllers have a hardware switch to toggle modes.
What’s dumb is not all games still support DirectInput. (Looking at you, Dead Souls). Worse, Microsoft’s drivers don’t support some compatibility shims so a DirectInput device can be used via the XInput API. So you have to do something third party if you have an old DirectInput controller and want it to work with XInput. There’s three options I found:
x360ce is a thing that emulates an X360 controller and looks like an XInput driver but takes its input from DirectInput devices. I’m not sure it really is a driver, the hack includes its own XInput.dll you have to drop in to some games’ folders to fake it out. I didn’t try this, but it’s the usual old school gamer recommendation for solving this problem. It seems very flexible and hacker friendly. There’s newer binary builds on the GitHub page.
Dinput Vs Xinput
ScpToolkit is similar to x360ce, but emulates a Playstation controller. I did actually install this and found it didn’t work and uninstalling was spooky. I ended up using Windows’ rollback to remove it.
Directinput Or Xinput
Steam Big Picture mode also includes an XInput emulator that seems to work well. I can’t find official docs for it and its confusing, but the Internet is full of badly written guides and videos on how to use it. This is what I ended up using. Setup is a bit fiddly; for awhile I was telling it to be “Generic” and it was sort of working but what I really wanted was “Playstation”. I’m still not clear if that means it’s emulating a Playstation controller, or if it is using this cheap controller I bought thinking it is a Playstation controller. Or both. Whatever, it seems to work.