Skip to content

Conversation

@abaire
Copy link
Member

@abaire abaire commented Nov 12, 2025

This PR attempts to address a few problems:

  • There are a number of GitHub issues that are unnecessarily confusing because users hit "Ignore" on the Windows assertion failure dialog. This adds an exit call after the asserts so that ignoring the assert will not allow continued operation in an undefined state
  • There have been a number of users with low spec GPUs looking for help w/ VK_CHECK failures due to lack of VRAM. This adds a "friendly" version of the VK_CHECK macro that allows a contextual error message to be included (in this case suggesting use of GL due to lack of VRAM)
  • Many errors are reported with screenshots of the assertion failure message rather than the log details. This writes assertion failures to a new xemu-fatal-error.log file in the user's home directory and mentions the existence of that file in the assertion message. It also logs actual error values to that log, so there's more data than "glGetError returned some error".

This extends PR #2453, since there is some overlap in intent, and could replace it or be rebased after that PR is merged.

A number of bug reports have been muddied due to the ability to "Ignore"
assertion failures on Windows. This change adds a fatal error log to
capture details needed for bug reports and puts an explicit exit after nv2a
assertion failures to prevent continuation leading to undefined states.
This extends the VK_CHECK macro to print additional information intended to
allow users to self-diagnose very common problems (like lack of VRAM, the
usecase included here).
@abaire abaire force-pushed the add_friendly_fatal_error_messages branch from 159a030 to 1508b35 Compare January 19, 2026 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant