🎮

Advanced: Controller Mapping

We have created mappings for the supported VR input devices, listed in 👓Supported VR Hardware.

However, you can change those mappings: for example, map Inventory to a different button on your VR controller. Or, you can add support for some controllers and VR devices we don’t know about.

image

The configuration for the controller mapping is located in Unity application menu, Edit → Project Settings → PaleBlue → Controllers.

image

Mapping Name stands for part of the device internal name, and we get it by inquiring the connected VR system for its name.

ℹ️
This can be completely different from what you expect, for example Focus Plus controller is actually named wvr_controller_aspen_mi6_1.

We provide default mappings for the following.

  • Oculus: Oculus Rift, Quest, Quest 2
  • Vive: Vive, Vive Pro
  • Aspen: Focus Plus
  • Wvr_vr: Focus 3

Add New Devices

To add a new controller, add a new mapping to the list and name it with a part of the device name. Name is case-insensitive.

To get the device name, typically you can inquire the value of XRController.InputDevice.name in your C# code.

Mapping Names

For most part all the buttons refer to their counterparts on controllers, with the exception of Rotation Axis - this can be Primary 2D (horizontal) or Secondary 2D (vertical)

Require Confirmation For Rotation: can be used to force user to click on button to actually rotate. This is helpful for trackpads, where usually even touching it will be considered as input