The Controller Specification


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.

The Specification Using Android APIs

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.

Notes

The Specification in Unity pre-v4.3

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.

Notes

The Specification in Unity v4.3 and Later

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.

Notes

 

 

 


NVIDIA® GameWorks™ Documentation Rev. 1.0.200601 ©2014-2020. NVIDIA Corporation. All Rights Reserved.