ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.26k stars 1.06k forks source link

Rage (9200) #166

Open LeJimster opened 6 years ago

LeJimster commented 6 years ago

It appears all the major bugs for this game have now been fixed. I plan to play through the game before I recommend whitelisting it.

Old bugs: Rage 32-bit suffers from Virtual Texture bug. Rage 64-bit renders correctly, although needs workaround to enable audio Audio fixed as of Proton 3.16-5 Mesa bug reports: Hang/Freeze in menus Fixed in latest mesa-git MegaTexture corruption *Fixed in latest mesa-git as of 24/6/22

Steam log My System Specs

32/64 video comparison showing the Virtual Texture (aka MegaTexture) problem. Rage 32 mesa megatexture corruption

Performance tweaks From my own experimenting I found these Launch Options produce the smoothest overall framerate on my system (RX Vega 56/Ryzen 1700) +r_swapInterval 1 +jobs_numThreads 2 +vt_maxPPF 64 +g_fov 90

It seems like higher cpu thread usage than 2 offers little benefit while causing the frame rate to dip and stutter in certain areas. I also chose to set the fov to 90 as 80 feels too low gaming at 1440p.

dreamer commented 5 years ago

(I don't own the game, just trying to help here) Have you tried using r_useSMP "1" option?

Otherwise, according to PCGW this game uses exclusively OpenGL, so these rendering bugs should be directed rather to the Mesa bugtracker.

kopr12 commented 5 years ago

There's this problem on Windows too, AMD cards only as well, seems to be solvable in AMD Control Center, by turning on 'Surface Format Optimization'

How to fix black squares in textures (AMD problem only)

phrogg commented 5 years ago

@kajzersoze ahh cool found!

NeoTheFox commented 4 years ago

I'm getting Failed to compile render prog binkyuv from binkyuv Full log and my LLVM is 9.0.0, so maybe a regression? I'm running ArchLinux with Vega 56 + Mesa on Ryzen 1600X

DianaNites commented 4 years ago

Any way to get the same fix for windows for proton?

Narann commented 4 years ago

turning on 'Surface Format Optimization'

How can this be achieved with mesa amd Proton ? (AMD RX580)

phrogg commented 4 years ago

I don't know if this is proton related or graphics card related but for me the 64 bit version works now without any issues at all. However I would like to get the achievements so ....

I also noticed i have these startup options enabled: PROTON_NO_ESYNC=1 %command% +cvaradd g_fov 12 +com_skipIntroVideo 1 +image_anisotropy 16 +image_use +r_swapInterval 1 +jobs_numThreads 2 +vt_maxPPF 64 +g_fov 90

kopr12 commented 4 years ago

64 bit version seems to be better now but still bad. 32 bit is the same.

kopr12 commented 4 years ago

Did some more testing and the Proton version and mesa don't matter, what matters is this option vt_maxPPF , setting that one to 128 makes this problem less visible in my case, without it it's horrid, tried few more settings (not all) but those didn't make a difference. Using only this %command% +com_skipIntroVideo 1 +vt_maxPPF 128

phrogg commented 4 years ago

You are right. I tested to confirm: +vt_maxPPF 1 makes it really terrible and +vt_maxPPF 128 does make it nearly playable for 32bit at least on my machiene. 64bit however now works really good.

kopr12 commented 4 years ago

32bit and 64bit are the same for me in regard to this problem. No more no less. It's somewhat playable with +vt_maxPPF 128 , compared to how it was without that option, but the textures are still corrupt and it's very annoying. That's it I guess, for now, I feel that the problem could be solved in Mesa like that option in Windows driver mentioned before.

RussianNeuroMancer commented 4 years ago

Is anyone can provide apitrace to mesa dev?

https://gitlab.freedesktop.org/mesa/mesa/-/issues/1326#note_471422

allanpfreitas commented 4 years ago

Hi everybody, this error persist, any clue ?


Failed to compile render prog binkyuv from binkyuv ***`

allanpfreitas commented 4 years ago

Guys how to run this game using Proton ? I'm using Ubuntu 20.04, any help is appreciated

Failed to compile render prog binkyuv from binkyuv

LeJimster commented 4 years ago

@allanpfreitas Hard to help without more information.

  1. You can retrieve a full system information report by clicking Help > System Information in the Steam client on your machine.
  2. Please copy it to your clipboard by pressing Ctrl+A and then Ctrl+C. Then paste it in a Gist and post the link in this issue.

Nvidia and AMD GPU users should be able to get the game working, haven't checked Intel for some time.

allanpfreitas commented 4 years ago

Hi @LeJimster thanks for your reply. Here what you requested https://gist.github.com/allanpfreitas/73e5b787491b20286cea2dc1841e037e

LeJimster commented 4 years ago

@allanpfreitas can you put your full log files on here as well? If they're not too huge you can just drag drop the file into comment. Rage uses a workaround on mesa, I'm wondering if their is an issue with it on Navi.

allanpfreitas commented 4 years ago

@LeJimster sorry but where can I find these logs?

LeJimster commented 4 years ago

@allanpfreitas A few logs: In the Launch Properties for Rage you can use PROTON_LOG=1 %command% It will give you a log file in your home directory called steam-9200.log Also if you look in your SteamLibrary and navigate through steamapps/compatdata/9200/pfx/drive_c/users/steamuser/Saved Games/id Software/Rage/base/ you will find some Error logs.

allanpfreitas commented 4 years ago

@LeJimster https://gist.github.com/allanpfreitas/e5bb75df70a9c3509e76eb262642f54a

LeJimster commented 4 years ago

@allanpfreitas just out of curiosity what happens if you run the game with this launch option: allow_glsl_builtin_variable_redeclaration=true %command%

LeJimster commented 4 years ago

@LeJimster https://gist.github.com/allanpfreitas/e5bb75df70a9c3509e76eb262642f54a

@allanpfreitas Just looking closer at your system I can see elements of the AMDGPU-Pro driver. Maybe this is causing a conflict? I would remove the AMDGPU-Pro drivers and stick to the Mesa drivers.

https://linuxconfig.org/amd-radeon-ubuntu-20-04-driver-installation

allanpfreitas commented 4 years ago

Yay! Thanks @LeJimster now the game is running but I'm having some textures issues, any tip to solve this one ? Screenshot from 2020-09-30 09-21-52 Screenshot from 2020-09-30 09-22-05

LeJimster commented 4 years ago

@allanpfreitas it's a well known issue as I mentioned in the first post.. The best way is to play the 64-bit version of the game for now. Others have mentioned using launch options +vt_maxPPF 128

allanpfreitas commented 4 years ago

Thanks @LeJimster running the 64bit version its works great.

Shotweb commented 3 years ago

Running the 64 bit version doesn't solve the corruption issue (like allan's screenshots) for me, neither does seemingly any launch/config options. Using AMD graphics.

eukara commented 3 years ago

Same problem on amdgpu as @allanpfreitas. Been trying this on and off since I got this ThinkCentre M75q 2nd Gen in January this year. Running on openSUSE Tumbleweed. I have all sorts of other problems with this type of GPU though. Like freezes in which "drm:amdgpu_cs_ioctl : Failed to initialize parser -125" is spammed into a TTY and my system is fully locked up - with only a force restart able to get me back into action. This happens in a lot of other demanding games too. No idea where to start.

https://gist.github.com/eukara/d1d95c2ac85e273989bfff1cc79516dc < My Steam Hardware report https://bugzilla.kernel.org/show_bug.cgi?id=205089 Someone else having the exact same freezes as me. I'm wondering as to why amdgpu still suffers from this.

kopr12 commented 3 years ago

My only problem with amdgpu is with this game, I wonder what's going on with this, I mean is the problem in Mesa or somewhere else, too bad, it's a great game.

eukara commented 3 years ago

Using Rage64 and +vt_maxPPF 128 also doesn't affect anything for me, the game still renders all virtual-texture pages are all over the place. The question obviously becomes whether this is a driver issue, or the game has a bug (and the Windows AMD drivers have a hack to work around this?) Gotta get this game fixed in time for Steam Deck, which after all runs on AMD! :P

zmike commented 3 years ago

For anyone getting the crash on startup from binkyuv, this should be fixed in upcoming versions of mesa.

croberts81 commented 2 years ago

Finally! Closed issue. gitlab.freedesktop.org/mesa/mesa/-/issues/1326

LeJimster commented 2 years ago

Finally! Closed issue. gitlab.freedesktop.org/mesa/mesa/-/issues/1326

I need to test it to verify the fix as it's been awhile since I built mesa-git. Hopefully this does the trick though! Update: @croberts81 Yep, just built the latest mesa-git and it is fixed on both 32-bit and 64-bit versions of the game. No more corrupted tiles! =)

Big thanks to Timothy Arceri for putting this one finally to bed. Hopefully this title can be whitelisted now.

eukara commented 2 years ago

Thank you all for making this possible! This was my most anticipated game!

kopr12 commented 2 years ago

Hmm, still broken textures in my case. OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.1.3 Device: AMD Radeon Vega 3 Graphics (raven, LLVM 14.0.4, DRM 3.42, 5.15.41-gentoo) (0x15dd)

Tried both 32-bit and 64-bit with several Proton versions.

LeJimster commented 2 years ago

Hmm, still broken textures in my case. OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.1.3 Device: AMD Radeon Vega 3 Graphics (raven, LLVM 14.0.4, DRM 3.42, 5.15.41-gentoo) (0x15dd)

Tried both 32-bit and 64-bit with several Proton versions.

You need to build the latest mesa-git. It should appear as Mesa 22.2.0. There will probably be a stable version in the next few weeks.

kopr12 commented 2 years ago

You need to build the latest mesa-git. It should appear as Mesa 22.2.0. There will probably be a stable version in the next few weeks.

Well I checked release notes for 22.1.3 and it mentioned [wine] RAGE: texture problems as bug fixed

Anyway, compiling now the latest meta-git and will report back.

LeJimster commented 2 years ago

You need to build the latest mesa-git. It should appear as Mesa 22.2.0. There will probably be a stable version in the next few weeks.

Well I checked release notes for 22.1.3 and it mentioned [wine] RAGE: texture problems as bug fixed

Anyway, compiling now the latest meta-git and will report back.

Right. I will see about testing 22.1.3 on my laptop tomorrow. Let us know if mesa-git works.

kopr12 commented 2 years ago

Same thing with git version. OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.2.0-devel (git-7bb62d9dd8)

Well I don't know what to say, I tried, maybe it's just me for some odd reason, but I seriously doubt that, I run flatpak version of Steam though, maybe it has something to do with it, but unlikely, since I don't experience problems with other games.

LeJimster commented 2 years ago

Same thing with git version. OpenGL version string: 4.6 (Compatibility Profile) Mesa 22.2.0-devel (git-7bb62d9dd8)

Well I don't know what to say, I tried, maybe it's just me for some odd reason, but I seriously doubt that, I run flatpak version of Steam though, maybe it has something to do with it, but unlikely, since I don't experience problems with other games.

The fix works for me on my PC and laptop. I just tested it on my laptop against mesa-git as mesa 22.1.3 hasn't been added to Arch stable yet. I have a Vega 56 in my PC and the laptop is running a 5900HX with integrated Vega graphics.

Laptop: OpenGL vendor string: AMD OpenGL renderer string: RENOIR (renoir, LLVM 14.0.6, DRM 3.46, 5.18.8-arch1-1) OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.2.0-devel (git-8ab1e9826d)

I have never run Steam as a flatpak so I cant comment on whether that would be causing issues. I always use Steam (runtime). I'm not really up on flatpaks but could it be that its using an old 00-mesa-defaults.conf for the flatpak and not applying the new workaround.....? the workaround requires force_gl_map_buffer_synchronized to be enabled.

        <application name="RAGE (64-bit)" executable="Rage64.exe">
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
            <option name="force_gl_map_buffer_synchronized" value="true" />
        </application>

        <application name="RAGE (32-bit)" executable="Rage.exe">
            <option name="allow_glsl_builtin_variable_redeclaration" value="true" />
            <option name="force_gl_map_buffer_synchronized" value="true" />

Try adding force_gl_map_buffer_synchronized=true %command% to your launch options see if that helps?

kopr12 commented 2 years ago

Yeah, that could be the problem, I've updated flatpak version of mesa to 22.1-branchpoint-3487-gb28efd80ebb , that's the latest one that's available I'm afraid for flatpak, and I think the fix came after that snapshot, so I'll just have to wait it out a little more. Glad that it's finally fixed though, there's time for me to play it :)

LeJimster commented 2 years ago

Can confirm the latest mesa stable does indeed fix the virtual texture bug.

OpenGL vendor string: AMD
OpenGL renderer string: AMD RENOIR (LLVM 14.0.6, DRM 3.46, 5.18.9-arch1-1)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 22.1.3
kopr12 commented 2 years ago

Switched from flatpak version to regular native Steam and it works. Had some issues with 5.1 sound speakers, but I had that with some other Proton games as well, the only Proton version where the sound is working fine is 4.11, but that's another issue I guess.

uqs commented 2 years ago

Can confirm that upgrading to mesa 22.1.7 fixed the texture glitches for me, no command line overrides required anymore. I still experienced sounds not playing or cutting out, and it might be that a combination of PROTON_NO_ESYNC=1 and +jobs_numThreads 2 has fixed this for me, but I need a bit more mileage with it still to see if dialogue sounds or car noises are cutting off.

32bit Steam version, with Proton 7 or something

OS: Arch Linux
KERNEL: 5.19.6-arch1-1
CPU: AMD Ryzen 5 5600X 6-Core
GPU: AMD Radeon RX 6800 (sienna_cichlid, LLVM 14.0.6, DRM 3.47, 5.19.6-arch1-1)
GPU DRIVER: 4.6 Mesa 22.1.7
RAM: 32 GB
kopr12 commented 2 years ago

I solved my sound problems with PULSE_LATENCY_MSEC=60 %command%