flyinghead
flyinghead
So it confirms that this is the infamous palette issue. This is the corresponding GLSL code (in rend/gles/gles.cpp): ``` highp int color_idx = int(floor(texture(tex, coords.xy).FOG_CHANNEL * 255.0 + 0.5)) +...
It's likely a GPU driver bug, or a hardware bug. The best is probably to use OpenGL instead of Vulkan, especially with Intel GPUs.
Why would a 120 Hz refresh rate cause any issue? Vsync will wait until the next screen refresh to display the current frame. This wait time will be lower than...
Thanks for the video. I think I know what the problem could be but I don't have a 120 Hz display to test with. I'll have a look at retroarch's...
You can grab the flycast core dll here: https://github.com/flyinghead/flycast/actions/workflows/c-cpp.yml Get the `flycast-libretro-x86_64-w64-mingw32` artifact from the latest run on the libretro branch.
The last build on the libretro branch has a tentative fix for 120 Hz displays. Can you give it a try? It should detect that your display is refreshing at...
There's no visible option: If VSync is enabled and the monitor refresh rate is 120 Hz, it should use a swap interval of 2 instead of 1.
I just realized you're using Vulkan and this change won't work with it. Can you try Open GL instead?
One step at a time. At least we know it works for Open GL, then I can figure out a similar solution for Vulkan. It's only using a swap interval...
So far the only solution I have for Vulkan relies on an extension (VK_GOOGLE_display_timing) that's not widely supported except on mobile.