Dishonored [BLUS30501] lacks Vulkan and OpenGL Parity
Quick summary
Dishonored displays a black screen when using Vulkan Dishonored works well enough when using OpenGL
Details
On RPCS3 I have beaten the first mission after the escape from Prison mission using OpenGL + Accurate Gettllar. 0.0.22-13636 worked with Vulkan I just need to clear shaders cache every single time I boot the game and sometimes spu cache. 0.0.22-13637 Vulkan + Dishonored just refuses to work all the way up to current master regardless of config. But I really don't believe https://github.com/RPCS3/rpcs3/pull/12018 created the issue. Because the previous 5 to 10 builds was when the game was starting issues and problems with inconsistencies. Going even older makes Vulkan work freely. But why use Vulkan on an old build when OpenGL just works on a modern build.
Attach a log file
Attach capture files for visual issues
Vulkan isn't letting me create an RSX capture
BLUS30501_20230529164439_capture.zip
System configuration
Ryzen 5 3600 GTX 1660 Super 16 Gigs of ram WIndows 11 beta insider
Other details
It's not everyday you find games that don't work with Vulkan that does work with OpenGL. Normally it's the other way around. This feels like one of those issues that's like the games that "still" don't work with llvm stuff. But with graphics instead. I really wish I had more information and if there is more information that I can dig up from this stuff I would love to provide it. I just boot my game watch the intro videos and before the Press Start screen is when Vulkan will just display a black screen so it's not very informative. OpenGL just works so IDK.
One large difference between the 2 is that OpenGL executes work serially while vulkan is fully asynchronous. This means from the CELL point of view, vulkan runs very fast then stalls for a while to render everything before proceeding while opengl just moves through the command queue at a steady pace. Try using atomic FIFO with vulkan. In theory that should be enough to force the renderer to slow down enough.
There's the same black screen with atomic
RPCS3.log.gz
and again with ordered and atomic
RPCS3.log.gz
I've even tried allow host gpu labels where it talks about synchronizing with CELL directly with host gpu.
Same black screen
RPCS3.log.gz
Debug output slows. it down enough 😃
RPCS3.log.gz
Max driver wakeup delay + atomic fifo + high upscale values seems to be a workaround for now.
RPCS3.log.gz
Is it possible to improve synchronization at default scale and settings?