Open topic with navigation
Below, you will see the specification in diagram format that has been previously described. The first diagram is for developers using the Android APIs, the second and third are 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 controller depicted is merely a representative of the most common controller.
Below is a simple overview of the specification, it is important for implementation to continue reading through the Advanced Topics and Considerations section. Please note certain controllers can issue multiple events for a single action which can safely be ignored, except the triggers — see notes in that section. The developer only needs to handle the events listed here.
AXIS_RTRIGGERmay also output
AXIS_GASwith the exact same values. See the pseudo-code at the bottom of The Bumpers and Triggers section.
AXIS_HATvalues for the DPAD. Android will generate the proper DPAD equivalents for
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 the user assigns controller functions to application functions. There are several Unity plug-ins available to help you along.
Unity v4.3 (and later) enhanced controller support for Android. The enhancements put Unity in line with Android’s controller specifications, thus leveraging its controller compatibility. We highly recommend using this version or better for maximum controller support. Please note certain controllers can issue multiple events for a single action which can safely be ignored, except the triggers — see notes in that section. The developer only needs to handle the events listed here.
NVIDIA® GameWorks™ Documentation Rev. 1.0.200608 ©2014-2020. NVIDIA Corporation. All Rights Reserved.