-
-
Notifications
You must be signed in to change notification settings - Fork 707
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bloodborne] Shader fefebf9f causes 2gb buffers to be created #1547
Comments
What happens if we skip this shader ? does it cause any broken graphics or missing effects ? |
I haven't tested this personally since shader skipping was kinda killed by the geoshaders PR. I've heard it's possible to do it with tess builds on some shaders. But since this shader is used in most areas to copy things so I don't expect the game to work well without it so I haven't taken the time. Feel free to try and report though |
Turtle suggested that it's not strictly an issue in how the emu interprets the game code, but that the game code is actually requesting a vsharp with 2GB. I've asked Bloo if he can develop a game patch to lower this value to try a pissible workaround for this issue :p Edit: Seems like it's not simple to find the value and develop a patch for this. We'll probably have to wait for future emu developements. |
Why does it not run out of mem on PS4? Is something missing? |
This shader seems present in every area, and it can lead to single digit performance or crashes due to out of memory in the worst cases.
For example the performance issues get particulary bad in Upper Cathedral Ward and even worse in Cainhurst:
It's a simple copy shader, for some reason it gets interpreted by the emu as needing 2gb:
But it's actually writing around 26KB:
It seems like an issue in how the emulator's texture cache interprets the shader.
Tracy profile analyses were taken with guidance of psucien (nullptr), tracy doesn't seem to work in main.
Dumping the shader will write these two files:
cs_0x00000000fefebf9f_0.spv
cs_0x00000000fefebf9f_0.bin
Trace link:
https://drive.google.com/file/d/1wfw-5vCHwyE-X7jQVgn9L0LgSDcWqotf/view?usp=sharing
These are the workarounds used to make tracy work:
(this disables gpu work tracing, but it's the only workaround we have for now)
shadPS4/src/video_core/renderer_vulkan/vk_instance.cpp
Line 263 in 76f4408
The text was updated successfully, but these errors were encountered: