aardvarkxr / hackathon-sep20

BSD 3-Clause "New" or "Revised" License
1 stars 0 forks source link

HOTAS Controls with GUI (CAKE) #15

Open Adil3tr opened 4 years ago

Adil3tr commented 4 years ago

What would this gadget do?

Using these two implementations as conceptual models, this gadget creates a 3D throttle and stick within aardvark that can be used as HOTAS inputs. Users would select a profile or a rigged model they want to use, then place them around their seated position and anchor them. This allows games with HMD support but no VR control schemes to be played with VR controllers. Users can save control schemes, both the assigned inputs and placement of 3D UI. Adding only macros is a separate implementation, showed in a separate project I listed before.

https://store.steampowered.com/app/1355840/animARide/

https://github.com/dantman/elite-vr-cockpit

Who would use this gadget?

VR as a display method for games like simulators and cockpit games is common, but in VR controls are not. And while there exist many ways to run non VR games in VR, it’s rare to the point of uniqueness to be able to control those games spatially. Many many users would be excited to both develop implementations for and to play their favorite games with 3D rendered VR controls. This would also need a small macropad as well for controls that cannot be fit onto the stick and throttle.

This also creates a model for GUI elements as a way of adding controls, macros, or other elements to non VR games. By mapping keyboard controls, gamepad inputs, accessory inputs, or macros to 3D UI elements or controls, many games could be significantly improved in VR including HMD only games, non VR games running in VorpX, emulated games in DolphinVR, or non VR games simply being played on a VR screen. Making saving and sharing of control profiles simple is essential to making this accessible for a lot of use cases.

In the long term, clever ways to fake direct interactions with tools in a game could increase the polish of these kinds of experiences. Eventually it could also be used to augment workflows by spatializing complex actions, that’s outside the immediate scope of this.

Assuming that you're on the team, what other skillsets would you need to make this project happen over a couple days of hacking?

I am not experienced with coding or 3D modelling, I’m just trying to provide the concept for consideration.

What will be the toughest part of building this gadget?

The toughest part of building this gadget is likely making a 3D interface that can be controlled without being anchored in real space like a real HOTAS (although accessories to do this exist) and can be used quickly and reliably in games.

JoeLudwig commented 4 years ago

This needs Aardvark plumbing down to the "pretend to be a joystick" driver. Not sure if that would also need to be written or if there are existing virtual joystick drivers that could be adapted.