VR on Linux? Not sure

I use Linux since at least 15 years, without using Windows at home.
I bought a VR headset valve index as it made by Steam, the king of games on Linux.
After a week of trying, I couldn't get the VR quality to match the quality of the headset. I spent at least 3 hours a day trying out tutorials, scripts and alternatives to steamVR, to no avail. Yes, it works, but the quality sucks. It's not my PC that's the problem. I've given up, I've installed a dual boot Windows with steamVR and I can finally enjoy VR with remarkable quality. Clearly, VR support on Linux still has a long way to go to reach the level of Windows. I'm too ashamed to tell my friends, I'm not ready.

2 Likes

SteamVR doesn't work on Linux for you?

2 Likes

It works fine. But, the quality in VR is not high, in contrast in Windows.

3 Likes

Could you characterize more clearly the specifics of your dissatisfaction when you refer to quality?

  • resolution ?
  • framerate ?
  • latency ?
  • field of view ?
  • interaction ergonomics: head-tracking, hand-tracking, body tracking ?
  • synchronization of video and audio ?
  • anti-aliasing ?

Don't know if you've seen this before, but I kept this reference (about amount of anti-aliasing needed to make computer graphics look convincing and smooth) when I stumbled upon it a while back (no immediate use for myself; I have no VR at this time), but it may be a factor in your configuration issues:


As an aside, apparently Monado (open-source OpenXR runtime for GNU/Linux) is an alternative to SteamVR, if you think you need to try that approach.


Following my query using

"tuning" "valve index" "on linux"

Google AI responded with the following. I would like to point out the four points which may warrant closer review:

  • DRM Leasing
  • PCIE Slot
  • Kernel Parameters
  • USB Passthru
Google Response

AI Overview

Tuning a Valve Index on Linux for optimal VR performance involves a combination of hardware and software adjustments, including ensuring proper hardware compatibility, utilizing SteamVR's native Linux support, and potentially tweaking system-level settings like audio and input handling.

Hardware Considerations:

  • GPU:

Ensure your graphics card is compatible with SteamVR and Linux. Some users have reported better performance with specific GPU models or configurations.

  • USB:

A dedicated USB card (like those with Renesas or uPD720202 chipsets) can help with USB bandwidth and reduce latency, especially when using multiple USB devices like the Index controllers and potentially a separate VR dongle.

  • PCIE:

For AMD systems, ensure the PCIE slot is set to PCIE 4.0, and consider enabling IOMMU and AMD-VI for potential performance improvements and compatibility.

  • RAM:

Optimize RAM settings (XMP/DOCP) and ensure compatibility with your motherboard and CPU, especially for Ryzen systems.

Software and System Settings:

  • SteamVR:

SteamVR runs natively on Linux and is the primary way to use the Valve Index.

  • DRM Leasing:

SteamVR on Linux requires DRM leasing to function correctly, which is the process of SteamVR taking control of the headset's display for low-latency VR.

  • Audio:

Consider using PipeWire as your audio server and potentially utilizing noise suppression plugins for a better audio experience.

  • Input:

If using Oculus and SteamVR together, OpenVR-SpaceCalibrator can help with alignment issues, or OpenHMD can be used to bypass the Oculus app entirely.

  • Kernel Parameters:

For VM setups, kernel parameters like amd_iommu=on iommu=pt and mitigations=off can be used, along with CPU pinning and performance governor settings for optimized performance.

  • USB Passthrough:

If using a VM, dedicated USB cards and proper module loading (VFIO) are crucial for USB device passthrough to the VM.

  • Virtualization:

For VM setups, consider using VirtIO disks and Ethernet adapters, as well as a dedicated volume on an SSD for the VM's installation for faster load times.

  • Oculus Debug Tool:

When using Oculus and SteamVR together, the Oculus Debug Tool can be used to adjust resolution and other settings.

Troubleshooting:

  • Microstutters and Latency:

Adjusting settings, optimizing USB bandwidth, and potentially using kernel parameters can help reduce microstutters and latency.

  • Controller Pairing:

