xrizer

xrizer #

xrizer is a reimplementation of OpenVR on top of OpenXR. This enables you to run OpenVR games through any OpenXR runtime without running SteamVR.

Application developers: The OpenVR implementation is incomplete and contains only what’s necessary to run most games for compatibility and may omit certain information - if you plan to implement software, utilize the OpenXR API.

Using full body trackers #

This branch is a work-in-progress! Unexpected problems may occur while in use, if you encounter issues while using this fork you should not report it upstream unless reproducible on the main branch of xrizer.

If you would like a battle-tested solution, see OpenComposite.

Currently xrizer does not support full body tracking, however there is a work-in-progress fork by RinLovesYou with support while using Monado.

To use the above fork, follow these steps:

Envision #

  • Click the three dots next to the profile selector and select ‘Edit profile’
  • If a popup asks if you would like to duplicate the profile, click yes.
  • Scroll down to ‘OpenVR Compatibility’ and set the following fields:
    • OpenVR Compatibility Repo: https://github.com/RinLovesYou/xrizer.git
    • OpenVR Compatibility Branch: experimental2
  • Clean build your profile from the menu at the top right, or use the Ctrl+F5 keybind.

NixOS #

Apply an overlay over nixpkgs to override the xrizer src:

{
  nixpkgs.overlays = [
    (final: prev: {
      xrizer = prev.xrizer.overrideAttrs {
        src = final.fetchFromGitHub {
          owner = "RinLovesYou";
          repo = "xrizer";
          # IMPORTANT: Fill the below field with the latest commit hash from https://github.com/RinLovesYou/xrizer/commits/experimental2 (click the Copy full SHA button on the right side)
          rev = "";
          # IMPORTANT: Replace the below field with the correct hash, the error when building with this empty will give you the expected hash.
          hash = "";
        };
      };
    })
  ];
}

Rebinding controls #

The process is mostly the same as OpenComposite, but replace the OpenComposite directory name with xrizer.