Novum / vkQuake

Vulkan Quake port based on QuakeSpasm
GNU General Public License v2.0
1.85k stars 225 forks source link

Regression: frequent rendering glitches on MacOS, Steam Deck, and Ubuntu #626

Closed Macil closed 1 year ago

Macil commented 1 year ago

I've been playing frequently with the master branch commits, and lately I've noticed a lot of rendering glitches recently when playing on my Steam Deck, MacOS, and an Ubuntu desktop. The rendering glitches are rare in the original maps but are frequent (sometimes multiple times per minute) on very detailed maps, including almost anything from the Dimension of the Machine and Arcane Dimensions. The issue seems like map brushes are occasionally rendering on top of brushes they shouldn't for a frame or longer.

Here's a video from the Steam Deck. Watch the candles flicker in the start level, and then the lava appearing through the floor occasionally in the next hub level. (lol ignore the janky player movement, I had to switch the Deck into desktop mode to record and the system was doing some mouse and keyboard emulation with the controller. Probably wouldn't have bothered to take this on the Deck specifically except that I thought this issue was only on the Deck until I tested more elsewhere)

recording.webm

I noticed an additional symptom on MacOS: if my computer is at high cpu load, then the candles (or the rest of the map brushes) in the start map of Dimension of the Machine sway from their location briefly as the player moves. Here's a video:

quake-mac-bug.webm

I haven't noticed this issue on Windows yet. Sometimes I can go a while without seeing the bug on other platforms and this is the platform I've played vkQuake on the least recently, so not sure if it's present there or not.

I did a git bisect on both platforms, and the commit introducing this issue is e94d3f739b55ebe544e8fa5f180d872bb1295aa5.

Systems:

Setting r_indirect 0 makes the issue go away entirely.

Novum commented 1 year ago

Thanks for bisecting @temx what do you think?

Novum commented 1 year ago

8082d1a reverts this commit in the meantime

temx commented 1 year ago

Thanks for the very detailed report, 8415d82a / e87d5341 should fix this.

Macil commented 1 year ago

Thanks! I can confirm the issue is gone now with those.