Emulator Issues #10054
Silent Hill no snow on any graphics backend
Silent Hill Shattered Memories
Game ID? (right click the game in the game list, properties, info tab)
MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)
What's the problem? Describe what went wrong.
Snow does not render on any backend. This is what it should look like: http://abload.de/img/ezgif.com-optimize6psr1.gif
(attached for screencapture on Dolphin at 1x)
What steps will reproduce the problem?
Start the game, play about 15mins until you can walk around (and use the flashlight) and see there's no snow. Or use the fifolog.
Which versions of Dolphin did you test on? Does using an older version of Dolphin solve your issue? If yes, which versions of Dolphin used to work?
What are your PC specifications? (CPU, GPU, Operating System, more)
Is there any other relevant information? (e.g. logs, screenshots,
I'll point at a fifolog someone else posted on reddit. I think we should also put this on the fifoCI bot but maybe that's a separate issue?
#4 Updated by iwubcode over 3 years ago
Just posting the findings for now (in case someone else has some bright ideas):
- If you turn off the hack "store efb copies to texture only" snow will appear but if you toggle it on and off then you won't see it until you change areas
- The issue seems to go away when you stop overwrite the address pointer in TextureCacheBase, this gives you the same functionality as unchecking "store efb copies to texture only" but without the slowdown. This isn't the "fix" because other games are obviously using this logic. We were not able to determine what games were using this logic.
[Tested on Vulkan]
#5 Updated by mimimi about 3 years ago
- File efb_frame_8.png efb_frame_8.png added
- File SHLPA4-1.png SHLPA4-1.png added
- File efb_frame_434.png efb_frame_434.png added
- File SHLPA4-2.png SHLPA4-2.png added
iwubcode pointed out that the snow in silent hill kinda works, if Dolphin doesn't clear the underlying memory for efb copies when only doing efb to texture and skipping the copy to the wii's memory. (source: https://github.com/dolphin-emu/dolphin/pull/4913)
From there i tracked it down a bit further. If the copy to memory is done for a certain 256x256 efb copy, or at least the memory is not cleared, the snow shows up in efb to texture only. This efb copy looks a bit like a minimap, see screenshots. So i assume the game uses this efb copy to determine where it should snow and where not.
PS: This efb copy is only updated every few steps you take, which fits tothe behavior when toggling between efb to texture and efb to ram. After such a toggle, you need to move a few steps, until the change becomes active and it either starts to snow or stops snowing.