ValveSoftware / SteamVR-for-Linux

Issue tracker for the Linux port of SteamVR
919 stars 45 forks source link

[PERF] Vision shaking #382

Open Whitecatkeke opened 4 years ago

Whitecatkeke commented 4 years ago

Describe the bug I have been playing steamvr on linux since March. For a long period of time, in spite of some stuttering issues, the steamvr is very playable. The dashboard has always been terrible but games like Beat saber, Box VR and Fruit Ninja all behaved well. The performance was not as smooth as that under Windows, but overall was good enough. Since Mid July (I can't remember the exact date), the performance has dropped dramatically. The whole vision became very shaky, which makes the steamvr completely unplayable. Even 5 minutes beat saber can make me very nauseous and cause damage to my eyes.

Initially, I thought it might be a distro problem (I am using Manjaro Gnome). So I freshly installed an Ubuntu 20.04 and a Manjaro XFCE, and I had exactly the same problem. I am using 1080ti. I tried "prefer maximum performance", which worked for a couple of days then became not useful.

System Information (please complete the following information):

Performance Data (optional, but very helpful):

Scindix commented 4 years ago

Yeah, I've got the same issue. No matter if I play HL:Alyx, Beat Saber or if I'm just hanging around in SteamVR Home. It's really frustrating. I also have the feeling it wasn't that bad half a year ago. I'm hijacking this issue with my own observations as I reckon that we suffer from the same bug. Feel free to comment if there's something different for you though @Whitecatkeke .

The "shaky vision" seems to be caused by a lot of frame skips. However CPU usage never goes beyond 40% for a single thread (at least in SteamVR Home and according to GNOME's very smoothed out CPU graph.). I tried both Legacy Reprojection and Motion Smoothing in the per-app settings, but it didn't change anything for me.

I want to add that all applications suffer from the same problem. No matter if they are running through proton or natively. And no matter if they are graphically demanding or not. Also all my games run butter smooth on Windows.

My specs:

This is a Screenshot while running Half Life: Alyx. Notice the pink lines in the left SteamVR window? That's exactly when the scene freezes for 1-2 frames. It's an extreme example though. And sometimes there are no frame skips for like a minute or longer. To me it seems like it doesn't matter what scene is currently rendered. The frame skips appear to occur randomly. Also worth mentioning is that there are no other programs using up CPU time when these frame drops are happening. (Which is what I suspected at first.)

Screenshot from 2020-08-20 05-25-42-crop

Whitecatkeke commented 4 years ago

Yeah, I've got the same issue. No matter if I play HL:Alyx, Beat Saber or if I'm just hanging around in SteamVR Home. It's really frustrating. I also have the feeling it wasn't that bad half a year ago. I'm hijacking this issue with my own observations as I reckon that we suffer from the same bug. Feel free to comment if there's something different for you though @Whitecatkeke .

The "shaky vision" seems to be caused by a lot of frame skips. However CPU usage never goes beyond 40% for a single thread (at least in SteamVR Home and according to GNOME's very smoothed out CPU graph.). I tried both Legacy Reprojection and Motion Smoothing in the per-app settings, but it didn't change anything for me.

I want to add that all applications suffer from the same problem. No matter if they are running through proton or natively. And no matter if they are graphically demanding or not. Also all my games run butter smooth on Windows.

My specs:

  • Distribution: Arch Linux
  • SteamVR version: 1.14.6 (1597111133)
  • Steam client version: Aug 17 2020
  • Opted into Steam client beta?: Yes
  • CPU: i7-7700K
  • GPU: GTX 1070 (driver version: 440.82)

This is a Screenshot while running Half Life: Alyx. Notice the pink lines in the left SteamVR window? That's exactly when the scene freezes for 1-2 frames. It's an extreme example though. And sometimes there are no frame skips for like a minute or longer. To me it seems like it doesn't matter what scene is currently rendered. The frame skips appear to occur randomly. Also worth mentioning is that there are no other programs using up CPU time when these frame drops are happening. (Which is what I suspected at first.)

Screenshot from 2020-08-20 05-25-42-crop

Thanks for your post. This is precisely what I am experiencing. My performance graph looks exactly like yours.

I agree with you that it wasn't this bad in the past. I played beatsaber under Linux for months before this problem occurred. At the moment it seems the position goes wrong with every frame skip. If I jump with the headset, the whole vision shake makes me feel I am on a ship.

shazow commented 4 years ago

Same issue here on an i5-6500 with a GTX 1080. Perfectly smooth on Windows 10.

Also I suspect some of the reports in https://github.com/ValveSoftware/SteamVR-for-Linux/issues/277 are also suffering from what this thread describes, though could be separate issues.

Meister1593 commented 2 years ago

Same issue, Archlinux linux-mainline 5.17-rc1 (it contains latency fixes, which help but not in this particular case), ryzen 1600, rx 6600 xt. Frametime was always not above 11ms (htc vive). Perfectly fine and smooth vision on Windows 10. Beat saber is nearly unplayable with these shakes, very hard to read.

Magicrafter13 commented 11 months ago

I just ran across this, I'm pretty sure I have the same issue. moving my head side to side is nauseating, even though standing still, everything runs just fine.

Per the suggestion of threads on Steam, I tried using SteamVR version 1.14 since supposedly this older build didn't have the broken "async projection" or whatever, but when I go to run this older SteamVR version (available in the Betas tab), I get this error (not initialized 109): image SteamVR Home still loads, however when I try to launch a game, the game just launches like a regular desktop application. Same if I launch the game manually and select the "launch in VR" option, it just loads as if there's no headset, while the headset is in the neon loading space limbo area.