Resonite #
Note: The Linux-native version of Resonite, amid deprioritization of developer time to fix its numerous issues, was put on indefinite hold in August 2024 and later removed in March 2025. This document only covers running under Proton.
The current recommended Proton variant is GE-Proton-RTSP.
XRizer should now provide a close-to-flawless experience on most controllers and when using hand tracking. If you encounter any major issues you can fallback to OpenComposite.
Visual bugs #
There are some minor visual bugs specific to running Resonite on Proton, such as textures taking longer to load and appearing black for a few seconds when close to the player.
Mirrors look cross-eyed #
When playing Resonite under Monado or WiVRn, the 3D effect of mirrors may appear way off, as if looking through them feels like your eyes are crossed. This only affects headsets with canted displays (e.g. Valve Index, Pimax).
To solve this, prepend OXR_PARALLEL_VIEWS=1
to Resonite’s launch options.
Performance #
Resonite currently runs under an extremely old version of Mono runtime required by Unity, which has very poor Garbage Collection causing frequent lag spikes and frame hitching during asset loading and unloading. Very soon, Resonite will be updated to use .NET 9, a far more modern and bespoke runtime, with Unity running on a separate thread only for rendering the game. Eventually Unity will be replaced by a custom rendering engine as well.
The main developer and owner of Resonite goes into more detail here.
In larger sessions Resonite is typically CPU-bound, there isn’t much that can be done besides upgrading your CPU. In situations where the GPU is a bottleneck, lowering the resolution (either in the OpenXR runtime or through OpenComposite) may help dramatically.
This can be easily done by prepending OXR_VIEWPORT_SCALE_PERCENTAGE=75
to Resonite’s launch options. Experiment with different values to find your preferred balance between performance and quality.
Mods #
Much unlike VRChat, Resonite has a thriving modding community with an abundance of mods that offer greater user experience, optimizatons and new features.
Currently there are 2 mod loaders:
You can load RML mods with MonkeyLoader but not the other way around.
Resonite randomly gets stuck on initial loading screen when using RML #
The exact cause of this is currently unknown. Consider using MonkeyLoader if you encounter such issues starting the game as it seems to not cause the same problem.
ResonitePlatformSpoof #
See issue #2745 for more context as to why the Linux badge isn’t available for Proton users.
When the native Linux build of Resonite was still available, players are given a Linux badge to show others that they are running the native build of the client. When Proton is used to play the windows build of the game, you will not get the Linux badge. However, ResonitePlatformSpoof lets you ‘spoof’ your platform to the Linux native build and allows proton users to get the Linux badge.
Crashes #
Resonite has been seen causing random SteamVR crashes on Linux before. In some situations the engine also tends to freeze. On OpenComposite, the game will rarely close out on its own without leaving any obvious trace of things going wrong — this is being investigated.
The cause of these issues and whether they are Proton-specific isn’t currently known.
Crash on loading into a world with video players #
On GE-Proton9-10 (for example), loading into a world with e.g. a YouTube video or live stream can crash the game. Try using the latest GE-Proton-RTSP release.
Controls busted after switching to desktop #
Resonite allows a VR player to take a break and switch to desktop mode by pressing the F8 key.
Because controller hot-swapping is not yet implemented in Monado & OpenComposite, turning off a controller will freeze its state, including buttons pressed and analog stick input. Resonite will continue processing VR inputs even after switching to desktop.
The end result is that desktop controls can act strangely. For example, if you were holding the grab sensor as you turned off the VR controller, picking up items or inspector windows stops working with the mouse.