Home - mbucchia/Pimax-OpenXR GitHub Wiki

PimaxXR Runtime

Welcome to the PimaxXR wiki!

This program is an implementation of the OpenXR standard for Pimax headsets on Windows. It allows you to run OpenXR applications without SteamVR. It is not produced by Pimax.

It is built on top of the official Pimax PVR native SDK and aims to provide a very fast and efficient implementation of the OpenXR standard for Pimax headsets.

DISCLAIMER: This runtime is not officially conformant per Khronos standards: it cannot be called "conformant" nor use the OpenXR trademark and logo. However, the runtime passes the majority of OpenXR conformance tests and the reason for not seeking official conformance is the required $30,000 adopter fee.

DISCLAIMER: This software is distributed as-is, without any warranties or conditions of any kind. Use at your own risks.

Table of Contents
  1. Compatibility
  2. Prerequisites
  3. Installing
  4. Configuration
  5. Removal
  6. Join the discussions
  7. Special thanks
  8. Donate

Compatibility

See the Compatibility list.

Make sure to use the latest version of OpenXR Toolkit if you use it!

Prerequisites

PimaxXR requires the latest Visual C++ Redistributables.

PIMAX CLIENT 1.11 OR ABOVE IS REQUIRED - PIMAXXR WILL NOT BE SUPPORTED WITH PITOOL.

Installing

Latest download: 0.4.4

Download and run the installer (PimaxXR-x.y.z.msi) from the Releases page, under Assets.

Once installed, the PimaxXR Control Center application (shortcut on the Desktop and available from the Start Menu) can be used to switch between PimaxXR and the SteamVR runtime.

Configuration

PimaxXR is ready to use out-of-the-box for OpenXR applications.

A few options can be tweaked from the PimaxXR Control Center application (shortcut on the Desktop and available from the Start Menu).

control-center

  • Recenter headset on startup: whether to recenter the view at VR application startup. The view can also be recentered in-game, by pressing Ctrl+Alt+Space for 2 seconds, or pressing the motion controller's System button and Trigger for 2 seconds (only for applications with motion controller support).

  • Controller emulation (uncommon): this option can force using Windows Mixed Reality or Oculus motion controllers buttons bindings for applications without correct Vive or Index motion controllers bindings. Leave blank if unsure.

  • Joystick deadzone: the size (in percent) of the motion controller joysticks deadzone to avoid drifting when the joystick is at rest.

  • Enable visual playspace guardian: whether to display a guardian (visual indicator) when moving close or outside of the playspace boundaries.

    • Guardian radius: the radius, in meters, of the playspace, starting from the center position.
    • Guardian threshold: the threshold, in meters, for displaying the guardian when moving close to its boundaries.
  • Prefer framerate over latency: whether to maximize GPU utilization even in case where it might increase latency. This is the same as OpenXR Toolkit Turbo Mode.

  • Lock to half framerate: this option turns on Pimax's "Compulsive Smoothing" (which was removed from the user settings in Pimax Client). It will lock framerate to half of the refresh rate (eg: 45 FPS for 90 Hz) both with and without Smart Smoothing. This option may affect SteamVR as well, since Pimax Client settings are global to the system.

  • Allow use of the eye tracker: whether to allow applications to use eye tracking data. Requires platform support for eye tracking (ie: firmware and software enable eye tracking) and the eye tracker must be calibrated in order for this option to work.

  • Enable Quad Views rendering: whether to allow applications to use Quad Views rendering. Requires the Quad-Views-Foveated software to be installed.

  • Enable Hand Tracking module: whether to allow applications to use hand tracking data from the Ultraleap Hand Tracking module. Requires the Ultraleap software to be installed.

  • Show mirror window: whether to open a desktop window that mirrors the view inside the headset. The window opens upon starting an OpenXR application, and can be closed without causing the application to exit.

Other settings may be configured from Pitool or the Pimax client.

Removal

To uninstall, please use Add or remove programs and search for "PimaxXR". Make sure to re-enable SteamVR as your OpenXR runtime from the SteamVR Settings -> Developer -> Set SteamVR as OpenXR runtime (see Reverting back to SteamVR).

Join the discussions

Join the OpenXR Toolkit's #pimaxxr channel on Discord.

Special thanks

Logo and icons designed by Smitty.

Special thanks to the following individuals for their contributions:

  • Vladimir Dranyonkov
  • Pavel Skakov
  • DJSlane
  • TommyVR
  • Omniwhatever

Very special thanks to Pimax for providing me with a Pimax 8KX and a Pimax Crystal for development.

Donate

Donations are welcome and totally optional. Please use my GitHub sponsorship page to make one-time or recurring donations!

Thank you!