HOLOCAB is a VR overlay application which runs alongside existing flying or driving games and provides an immersive virtual control scheme for operating the games controls. Ultimately virtual joysticks, throttles, steering wheels and buttons can be created and positioned in virtual space and then mapped in game like a real joystick or steering wheel.
In the current build one joystick and one throttle are preconfigured along with button textures intended for use in Elite Dangerous. Future versions will add more configuration options and additional game profiles.
THIS IS AN EARLY BUILD! Some features are not yet implemented or may not work correctly. Bugs are likely and things may have been explained poorly or not at all. Please leave comment here, over on one of the reddit threads on /r/VirtualReality /r/EliteDangerous or on a forum thread in the elite dangerous forums and I'll do my best to help and improve things going forward.
Installation and setup
Download the Holocab.zip file and unzip the contents into a folder on your PC (future version will be bundled in an installer).
IMPORTANT - HOLOCAB requires the virtual joystick device vJoy. Download it from here http://vjoystick.sourceforge.net/site/index.php/download-a-install/download
Run the downloaded vJoySetup.exe to install the joystick drivers and configuration tool. You may need to restart you computer to complete the installation.
Once the vJoy device is installed open the Configure vJoy program from your start menu (or run vJoyConf.exe from the vJoy installation folder)
Currently HOLOCAB requires joystick 1 in vJoy be setup as follows
- All axes ticked
- Number of buttons = 32
- POV Hat Switch set to 4 Directions
- POVs set to 4
- Force feedback effects aren't currently used but leave them ticked as future versions will probably make use of them.
- Make sure Enable vJoy is tick in the lower left
Click Apply, this may take a moment and a further reboot may be required.
That's it, HOLOCAB should be ready to use.
Make sure SteamVR is started and both controllers are turned on.
Run Holocab.exe from the folder you installed it to. You will see the HOLOCAB controls appear in your HMD
Launch the game, HOLOCAB's controls should continue to render over the game.
All controls in HOLOCAB are accessed by using your VR motion controllers. In this version I've only tested Vive controllers, all functions should map to and work on Oculus and WMR controllers but I'm not sure exactly which buttons map where. Future versions will clarify this and provide remapping options.
The actual event triggered when pressing a motion controller button depends on what you're doing with it. The three states are default, hovering (when the motion controller is hovering over a HOLOCAB control) and grabbing (when a control like a joystick or throttle is currently "grabbed" by that motion controller)
|Trigger||btn1||Use Holobutton||Grabbed control btn 1|
|dPad||Joy Hat||NA||Grabbed control dPad/Axis|
|Menu||btn2||NA||Grabbed control btn 2|
This way both motion controllers can perform different function depending on how they're being used at the time.
There are 2 basic types of interactables
Holobuttons - These are 2d buttons which float in 3d space, each can have a different texture assigned to it. Buttons will light up when you touch them with the motion controller. Pulling the trigger while the button is lit will fire it's event. Most Holobuttons map to a single unique joystick button event.
HoloControls - These are virtual versions of classic controllers like joysticks, throttle handles and steering wheels (currently only a joystick and throttle is implemented). They are interacted with by pressing and holding the grab (grip) button on the motion controller while hovering over the control, then simply moving your hand as if you where holding a real device. Letting go of the grip button releases the control. (A toggle option will be added in the future). While holding a holocontrol the motion controller trigger, menu and touchpad will pass their events through to the holocontrol.
(IMPORTANT NOTE) In the current version neither the throttle or the joystick are rendered. They have been positioned to match up with the Elite Dangerous stick and throttle. You can see them and reposition them be unlocking the config padlock (see Configuration below)
NOTE - In Elite Dangerous the ground vehicles have a different position for the stick and throttle. To support this there is a mode switch button that reads MODE FLT MODE, use this button to switch between ground and flight mode. It will automatically reposition the controls stick and throttle for the selected mode.
In Game Configuration
HOLOCAB outputs via a virtual joystick device so mapping controls in game works the same as mapping a real joystick or game pad.
I highly recommend you map the interface controls to either the left or right controllers default dPad, select to trigger and next panel to menu btn. with these mapped you can easily navigate the menus and map the rest of the controls.
You can rearrange the positions of the controls by toggling the config padlock button (default position is behind you to the left). While unlocked Holobuttons and controls can be grabbed and repositioned. Additionally Holocontrols will render a stick to show their interaction position. To move the control grab 5-10cm below the rendered control (or you will just interact with the control as normal).
Flight and Ground mode have independent position saves for all buttons and controls.