Skip to content

OpenVR Input Emulator v1.0.3

Compare
Choose a tag to compare
@matzman666 matzman666 released this 05 May 20:17
· 17 commits to master since this release

Attention: SteamVR Beta 1495144709 (the one that added SteamVR Home) changed some things internally causing the overlay to crash. Use the SteamVRHome version when you want to use SteamVR Beta 1495144709 or greater, for earlier versions use the other installer.

Update: Added vel/acc compensation modes & some bugfixes.
Update2: Fixed bug in redirect mode.

Requires the newest SteamVR (or SteamVR Beta) runtime.

This is still WIP and will contain bugs.

Installer

Download the installer and then execute it. Don't forget to exit SteamVR before installing/de-installing.

Command-Line Client (Optional)

Download the command-line client archive, unzip it, and then execute the contained binary in a cmd window. Enter 'client_commandline.exe help' on the command line for usage instructions.

Vel/Acc Compensation Modes:

The problem with only adjusting the headset position is that pose prediction also takes velocity and acceleration into accound. As long as the reported values to not differ too much from the real values, pose prediction errors are hardly noticeable. But with fast movements of the motion platform the pose prediction error can be noticeable.

Available modes are:

  • Disabled: Do not adjust velocity/acceration values.
  • Set Zero: Set all velocity/acceleration values to zero. Most simple form of velocity/acceleration compensation.
  • Use Reference Tracker: Substract the velocity/acceleration values of the motion compensation reference tracker/controller from the values reported from the headset. Most accurate form of velocity/acceleration compensation. However, it requires that the reference tracker/controller is as closely mounted to the head position as possible. The further away it is from the head position the larger the error.
  • Linear Approximation (Experimental): Uses linear approximation to estimate the velocity/acceleration values. The used formula is: (current_position - last_position) / time_difference, however the resulting values do cause a lot of jitter and therefore they are divided by four to reduce jitter to an acceptable level.