Configuring Xbox 360 controller with Unity Menu System

Hi All

I have managed to setup my Xbox 360 Controller for use with Unity and to move my character around and perform certain actions.

However I am unable to workout how to manipulate the EventSystem of my game menu canvas with Xbox 360 use. Currently it is set up so that when I hover over a menu button (for example “Play”) the text goes a different colour and when I click on it the game plays. however I am unsure how to configure this menu system for use with an Xbox 360 controller as I don’t know how to select certain menu items or scroll through them with the controller.

Any help on this matter would be greatly appreciated.

Many thanks

Ashley

Hi,

By default, the Event System’s Standalone Input Module handles gamepads such as Xbox 360 Controllers. Here are some things to check:

  1. In the Input Manager (Edit > Project Settings > Input), make sure you’ve defined the Horizontal and Vertical axes to read from the gamepad’s joystick axes. They’re set this way in a new, empty project. But if you’ve imported any Complete Project assets from the Asset Store, they may have overwritten the Input Manager settings. Also make sure the Submit input is mapped to a gamepad button such as ‘X’ (“joystick button 0”).

  2. Make sure the Standalone Input Module’s Horizontal and Vertical axes are set to the names of the axes you defined in the Input Manager (e.g., “Horizontal” and “Vertical”) and the Submit button is set to the name of the Submit input.

  3. Set the input module’s First Selected property to the menu button that should receive initial focus when the menu opens.

You may also want to tweak the Navigation settings on your menu buttons. They default to Automatic, which is usually pretty good for most situations.