Jules Blok
Jules Blok
There seems to be an issue with the lavapipe implementation, these results do not reproduce on Nvidia. I'll investigate the driver bug.
Correct you need a driver with `VK_EXT_depth_clamp_control` support or else we can't natively support oversized depth ranges. Though given that removing the normalization can fix the Pokemon channel I could...
I've added a code path that fixes the Pokemon Channel and doesn't include the native oversized depth range handling. As a bonus this also allows us to support this case...
@Pokechu22 Initially this PR was aimed at natively supporting oversized depth ranges where the benefit is obvious. We can definitely discuss some alternative normalization schemes, especially if that'll resolve the...
@Pokechu22 To represent 24-bit integers shouldn't the range be [0.5, 2) rather than [1, 2) given that the mantissa is 23-bit and not 24-bit?
@dolphin-emu-bot rebuild
@Pokechu22 I don't think there has been a progress report that neatly explains everything unfortunately, a lot of the knowledge about the depth buffer was built up over multiple progress...
> Is there a reason why we need to have the GPU multiply by 2^24-1 again? Could we configure the host viewport to not do that multiplication? ... Is that...
> I thought floating point didn't match the emulated GPU. Therefore the emulator largely avoids [floating point math](https://dolphin-emu.org/blog/2014/03/15/pixel-processing-problems/). At the vertex processing stage much of the GPU does use floating...
Just as a testing ground I made PR #13111 with a solution that uses a fixed-point depth buffer to emulate oversized depth ranges, but it unfortunately won't pass all the...