dantman / elite-vr-cockpit

A SteamVR Overlay providing a virtual throttle and joystick and holographic buttons for ship functions, with custom integration into Elite Dangerous
Other
326 stars 37 forks source link

Zoom bindings/buttons for Oculus Touch/WMR #204

Open dantman opened 4 years ago

dantman commented 4 years ago

I'd like to know how Oculus Touch and WMR users would like to control FSS mode, in particular the zoom functionality.

FSS mode has 2 zoom bindings. There are zoom in/out bindings which are what you use to zoom in to a signal or area. There is also a "stepped" zoom in/out binding which, when you are zoomed into an area with multiple signals, zooms in/out so you can see less/more of the area. In those areas the normal zoom in still zooms in to a specific signal/deeper area and the zoom out leaves that signal area.

On Index/Touch/WMR the thumbsticks are bound to controlling the FSS scanner's pitch/yaw.

On Index controllers the trackpad has a pressable d-pad bound to zoom in/out and swipes on the pad are bound to the "stepped" zoom in/out.

How would Oculus Touch and WMR users like to control the zoom in FSS mode?

Oculus Touch doesn't have a supplementary trackpad. And WMR's trackpads are spherical (not necessarily conducive to being used as a zoom in/out d-pad) and trackpad press may be needed for the "target current signal" binding.

HoriaMM commented 3 years ago

WMR user with an HP Reverb G2 (so no trackpads at all, just thumbsticks). I can only speak for my particular case (and I guess Oculus Touch too, since they also lack trackpads), but I assume any of my suggestions relating to thumbstick implementation could also be applied to a trackpad.

Personally I see two solutions, one of which I actually managed to implement myself successfully.

  1. Map "zoom in/out" and "stepped zoom in/out" to X/Y axes on one of the thumbsticks. Use asymmetrical bindings, for example L thumbstick for pitch/yaw, R thumbstick for zoom functions. Map "target signal" to thumbstick click or A/X buttons.

Honestly, this seems like the best implementation to me. There's no need to have both thumbsticks control the same thing (pitch/yaw). And I don't exactly see how lacking a trackpad is any issue. The FSS zooms are both discontinuous , so how much the thumbstick moves on any axis should not matter, just that it moves. To add to this, SteamVR allows mapping of the thumbstick as a DPad, so this should not really be an issue. "Target signal" can then easily be mapped to thumbstick click or A/X.

  1. Map "zoom in/out" to X/Y buttons. Map "stepped zoom in/out" to L/R thumbstick clicks. Map "target signal" to A button.

Band-aid solution, but this is actually how I managed to make FSS work in the current version. Of course, I had to unbind Y from "Menu back" in SteamVR bindings, since unbinding "FSS back" from the Y button resulted in the "Menu back" input taking over. And honestly, this works great. Not having Y as a "Menu back" button hasn't really affected me since it's on the joystick controller, and I will almost always use my throttle controller to navigate menus.

Picture attached: visual explanation of the bindings https://ibb.co/jTcpvjb

Omnidextrous commented 3 years ago

@ReaperIsTaken I would be interested in seeing your settings, the picture link doesn't work. How do you have your FSS bindings set up to work? I'm still not entirely sure how bindings work outside of the cockpit, as far as I can tell everything is mirrored between the two controllers.

EDIT: managed to open your picture link, I see it's showing your proposed bindings. How did you get the ones you're using currently working? Are you binding your left controller directly through SteamVR?

EDIT2: Yeah, I have no idea how you managed this. I haven't been able to get the in-game bindings screen to recognize any button inputs; using the cockpit joystick controls doesn't work because you don't have access to them in the FSS screen and none of the buttons/hats/triggers are recognized when configuring from the FSS interface. The only things that register input are the thumbsticks, which are mirrored across both controllers, so I can either have camera control or button bindings, but not both. If you see this, I would very much appreciate some insight, as it looks like plain wizardry from where I'm standing.

shadow7483147 commented 2 years ago

Yeah, my immediate intuition with the FSS is to just use the thumbstick to control the view as normal, but use the trigger to run a scan. Then A/B is stepped zoom in/out only. Only controls that matter anyway.

You can have a dedicated button on the overlay for leaving the FSS. And an overlay to target the current signal. I could use the thumbstick click for either of these.