GodotVR / godot_openvr

GDExtension-based OpenVR module
MIT License
229 stars 35 forks source link

Cannot differentiate the trackpad and joystick on Valve Index Knuckles #135

Open TomJamesPearce opened 3 years ago

TomJamesPearce commented 3 years ago

At the moment, both the joystick and trackpad on the valve index knuckles bind to index 0 and 1 on get_joystick_axis

The workaround I have for now is to use the button press/release events the joystick emits on move on index 14 that the trackpad does not in order to tell whether I should be ignoring the joystick axis values.

Since it's normal to rest your thumbs on the trackpads on the index, and the frequency of using get_joystick_axis in order to implement locomotion, ideally they'd be bound to different indexes.

I'm not sure how difficult this would be to support as I haven't looked at implementation at all, or whether listening for button press/release events to differentiate functionality is expected.

EDIT: More testing shows that the trackpad does emit a press even on index 14 if you actually press it rather than just "scroll" or touch.

BastiaanOlij commented 3 years ago

I never ended up mapping those after the action system was introduced. Should be a relative easy fix.

Note that this is fully mapped and working if you use the latest OpenXR plugin