libretro / beetle-psx-libretro

Standalone port/fork of Mednafen PSX to the Libretro API.
GNU General Public License v2.0
310 stars 130 forks source link

[VULKAN] Graphical bugs when using GritsScanline shader and others #470

Open bigboo3000 opened 5 years ago

bigboo3000 commented 5 years ago

Description

Black areas where it should be white, it's more noticable in the Atlantica track.

Software and GL hardware mode are fine.

Actual behavior

need for speed iii - hot pursuit usa -181216-092710 need for speed iii - hot pursuit usa -181216-092716 need for speed iii - hot pursuit usa -181216-092754 need for speed iii - hot pursuit usa -181216-092807

Steps to reproduce the bug

  1. use Vulkan driver

Version/Commit

Core options

default options PGXP on/off, dithering on/off don't change the problem

Environment information

hizzlekizzle commented 5 years ago

It looks like you have a shader applied. Does it help if you disable that? There's some weird thing going with them that I haven't pinned down.

bigboo3000 commented 5 years ago

Oh you're right, I was using GritsScanlines. No problem with no shader, or easymode. Easymode-halation also have this problem with 8x internal resolution (it's fine with 4x).

So it seems this issue depends on shader complexity and internal resolution.

rz5 commented 5 years ago

Can confirm, GritsScanlines triggers it. Further, the shader parameter 'Scanline opacity' is inversely related to how black certain parts of the frame gets. Higher values will darken bright spots more. Higher values also introduce color banding.

This bug is not exclusive to this game either.

hizzlekizzle commented 5 years ago

It also happens with the reshade/lut shader, which gritsscanlines shares some code with. If it's also doing it with easymode-halation but not regular easymode, that might help me pin things down... I'll take a look.

Themaister commented 5 years ago

Do you have a log? I suspect you're either exhausting VRAM due to lots of high resolution frame buffers, or you're hitting an internal resolution limit (which RA should check for and clamp appropriately).

bigboo3000 commented 5 years ago

Sorry but I don't know how to do a log with RA

hizzlekizzle commented 5 years ago

https://docs.libretro.com/guides/generating-retroarch-logs/

bigboo3000 commented 5 years ago

k here we go retroarch-log.txt