Update – It has come to our attention that it’s actually possible to use the Windows 7/8 Xbox One pad drivers under Windows 10, at least while using the controller with a USB cable rather than by the wireless adapter. By doing this, the pads analogue triggers are mapped in the same way as they were on the Xbox 360 pad, both triggers to the Z axis. You can even toggle between the two layouts by changing between “Xbox Controller” and “Xbox Gaming Device 6.2.22058.0” in device manager (full tutorial here). While it’s disappointing to have to go back to the old layout that didn’t work well with so many driving games, at least this layout doesn’t break compatibility entirely with many titles.
Major Nelson originally posted these drivers on his blog here. The download links have since been removed, but luckily you can still grab the 32 bit driver here and the 64 bit driver here. If those links stop working let me know and I’ll find some alternative arrangements.
We don’t yet know if using these drivers breaks compatibility with things like the Xbox One chatpad or the firmware update tool. Update – Yes the old drivers do break chatpad compatibility… *sigh*.
The original Xbox 360 controller quickly established itself as a standard controller for modern PC games, thanks to Microsoft’s new XInput API and wide support for the controller in recent PC titles. Choose the Xbox 360 controller and no longer do you have to suffer the indignity of being told “press button 1 on your controller”, when all the inputs are labelled with letters. Yes, it’s great that on the PC, I could use a Wiimote in Skyrim if I really wanted to, but sometimes the biggest strengths of the platform can be weaknesses too. There’s certainly something to be said for standardised controller layouts when it comes to actually playing games.
Of course, the Xbox 360 is no longer Microsoft’s flagship games console. With their newest console, the Xbox One, Microsoft took the opportunity to redesign the controller and make some subtle but significant changes. There are plenty of reviews of this new controller available on-line, but despite drivers having been available for some time now, few take a really in-depth look at its performance on the PC, so that’s what we’ll be doing today.
Xbox One Controller – Familiar but different
The Xbox One controller ships in an unremarkable green box, with the familiar Microsoft/Xbox One branding on it. Inside the box, you get the controller itself and a set of AA batteries. What you don’t get is either a USB cable or a wireless receiver, you will need to add one or the other in order to use the device on the PC. The old Xbox 360 wireless receiver is not compatible with the new pad. Thankfully any standard micro-USB cable will work. Attach the controller like this to any spare USB port on your PC and Windows 10 will detect the pad and download the drivers automatically.
The pad itself feels instantly familiar to those of us who are used to the old 360 pad. In keeping with recent Microsoft traditions, the Select and Start buttons have been re-labelled with some strange hieroglyphic symbols. The analogue sticks feel a tiny fraction softer than on the old pad and the triggers feel a little spongier, but both perform well in use. The analogue triggers also protrude slightly further out from the pad. I didn’t anticipate this being a problem, but while getting used to the pad I did find myself catching the triggers accidentally thanks to my muscle memory from all the years of using the 360 controller.
One element of the old 360 pad that was often criticised was the D-pad. The old 360 D-pad was notorious for slipping down into diagonals thanks to its wobbly design. The new Xbox One D-pad is a massive improvement. To test the pad, I fired up a selection of Mame games such as Pac-Man, Rolling Thunder and Dig Dug. The D-pad performed excellently in these classic titles, with only Pac-Man really causing me to question if a mistake was down to a pad slip or just my own clumsiness. Overall I still feel that the Sega Saturn controller is the gold standard when it comes to D-pads, but the Xbox One D-pad puts in a commendable performance.
XInput vs DirectInput in a nutshell
In PC gaming, there are two main API standards for reading and interfacing with controllers. DirectInput (often abbreviated to Dinput) came first and is what the majority of games used before XInput came along. DirectInput is highly flexible and works with a huge range of controllers. XInput on the other hand was really designed around the Xbox controller. According to Microsoft it’s much easier for programmers to support than DirectInput, but it lacks some of the advanced features of DirectInput. Like the Xbox 360 controller, the Xbox One controller supports both XInput and DirectInput, at least to some degree.
Performance – Xinput and recent games
In most instances the Xbox One controller can be used as a direct replacement for the Xbox 360 controller for recent (XInput compatible) games. The buttons will map in exactly the same way and it’s then just a matter of getting used to the slightly different triggers. Bizarrely, there is at least one game (Sonic and Sega All Stars Racing Transformed) that doesn’t work with the pad at all, presumably due to shoddy programming (like many games in this genre, the PC port was almost certainly somewhat of a rush job). While this only affects a small number of games, it’s nevertheless quite disappointing and means you will need to keep your 360 controller on hand, just in case.
Performance – DirectInput and legacy games
Poor DirectInput support on the Xbox 360 controller has always been a bone of contention between PC gamers and Microsoft. Although the 360 pad works perfectly fine in a large number of DirectInput titles, Microsoft made the decision to map both of the pads analogue triggers to the same axis. So, by squeezing the left analogue trigger all the way down, you’d set the axis to the minimum, and by squeezing the right analogue trigger all the way down, you would set the axis to the maximum. The problem with this is that it doesn’t work well in a lot of games, especially driving games. If you want to perform some advanced racing manoeuvres you will often want to touch both the throttle and the brake at the same time and since these controls were mapped to the same axis, that wouldn’t work. There were various workarounds for this problem, including alternative pad drivers, but none of them were terribly convenient and each had their own caveats too.
For the Xbox One pad, Microsoft has at least tried to remedy this behaviour. Each analogue trigger is now assigned to a different axis. This is good news for the most part. We tested the controller in the classic racing game Rallisport Challenge and indeed it did allow for proper, individual control of the throttle and brake. Classic racing game Trackmania didn’t fare so well however. No matter how we configured the controller, the game would always think we were trying to accelerate or brake while not touching either input. While this game is notorious for its poor controller support, it highlights an important issue with the Xbox One controllers DirectInput support. Usually when an axis is at rest, it’s value is set somewhere in the middle of the range, or half way up the axis, if you prefer. Microsoft decided that the triggers should have a zero value when at rest, or all the way down the axis if you prefer. This does allow for a wider range of input on the analogue axis, but lots of games assume that the input is a joystick or a throttle control where 0 is the control pulled back to its furthest negative extreme. This can confuse some software that thinks the control is permanently pressed when it is not. This can actually be a significant problem in some software. Trying to configure controls in some emulators is now pretty much impossible, although software such as Xpadder can help work around the issue in some cases.
Ideally we’d have liked to have seen a toggle that allows the controllers triggers to be toggled between 0 and centre when at rest. Given that Microsoft isn’t the best at supporting DirectInput on Xbox controllers though, don’t hold your breath for this functionality to be added any time soon. If it is, we’ll update the review accordingly.
Xbox button and Windows 10 features
If you’ve already upgraded to Windows 10, you can use the Xbox One controller to perform a few basic functions. By pressing the Xbox button on the pad, more Microsoft hieroglyphics will appear over the game you are playing, allowing you to take screen-shots and videos. That’s the theory anyway, the overlay doesn’t work in every game, in fact it seems to work in far less titles than either Steam or Evolve. In many games, pressing the Xbox button simply makes the screen flash. The recording and screenshot functions work well, though we can’t imagine many people would use these features in preference to either Steam or Evolve, since these overlays already have much more functionality.
There’s also a Windows 10 exclusive app called the “Xbox Accessories” app. This lets you update the firmware on the controller. This worked without a hitch with our controller, though we’re not exactly sure what benefit there was to updating the firmware. The app also lets you remap triggers and other inputs, that is if you’ve shelled out over £100 for the “Elite” controller, otherwise that’s not possible.
The controller also includes a standard 3.5mm headphone jack for attaching suitable gaming headsets. When tested with a basic ear-piece headphone, the audio seemed excessively quiet. If the opportunity arises to test other headsets with the controller, this review will be updated, but for now keep in mind that you may need to connect your headset directly to the PC rather than through the controller if you want to hear what your friends are saying.
The Xbox One pad is a comfortable controller with excellent analogue sticks and a great D-pad too. It’s a real shame that Microsoft implemented the new DirectInput drivers in such a way as to break compatibility with a significant number of games. By fixing the old analogue axis problem in some games, they’ve gone and created a host of new problems in others. Given this rather thorny issue, it’s difficult to recommend the Xbox One controller just now, although the prospect of a fully supported chatpad to use with Steam or Evolve is quite tantalising (a review of the chatpad will be published in the near future). For now, we’d recommend keeping your 360 controllers and just buying a different pad (such as the Logitech F310) if you need full DirectInput compatibility.