Emulator Issues #9373
closedDepth issues on Mario Kart Double Dash
0%
Description
Game Name?
Mario Kart Double Dash!
Game ID? (right click the game in the game list, properties, info tab)
GM4E01
MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)
97f9ebc39ab4244e419848793988561a
What's the problem? Describe what went wrong.
The game displays depth issues in several places (see attached screenshots and fifolog):
- The two characters on the cart are showing one through each others,
- Some parts of the circuit background are showing through foreground elements,
- Some parts of the circuit are not visible at all.
What steps will reproduce the problem?
- Run Mario Kart Double Dash
- Start a Time Trial on Baby Park
Other circuits are also affected, but this one is the most visible.
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?
- Tested on 4.0-8987 (which includes the FastDepth removal, but the issue existed before).
- Used to work properly on Dolphin 3.5-something (it has been broken since the GLSL rewrite).
Note that the PR "VertexShaderGen: Add a depth bias for large far values." (https://github.com/dolphin-emu/dolphin/pull/3587) fixes some of these issues – but not all of them (see attached screenshot).
What are your PC specifications? (CPU, GPU, Operating System, more)
- Macbook Pro on OS X
- Intel Core i7 2.8 GHz
- Intel Iris 1536 Mo
- 8 Go 1600 MHz DDR3
This occurs only on OS X with the OpenGL renderer. The same machine on Windows with the OpenGL rendered displays fine.
Is there any other relevant information? (e.g. logs, screenshots,
configuration files)
The screenshot are made with the default ForcedSlowDepth value – but anyway forcing slow depth doesn't have any effect.
Files
Updated by JMC4789 over 8 years ago
- Assignee set to Armada
Ah OSX and its terrible horrible drivers that suck.
Updated by kemenaran over 8 years ago
I know :/ I've been sitting on this issue for months, because it cleary looks like one of these horrible drivers issues that have to be worken around. Eventually I thought it might be worth being reported anyway :)
Updated by JMC4789 over 8 years ago
Weeeeeeeell, I could just tell you to use the software renderer, get a real graphics card, or use a better OS that has good GPU drivers.
Dolphin has no obligation to fix it and may never fix it if it compromises some other part of the emulator. Despite what I said viewpoint, I'm absolutely glad that you reported the issue; we need to know this kind of stuff in case there is an easy work-around or something.
Luckily for everyone, I don't make that decision myself and pinged Armada who did that other PR. There's also the potential that endrift could come up with a fix.
Updated by JMC4789 over 8 years ago
So, instead of being an asshole and complaining about video drivers, I'm going to put the fifolog up on fifoci so we can figure out what's going on, and maybe send a test case in to try and get this fixed. There's obviously something weird going on.
Updated by kemenaran over 8 years ago
For what is worth, this is still present with Armada's latests depth-related PR (https://github.com/dolphin-emu/dolphin/pull/4085, https://github.com/dolphin-emu/dolphin/pull/4139).
I recorded a video that demonstrates the issue (Dolphin 5.0 438, Fast-Depth enabled) : https://youtu.be/OFgExeypegg
Still looks like a driver bug anyway ¯_(ツ)_/¯
Updated by ligfx over 7 years ago
Other levels with very visible problems are Wario Colosseum (the swamp water at the bottom of the level appears in front of everything), Bowser's Castle (moat appears in front of everything, props are missing), Dino Dino Jungle (the entire jungle to the right of the race course is missing), and Rainbow Road (super broken).
This is still present on master (1c9d11c0e9a6559d4bb449e7a484f5de91271dbb). Does anyone with knowledge of the graphics pipeline have any clues on where to start looking, if someone wanted to fix this?
Updated by Armada over 7 years ago
If you capture a FIFO log I can take a look at it and fix it.
Updated by kemenaran over 7 years ago
- File MKDD - Baby Park - depth issues.dff.zip MKDD - Baby Park - depth issues.dff.zip added
- File MKDD - Baby Park - depth issues.jpg MKDD - Baby Park - depth issues.jpg added
- File MKDD - Dino jungle - depth issues.dff.zip MKDD - Dino jungle - depth issues.dff.zip added
- File MKDD - Dino jungle - depth issues.jpg MKDD - Dino jungle - depth issues.jpg added
@Armada here are two FIFO logs, of two different MK:DD tracks where the problem is visible.
In Baby Park elements of the background (like the ferris wheel) are on top of the foreground (especially the "Mario Kart" starting line banner).
In Dino Jungle an entire portion of the jungle is missing: it starts to be visible only on the left of the screen, but is missing on the right.
Logs and screenshots made with Dolphin 5.0-3831, with fast-depth enabled.
Updated by Armada over 7 years ago
I thought ligfx was implying that this issue wasn't just on MacOS. There's not a lot of room to implement workarounds for bugged drivers, so you'll have to turn off fast depth on MacOS.
Updated by Armada over 7 years ago
Also note that this only happens on the Intel driver. I have a macbook with an Nvidia GPU that works fine.
Updated by ligfx over 7 years ago
Ah, nope, it's just a macOS Intel problem.
It's not a fast-depth bug though—the same problems appear regardless of whether Fast Depth is enabled or disabled. Any idea where the problem might be?
Updated by Armada over 7 years ago
Even if fast depth doesn't fix it, the problem is still the Intel drivers, this isn't going to get fixed any time soon.
Updated by ligfx about 7 years ago
This should be merged into #10072 "Dual source blending fallback removed - graphical problems on mobile devices in Mario Kart: Double Dash, Resident Evil 4 and more," and that should be updated to cover mobile devices + the shitty macOS Intel driver.
Updated by JosJuice about 7 years ago
Are you sure? This problem looks different visually, and it started happening before we removed the dual source alpha blending fallback.
Updated by ligfx about 7 years ago
Hmm, that's what my old notes said, I'll check again.
Updated by ligfx about 7 years ago
- File GM4E01-1.png GM4E01-1.png added
Okay, I figured out what I meant.
Before #4677 (the removal of the dual-source blending fallback), this issue could be easily fixed by telling Dolphin that macOS doesn't support dual-source blending at all, causing it to use the fallback for destination alpha. I've attached a screenshot of that.
Updated by ligfx about 7 years ago
- File GM4E01-2.png GM4E01-2.png added
(Sorry for double-posting, I accidentally submitted the previous comment before I was ready.)
On modern Dolphin, disabling all dual-source blending makes it look like this:
Updated by kemenaran over 4 years ago
For what is worth, these depth issues can now be worked around by using the Vulkan backend on macOS.
(Tested on Dolphin 5.0-11830)
Updated by ZephyrSurfer over 3 years ago
There seems to be a PR for this
Updated by JMC4789 about 2 years ago
- Status changed from New to Fixed
- Assignee deleted (
Armada)
I believe this can be closed now with modern builds and backends.