pottedmeat7 / OpenVR-WalkInPlace

An OpenVR driver that applies virtual movement using a pedometer
GNU General Public License v3.0
110 stars 18 forks source link

Option to override/emulate 1st/2nd controller missing? #87

Open EpochalEngineer opened 12 months ago

EpochalEngineer commented 12 months ago

There is no option on my setup to override/emulate(?) my 1st/2nd controller directly, which I assume is this 2nd row dropdown shown here. The VRocker demo does seem to override/emulate the oculus touch left control stick, as when I have that turned on (and OVRWIP off), the real left control stick does not work, and the only way to walk is wakling in place.

Is this no longer available?

Each game seems to have a different requirement for binding, and setting it up for each game is doable but an option to just emulate would be great.

SteamVR 2.1.4 but this also occurred when I was trying it out before SteamVR 2.0 came out.

EpochalEngineer commented 12 months ago

Couple other questions (which can be moved to a new issue if desired): I seem to have a lot of inertia/momentum/lag (EDIT: found the relevant issue and will comment there).

Also the direction seems to be taken from the position of the left controller relative to the headset in the XY plane (or whatever frame when looking down). Since you run with your hands on your side, could it be changed to the filtered orientation of the left controller?

pottedmeat7 commented 12 months ago

There is no option to directly emulate a physical controller. That's because most ways to implement that aren't really supported by the OpenVR SDK specification, and believe most of this project mostly is supported and should work without needed overriding. Yes you may need to create a new binding for a game to get the input working. I had this problem with Half life Alyx, but there was binding that did allow it to work.

One option for the controller relative direction that I now prefer to default to in my setup. I disable my non dominant hand that I use for direction in the model recording, usually your non dominant hand, because you may be aiming with your dominant hand. So to control pace, jogging etc., essentially it's just my right hand for instance, the left can stay complete still and just direct. Using the controller model recording is also a good way to improve the inertia, you may just prefer to disable the "walking" detection, and input 0, ie. to not move. So it may detect "walking" before it completely stops input, but either way your character will stop moving. But yeah it's not 100% synchronized timing to when you actually stopped, so there's always some lag.