Closed kd-11 closed 5 years ago
NOTE: If testing and you get a vulkan "verification failed' error in vkTexture.cpp, lower your resolution scale to below 284%. This means you ran out of rpcs3's VRAM budget due to the high resolution scale. This situation will be patched with a hotfix before this PR is merged with a proper vulkan resource management PR to come later on.
Assassin's Creed VK Driver error returned F {RSX [0x0081cd8]} RSX: class std::runtime_error thrown: Assertion Failed! Vulkan API call failed with unrecoverable error: Device lost (Driver crashed with unspecified error or stopped responding and recovered) (VK_ERROR_DEVICE_LOST) (in file c:\users\zero\desktop\rpcs3\rpcs3\emu\rsx\vk\vkhelpers.h:970) RPCS3.log.gz
The Last Of Us same error before main menu F {SPU[0x2000004] Thread (highCellSpursKernel4) [0x0558c]} RSX: g_access_violation_handler(0x31b97e00, 0): Assertion Failed! Vulkan API call failed with unrecoverable error: Device lost (Driver crashed with unspecified error or stopped responding and recovered) (VK_ERROR_DEVICE_LOST) (in file c:\users\zero\desktop\rpcs3\rpcs3\emu\rsx\vk\vkhelpers.h:970) RPCS3.log.gz
Dante's Inferno segfault RPCS3.log.gz
Killzone 2 major speed regression this PR previous build
All without res scaling or with res scaling?
All at native res
RDR BLUS30418 crashes with the below just as you load the game. I saved the game in the middle of desert it makes a difference.
Let me know if you need anything else.
Need ur save
Need ur save savedata.zip
Here you go
GT6 BCES01893 crashes at the point where it asks you for name, music still keeps playing, can't do anything, can't stop the game, i have to kill the process to exit.
@ju2ef1986 This save?
@kd-11 weird, yes, did it just work without any BS?
Pretty much yea. I'm trying to match your settings and see if it crashes.
@kd-11 Looks like the crash was caused by SPU block size being set to Mega. I changed it to Safe and works again. My bad :/ Anyway, let me know what needs testing, I am happy to help.
@kd-11 But this is only with combination of SPU LLVM, ASMJIT works fine with SPU Block size set to Mega.
Heavenly Sword with Vulkan on this PR causes my PC to become frozen and show video artifacts on my main monitor while also shutting off my second monitor. Edit: After using the shaders from a previous test that had the same issue I posted about above I got a fatal error "{RSX [0x0011074]} RSX: class std::runtime_error thrown: Assertion Failed! Vulkan API call failed with unrecoverable error: Device lost (Driver crashed with unspecified error or stopped responding and recovered) (VK_ERROR_DEVICE_LOST) (in file c:\projects\rpcs3\rpcs3\emu\rsx\vk\vkhelpers.h:970)". new log: rpcs3 log.zip
I only tested 4 games, but they all seemed to work fine on RX580/RADV.
AC bug was unrelated to this PR but has been fixed nonetheless. It is still very unstable even when ingame, but that's a different issue altogether.
Even if AC unrelated many other games have VK driver fail now, pretty much a regression if you ask me
Backbreaker Vengeance broken. Crash entering gameplay.
F {RSX [0x002c9a8]} RSX: class std::runtime_error thrown: Assertion Failed! Vulkan API call failed with unrecoverable error: Device lost (Driver crashed with unspecified error or stopped responding and recovered) (VK_ERROR_DEVICE_LOST) (in file c:\projects\rpcs3\rpcs3\emu\rsx\vk\vkhelpers.h:970)
AMD cards are unaffected by the vulkan issue here. It is nvidia-specific. Debug layers aren't catching anything either, which means it has to be something very subtle.
Motorstorm (BCES00006) crashes with VK_ERROR_DEVICE_LOST on Coyote Rage (reproducible always, WCB ON, GPU Texture Scaling ON, High Precission Z-buff ON, Strict Rendering, Vulkan, Nvidia 1080, Linux, Kwin/KDE).
Turns out it was a simple typo causing all the crashes. Needs retesting across the board.
AC fixed and also this PR fixes flickering in main menu that was a regression for a long time In other games VK Driver fail messages gone but it segfaults now instead
Heavenly Sword is fixed
Assassins Creed III Lady Liberty HD: Main Menu Framerate Dropped from 18 FPS on master to 9 FPS.
Log: RPCS3.log
Another regression: this PR broke SRM Resistance 2 master SRM ON This PR SRM ON
Motorstorm seems to be fixed.
@Xcedf Need RRC for that visual regression; this PR forcefully enables some parts of SRM to allow backwards compatibility.
@kd-11 yea, i've seen it this part of the code in VKGSrender.cpp that is always On now is about that msaa effect that uses SRM, anyway here's capture https://mega.nz/#!OdoVGSiS!vxDRQ5XKG_br2VZRrEKKOWCkod_XhyLpnhU2weJnv14
Killzone 3 also has an issue with SRM not working correctly. Killzone 3 Master With SRM: Killzone 3 PR With SRM: Killzone 3 RDC
Resistance 3 with OpenGL looks very similar to Vulkan now when using the auger with this PR Resistance 3 Master with OpenGL: Resistance 3 PR with OpenGL: Resistance 3 PR with Vulkan:
@Xcedf @stride21 Not having much luck with the renderdocs, provide RSX capture instead. Sorry for the inconvenience.
@kd-11 there you go https://mega.nz/#!fcoj0YYY!2r14WH_mO_SpCfzpTcI2fNY3NdohhaC8TBE2t1UPPvk
@kd-11 Killzone 3 RSX
[BLUS30443] freezes on load - RSX: class std::runtime_error thrown: Unexpected vkFormat 0x0 Streamable log DemonSoul_freeze.ZIP
This PR regressed Ratchet and Clank Future: ACIT while also fixing the OpenGL issue where only certain details like the white crosshair or the hair on ratchet would only show up in the top left corner of the screen depending on where you look.
Ratchet and Clank Future: A Crack in Time PR with OpenGL: Ratchet and Clank Future: A Crack in Time PR with Vulkan: Ratchet and Clank Future: A Crack in Time Master with OpenGL: Ratchet and Clank Future: A Crack in Time Master with Vulkan: Ratchet and Clank ACIT RSX
Found out that this PR fixes Prince of Persia old regression, first the image was blurry, than on recent master it just have blackscreen ingame on this PR it's fine
Checked a few regressions and a few have been fixed by the last commit unexpectedly. Could be worth checking if anything changed in regressed titles.
Retested my games none affected, nvidia driver segfaults still here unfortunately
Quite strange; I can't get any games to segfault. Which one segfaults the fastest for you?
Dante's Inferno, booting any save enough
Flashing effect in title screen (after pressing start) is broken in Resident Evil 6:
Looks like a ton of use-after-free errors.
Last commit is still WIP and has some issues if you run a game long enough.
Last commit: Dante's Inferno works again, but other games like Killzone 2 demo and AC once more now have just crash no error message and no segfault
Latest push: the segfaults or crashes or whatever that was is fixed
Killzone 2 graphics broke, but in the meantime I figured out why these games have such terrible performance.
RPCS3 v0.0.6-3cbb0fea Alpha | fbo_fixes | Firmware version: 4.83
fix's https://github.com/RPCS3/rpcs3/issues/4452
fix
NASCAR The Game: Inside Line [BLUS30932] NASCAR '14 [BLUS31378] NASCAR '15 [BLUS31560]
master
NASCAR The Game: Inside Line https://drive.google.com/file/d/1avafMc-SJtyUTkTeXHocN3kFzqyZ0h-s/view?usp=sharing NASCAR '14 [BLUS31378] https://drive.google.com/file/d/1uQ0CcLm-0K3-hoDtrz_qXjq9S4kFBXX2/view?usp=sharing
this pr
NASCAR The Game: Inside Line https://drive.google.com/file/d/1UNkfiDqM3nnLqPBKAenHj3qDoOeda51G/view?usp=sharing NASCAR '14 [BLUS31378] https://drive.google.com/file/d/1L9DYs-ddhX6Kr-aYnXPZkms2gMxN67iz/view?usp=sharing
NASCAR The Game: Inside Line [BLUS30932] ingame > playable NASCAR '14 [BLUS31378] ingame > playable NASCAR '15 [BLUS31560] ingame > playable
this pr fix's also
https://github.com/RPCS3/rpcs3/issues/5869
F1 Race Stars™ [NPEB01124]
master on Vulkan
pr on Vulkan
@nitrohigito can you confirm this fix with AMD card
Fixed an address-self-intersection glitch, likely fixes a lot of the more strange regressions caused by this.
RE6 regression is still there:
@MarioSonic2987 Comparison RDC would maybe work better for this one since the capture has the glitch even with master. Just capture renderdoc master vs renderdoc with this PR.
Variable-sized framebuffers idea turned out to be a disaster, so I had to go back to the drawing board. Perform surface cache intersection resolve for surfaces to allow propagation of old data through most cases. Essentially guarantees that previous ROP writes to an arbitrary memory range are present if any render-target is created from the same range. Removes need for the memory hierachy invalidation hack needed for RDR to render accurate shadows.