For Index controller pairing, the official SteamVR dongles are typically required, especially if using them with a Quest 2.

  • Alignment Issues:

OpenVR-SpaceCalibrator or bypassing the Oculus app with OpenHMD can resolve alignment issues between Oculus and SteamVR.

  • Performance Issues:

If experiencing performance issues, consider checking your system's hardware compatibility, optimizing system settings, and potentially using a dedicated USB card or optimizing the kernel for your setup.


This article may offer some additional insights, depending on your dual-boot setup:

3 Likes

That's unlucky, you sound like you're exhausted and bummed out that you couldn't find a solution.

I've come to accept that not everything works on Linux; I don't think it's anything to be ashamed of, and it doesn't stop Ubuntu MATE from being a great daily desktop. It's good to share things that don't work so that people are informed and prepared if they decide to use one or the other.

When you're feeling less over it - it might be worth putting in some details of your system so that others who have similar setups or are thinking about making purchasing decisions are better informed.

You could also elaborate on what you mean by the 'quality sucks'; this might point to particular hardware features not being used. It could simply be that the kernel doesn't support certain hardware features (e.g. try the HWE line of kernels), or that kernel module parameters have disabled certain features, or that the graphics drivers are not doing their job. There's a whole stack of potential issues depending on whether you have an AMDGPU or NVIDIA (as per the LLM output above).

3 Likes

I like to persevere when faced with a problem on Linux. I took the time to analyze, look for solutions and try out the proposals I found. My PC is a high-end with Radeon RX 9070 XT. I tried SteamVR alternatives with Monado and Envision, but without success. I'm demanding, I want top VR quality and not just average. Because of my GPU, I have to use kernel 6.12+ from mainline, maybe the root cause of the problem, I don't know. The poor image quality is hard to describe for me, the image tears when moving my head. Increasing the frequency, from 90 to 144 fps, reduces the effect but it's still bad. It's unusable for me. I don't want to waste any more of my time on this subject, since I'm using VR with very good quality on Windows now, with the same pc.

4 Likes

Apparently, Wayland under KDE Plasma is being touted to offer the best support specifically for Steam's Valve Index and for its high-priority VR tasks. I have no opinion regarding that stance.

I've only installed KDE once, many releases back, and prefer to stick with Ubuntu MATE.


Sorry to hear that you've had such a bad experience that you would prefer not delve into that again.

IF you change your mind, I got what looked like good suggestions, using the following search on google,

"linux" "VR" "image tearing"

