Valve Index Controllers
VRChat offers support for the Valve Index Controllers!
Finger Posing
The Valve Index Controllers contain capacitive sensors for the pinky, ring, and middle fingers. It also contains capacitive sensors on the trigger for the index finger, and sensors on the thumbpad/touchpad/buttons to sense when your thumb is "down". Finally, it contains a "squeeze" sensor to detect squeezing of the controller.
At all times, your fingers on your avatar in VRChat will track to your fingers' states on the controller. Although the tracking isn't exact, the closed or open state of the finger will allow for finger movement on your avatar, improving immersion.
Gesture Toggle
When you have Gesture Toggle enabled, VRChat will attempt to match your current finger pose against the standard VRChat hand poses. Any applied Gesture Overrides will play, however your hand pose will not change even if you've defined an override for your hand position.
When you have Gesture Toggle disabled, VRChat will not attempt to gesture-match.
If you disable Gesture Toggle while holding a Gesture Override, that Override will continue animating until you enable Gesture Toggle once again.
Object Interaction
Grabbing objects (like a Disc in Battle Discs) is done by squeezing the grip. Releasing the grip will drop the object. Playing games like Battle Discs can feel more immersive and natural with the Valve Index controllers. The grip strength required can be adjusted along with many other settings.
Set Default Bindings
Ensure that you are using the "VRChat bindings for Index Controller" for Index Controllers in the SteamVR Settings > Controller Binding > VRChat
menu. This is very important-- if you are using old custom bindings for Index controllers, they will not work!
The SteamVR Controller Binding page can be a bit buggy, so ensure that your bindings have properly set once you've chosen them.
These bindings have been set as the "default bindings" for VRChat. You can find this in the SteamVR Controller settings. You may have to use the "Use Old Binding UI" button in SteamVR.
You can also adjust many settings in the SteamVR Controller Bindings menu, including the required strength for grip. Tune these settings if you feel like things are a bit off. If you find a setup that you like, you can use SteamVR to share these bindings out to the Community!
Binding Customization Notes
- Be careful when re-assigning "thumb-touchable" button Touch events. VRChat checks for touch events on every button the thumb can touch to know if the thumb is bent. If a "thumb-touchable" button is not assigned for the same touch events, VRChat cannot tell that the thumb has been bent, and will not track properly.
Jump
,Mic Toggle
,Gesture Toggle
, andAction Menu Left / Right
are hard input bindings to the application.
VRChat Standard Hand Poses
Hand Pose Name | Hand Pose Description |
---|---|
Fist | Pinky, Ring, Middle fingers down Index Finger on trigger Thumb down |
Open Hand | Pinky, Ring, Middle fingers up Index Finger off trigger Thumb up |
Point | Pinky, Ring, Middle fingers down Index Finger off trigger Thumb down |
Thumbs Up | Pinky, Ring, Middle fingers down Index Finger on trigger Thumb up |
Victory | Pinky, Ring fingers down, Middle finger up Index Finger off trigger Thumb down |
Hand Gun | Pinky, Ring, Middle fingers down Index Finger off trigger Thumb up |
Rock N Roll | Pinky finger up, Ring, Middle fingers down Index Finger off trigger Thumb down |
Button Assignments
Button | Assignment |
---|---|
Right A (bottom button, right side) | Jump |
Left A (bottom button, left side) | Toggle Mute |
B (top button) | Quick Menu |
Touchpad Touch | Reserved for future features. |
Touchpad Press | Reserved for future features. |
Touchpad Scroll | Reserved for future features. |
Grip (squeeze controller) | Grab / Equip |
Trigger (index finger pull) | Use / Interact |
Right Thumbstick | Turn |
Left Thumbstick | Locomote |
Right Thumbstick In (Press down on thumbstick) | Action Menu Right |
Left Thumbstick In (Press down on thumbstick) | Action Menu Left |
Rigging Notes
VRChat uses Unity's Mechanim and the Mixamo "YBot" character as the standard for rigging setups. You may find with your new-found dexterity that your standard for hand rigging increases, and you may need to tune your rigging and weight painting.
A good way to test this is to use Unity's Avatar Muscles & Settings tab to test the hand open/closed state. If the hand pose appears odd, you may have to tune your weight-painting and rigging slightly.
Updated 10 months ago