Open vanfanel opened 1 day ago
So it's okay without full framebuffer emulation?
Are you using standalone or libretro?
The mentioned commit uses a new vulkan extension when available to avoid unnecessary work. However it should only really matter when using flat shading, which isn't used by many games, and not the ones listed here. Pretending the extension exists without enabling it doesn't affect Daytona USA for example. So this could indicate a MESA issue.
@flyinghead I'm using libretro. MESA is latest stable but I have also tried with latest MESA gitlab code, with the same results. If someone tests this on Intel graphics (ANV) they will see the same for sure.
@MastaG Full Framebuffer Emulation OFF causes Daytona to be invisible, no graphics at all. That's the only difference it makes for the games I tested.
Can you test standalone? I spotted a new validation error due to this commit on the libretro core (causing retroarch to crash at start up here). But it only affects the core.
@flyinghead I have noticed that the mentioned problems don't happen if I set "Alpha Sorting" to "Per Triangle (Normal)" instead of "Per Pixel", but that means Daytona has missing parts on the player cart, bad clouds on the Soul Calibur intro, etc. (ie: all the problems expected that are caused by the lack of per-pixel alpha sorting).
As for standalone, I will do a build and test tonight, now I have to depart for work.
I fixed the error that was crashing retroarch at start up. I also removed the use of the new extension where it's not necessary. This could help the issue.
@flyinghead I did an standalone build with the latest GIT code (including your latest commits of course) and the problem is present there, too. So, yes: standalone is equally affected. And your latest commit didn't fix it, sadly.
Could you try to disable the use of the new extension completely?
To do this, modify line 467 in core/rend/vulkan/vulkan_context.cpp
to read:
// Enable VK_EXT_provoking_vertex if available
provokingVertexSupported = false;
This is for standalone.
For the libretro core, modify line 181 in core/rend/vulkan/vulkan_context_lr.cpp
:
// Enable VK_EXT_provoking_vertex if available
VulkanContext::Instance()->provokingVertexSupported = false;
@flyinghead I did the changes you pointed me to, and the same problems persist, sorry.
Platform / OS / Hardware: Debian Linux (Testing and Stable)
Flycast version: GIT code, the bug is about an specific commit
Hardware: Intel XE graphics integrated on i5-1235U
Description of the Issue
This commit has broken graphics on Intel XE hardware (MESA, latest stable): https://github.com/flyinghead/flycast/commit/4d73cc8e13424072c7458fd2e965c7fda9a5425a
For example: -Daytona USA 2001: VMU menu heavily garbled, in-game graphics with missing elements like car parts, etc -DOA2: Missing hair on some characters during the intro/demo. -Jet Grind Radio: Runs veeeeery slow and main character is missing.
NOTE: Use pixel-precise alpha-sorting and full framebuffer emulation to match my configuration and see the same results.