The Gamepad Specification

Below, you will see the specification that has been previously described. The first page is for people using the Android APIs, the second is for Unity developers.

As of this writing, this specification takes into account over 25 different controllers from the major consoles to all major third party manufacturers. Moreover, with Google and NVIDIA recommending this specification to developers, as well as controller manufacturers, that number will only continue to grow.

Take special care to read all of the notes here, as they are important to fully implement the specification.

The Specification using Android APIs

The representative gamepad below shows an amalgam of standards brought together to simplify input handling for the developer. Please note certain controllers can issue multiple events for a single action which can safely be ignored, except the triggers — see the notes in that section. The developer only needs to handle the events listed here.


The Specification in Unity

For the broadest range of plug and play support, we recommend using this controller as your default. If possible, it is also recommended that you use a controller setup screen. This is an Options screen, in which users assign controller functions to application functions. There are several Unity plug-ins available to help you along.

Unity Notes




NVIDIA® GameWorks™ Documentation Rev. 1.0.220830 ©2014-2022. NVIDIA Corporation and affiliates. All Rights Reserved.