New Collections now available for free

Switcheroo - Input Device Detection

minifloppy - Oct 26, 2018

Easily detect whether the player is using a gamepad or the keyboard/mouse combo, and react accordingly.

  • Supported Platforms
  • Supported Engine Versions
    4.18 - 4.26
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

To provide a great user experience, games should let players switch from a gamepad to the keyboard/mouse combo (and vice-versa) seamlessly and at any time. Implementing this simple feature in the correct way, however, can be very time consuming.

Switcheroo provides a plug and play solution to detect which device the player is currently using, taking extra care to filter out edge cases and false positives—such as input coming from a loose analog stick, or from involuntary mouse movements—so you don't need to deal with the gritty details.

Try the demo before you buy - Join the Discord

Technical Details

Features:

  • State-of-the-art input detection. The plugin automatically filters out edge cases and false positives (such as input coming from a loose analog stick, or from involuntary mouse movements) and is highly customizable.
  • Easy to use. The plugin provides a simple API that can be used from both Blueprints and C++.
  • Plug and Play. Switcheroo doesn't require any special setup (like custom GameInstance or PlayerController classes): enabling the plugin is all it takes to be up-and-running.
  • Lightweight. The plugin logic is implemented in native C++ code and runs at the Slate application level with no impact on performance.
  • Supported and tested. The plugin is actively used in a game live on Steam and Xbox, and will receive all the needed lifetime updates.
  • Full source code. Switcheroo comes with full, heavily commented source code.


Development Platforms: Windows, Mac, Linux.

Target Platforms: tested on Windows, Mac, Linux, but should work on HTML5 too.

Documentation: Online Docs

Example Project: Project Download