which seemed like reasonable suggestions for what your next iteration of attempts might need to review, especially what I consider as the quality "pivot points":

  • if you have a separate GPU board, disable the "integrated" GPU on the Motherboard (to ensure graphics are process by the GPU board),
  • fine tuning of the "reprojection mode" (you can get more detailed suggestions from Google's search AI for the following specification: "VR" "reprojection modes" ), and
  • ensure the refresh rate is identical for both the VR headset and the monitor (mismatch guarantees tearing :slight_smile: ).
AI Overview

AI Overview

Image tearing in Linux VR applications, like those using SteamVR, often stems from issues with the compositor or GPU rendering, and can be exacerbated by performance bottlenecks. Troubleshooting involves verifying proper hardware configuration (including identifying the correct GPU), checking for driver issues, and optimizing application performance, including frame timing and reprojection settings.

Possible Causes and Solutions:

  • Incorrect GPU Selection:

In some cases, the VR compositor might incorrectly select the integrated GPU instead of the dedicated one for rendering, leading to performance problems and tearing.

  • Solution: Ensure the system is using the correct GPU (e.g., AMD or NVIDIA) for VR rendering. On some systems, this might involve disabling the integrated GPU or configuring the driver to use the dedicated GPU for specific applications.

  • Driver Issues:

Outdated or incompatible graphics drivers can contribute to image tearing.

  • Solution: Update to the latest stable drivers for your graphics card.

  • Performance Bottlenecks:

If the VR application or compositor is struggling to render frames at the required refresh rate, image tearing can occur.

  • Solution: Optimize the application by reducing graphics settings, simplifying geometry, or improving code efficiency. Also, check the application's frame timing and ensure it's within the required range for the headset.

  • VR SDK Issues:

The VR SDK (e.g., SteamVR) may have its own settings related to frame timing and reprojection that can affect tearing.

  • Solution: Review the VR SDK documentation and adjust settings such as reprojection modes or frame rate limits to optimize performance and minimize tearing.

  • Reprojection Issues:

If the VR SDK is using reprojection to compensate for dropped frames, it might cause artifacts or tearing, especially with rapid head movement.

  • Solution: Fine-tune reprojection settings or consider reducing the complexity of the scene to minimize the need for reprojection.

  • Monitor Refresh Rate:

If the monitor's refresh rate is not synchronized with the VR headset's refresh rate, it can cause tearing.

  • Solution: Ensure that the monitor and VR headset are configured to use compatible refresh rates.

Troubleshooting Steps:

  1. 1. Verify Hardware Configuration:

Confirm that the system is using the correct GPU for VR rendering and that the monitor and VR headset are properly connected and configured.

  • 2. Check Driver Version:

Ensure that the graphics drivers are up to date.

  • 3. Review VR SDK Settings:

Examine the VR SDK documentation and adjust settings related to frame timing and reprojection.

  • 4. Optimize Application Performance:

Reduce graphics settings, simplify geometry, and optimize code to improve rendering performance.

  • 5. Monitor Frame Timing:

Use the VR SDK's tools to monitor frame timing and identify any bottlenecks.

  • 6. Experiment with Reprojection:

Try different reprojection modes to find the best balance between performance and visual quality.

  • 7. Consult Community Resources:

Refer to online forums and communities dedicated to VR development on Linux for additional troubleshooting tips and solutions.


If you haven't seen this reference, you may wish to add it you your list of resources:

2 Likes

This is in cuppa'n'brew so I dont know if technical support is the best angle; especially if the majority of that support is something that AI produced. Might be better to wait and see if someone else with a VR headset can respond with a technical suggestion.

1 Like

My understanding of "Cuppa n' Brew" is any topic, technical or not, that is not directly related to UbuntuMATE specifically. It is meant to allow whatever discussion is necessary for that topic because it does not fall into the other categories, but there is a desire by the OP to raise the topic for getting feedback (or initiating discussion) by the UbuntuMATE Community specifically.

From that perspective, it is completely appropriate to offer whatever technical thoughts, opinion or support relevant to the topic raised, even if not raised as a question.

After all, if the OP didn't want to elicit any response, why would they raise the issue in the first place?


The point you raise here may be timely, revealing a possible need for a specific policy clarification or development.

Understand that I am the last person to push AI as a be all and end all, because I delved into the early "smart systems" by signing Teknowledge under contract for consultation work on a system development feasibility, specifically for supporting the mechanical design/manufacturing team at Nortel in the late 1980's.

I reference the Google AI simply as a means of offering full disclosure of where I am getting the info and how I got it. I never offer it by itself, expecting that to be the final solution. I do offer my own personal assessment/gut-feel regarding the portions of that "AI response" which may be most relevant to the issue at hand, always before quoting the AI's response. I do offer that AI's response on the off chance that maybe the queries by others did not focus the response in the way that my own queries did. Hence the manner of my presenting that information.

If there is a statement to the effect that such AI-generated insights are banned altogether, I will abide by that ruling and have no reservation in regards to backtracking and erasing all such feedback that I may have included in my earlier postings, regardless of topic.

Having reviewed the FAQ guidance for this Community, there is no such restriction.

Regarding possible copyright, the legal view would be that such an "AI insight" would be considered an "excerpt" and allowable as long as the source is referenced, which I have done in every case just like any other "literary/bibliographical reference".

2 Likes

Sorry for the misunderstanding. I'm not asking for technical support. I'm posting here to share feedback and exchange on the subject. The difficulty of using good quality VR on Linux. It's bad enough that there are very few Linux-compatible headsets, but if on top of that it's hard to get the quality expected for the Valve Index, it's a real shame. Any one using VR on Linux with the Valve Index ?

4 Likes