Input from wands sometimes fails to update
There has been a long-running problem with the SteamVR input from the "SteamVR_Controller.Device" class using the "GetPress" methods. During play, after many presses from the user, a button can randomly get "stuck" and fail to update when released/pressed.
The hardware buttons aren't getting stuck, it's definitely a software issue somewhere. If a button is stuck, say the grip button, you can just touch (not press) the touchpad and the button will magically become unstuck, updating alongside the touchpad input.
Replication can take a little bit of time. When I actually counted the number of presses before stick, it failed exactly on the 80th "click". Though, I have experienced sticks in rapid succession before.
According to the community this has been a thing for quite a while. I have just kind of dealt with it up until now, but "tripping" in my game, due to grip button randomly sticking, is proving to be too much to tolerate. :( I am honestly surprised I didn't see an issue in here mentioning this, seeing how long it's been happening.
Unfortunately SteamVR_Controller.Device is no longer a supported method of getting input. Can you reproduce this with the new input system?
Okay, I've changed my code over to using [SteamVR_Action_Boolean].[GetStateUp]/[GetStateDown] for button transitions.
The sticking issue persists. I encountered it quickly at first, within 50 clicks, but then had a long period of it not occurring (~2-5 mins) before it happened again. Btw, I've only experienced this issue with the grip button as my other game inputs are vectors or are infrequently used.
I am not sure what could be causing it to miss an input transition, but it can miss both down and up transitions. Converting to [GetState] and capturing transition myself didn't help.
It seems that it's dropping an update event somewhere, but I can't imagine why it would only happen every so often. My statements from before still hold true. When an input fails to update, updating any other input will cause the failed update to go through without physically touching it.
Thanks for the report. I was able to reproduce this, we'll investigate more. Hopefully it's a software thing and not the hardware. (one we can fix)
Thanks for the follow up, @keithbradner. Here's hoping :)
I have experienced this issue in UE4 using their motion controller commands for pressing and releasing the grips. This seems to be a VIVE hardware/software problem specifically. Has there been any progress made on this?