How hard is it to add Gamepad support for your game?

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/gamedev

Our great sponsors
  • JetBrains - Developer Ecosystem Survey 2022
  • Scout APM - Less time debugging, more time building
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • InputManager

    Custom InputManager for Unity

    If you're using an engine, you should find a plugin that improves their gamepad support to handle gamepad mapping, switching, active detection. There's often free, open source solutions like InputManager for Unity, baton for love2d, etc.

  • lazynput

    A game input device abstraction layer.

    for good defaults, consistent mappings and displaying labels on non-Xbox controllers there is Lazẏnput

  • JetBrains

    Developer Ecosystem Survey 2022. Take part in the Developer Ecosystem Survey 2022 by JetBrains and get a chance to win a Macbook, a Nvidia graphics card, or other prizes. We’ll create an infographic full of stats, and you’ll get personalized results so you can compare yourself with other developers.

  • baton

    An input library for LÖVE. (by tesselode)

    If you're using an engine, you should find a plugin that improves their gamepad support to handle gamepad mapping, switching, active detection. There's often free, open source solutions like InputManager for Unity, baton for love2d, etc.

  • SDL_GameControllerDB

    A community sourced database of game controller mappings to be used with SDL2 Game Controller functionality

    If you're writing from scratch, then you can follow the pattern of something like baton. This will mean a lot more work, but you're making an engine from scratch, so that's what you signed up for :D (Be sure to check out SDL_GameControllerDB even if not using SDL since it'll allow you to suport a massive list of gamepads. Use that mapping so you can query a button name and it'll be right across thousands of gamepad models.)

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts