Closed Reiko9 closed 1 month ago
Good for them, but I will not make any changes to this driver just for this game. Moreover, I don't like approach that VRChat uses for handling skeletal input, plus personal reasons. But it doesn't stop you to fork this repo and make own changes, just remember that those changes will never be accepted as pull request.
So what I'm getting is this driver converts ultraleap tracking to controller input, but doesn't provide any data to the skeleton.
Is there any other drivers that only provide skeleton input to steam? That's really just what I'm curious about
So what I'm getting is this driver converts ultraleap tracking to controller input, but doesn't provide any data to the skeleton.
Is there any other drivers that only provide skeleton input to steam? That's really just what I'm curious about
How did you come to this conclusion? Skeletal data is literally here: https://github.com/SDraw/driver_leap/blob/master/driver_leap/Devices/Controller/CLeapIndexController.cpp#L494-L549
So what I'm getting is this driver converts ultraleap tracking to controller input, but doesn't provide any data to the skeleton.
Is there any other drivers that only provide skeleton input to steam? That's really just what I'm curious about
How did you come to this conclusion? Skeletal data is literally here: https://github.com/SDraw/driver_leap/blob/master/driver_leap/Devices/Controller/CLeapIndexController.cpp#L494-L549
Oh, I assumed that since vrchats new system used the skeleton and this issue report said it wouldn't be worked on, that it wasn't supported. So does this work at all for it?
Oh, I assumed that since vrchats new system used the skeleton and this issue report said it wouldn't be worked on, that it wasn't supported. So does this work at all for it?
If game uses skeletal input in a right way (gets skeletal input from current active controllers), then it works as intended. Here is an example from SteamVR Home:
https://github.com/user-attachments/assets/3ce077ac-5989-4a48-8ffd-0adea873163a
Small addition: This was recorded by my friend (who can't run Gemini by unknown reasons and I've recompiled it for Orion version of tracking software):
https://github.com/user-attachments/assets/d4c1aed8-c8df-4567-9c02-41c8487be66c
As I can see, it works in VRChat. So, try for yourself. And small clarification: This driver will behave in a way of Valve's intentions, no deviations will be implemented (no matter what game needs those).
Ah, so I might be an idiot and misread this entire thing. I had assumed this was something that converted gestures to controller inputs to simulate an index controller or something XD
Nope, it's actually exactly what I was looking for. Thank you and sorry for the confusion
Which means full range of finger movement is supported as i have seen on a video (including finger spreading) and it includes gesture methods, so it does not need physical controller emulation.
The key to making this useful of course would be having the physical controllers used for movement, Not provide the hand tracking position, but instead rely on the hand tracking position (Provided by the cameras). This way you could use hand tracking and let go of the controllers and have it function fairly naturally. (Possibly with a means to toggle back to having physical controller position for hands for debugging)
The Work-around I used in the past was using a usb gamepad controller, which bypassed steamvr and required the vrchat window selected to move around in the world, while steamvr handled the hand tracking. So predictably when moving my hands it looked like they were holding an invisible gamepad. (Back then I also relied on the leapmotion-osc app to provide finger spreading)
Here is the Vrchat Beta release announcement from July 24th showing the Native SteamVR Skeletal system support https://docs.vrchat.com/docs/vrchat-202431
########################################################## "SteamVR Input 2.0 and PCVR Hand Tracking Support!
"
The "Holy Grail" of course would be having the Controllers tracked to control laser positioning (Separately from Hands) and the Cameras hand tracking specifically to handle the Avatars hand position/gesture. That way you get the accuracy of the controllers lasers for use cases that do not involve "physical" buttons for hand interaction. (I have No idea if Vrchat supports Skeletal tracking as a separate input from a physical controller)