Never take the mesh emulation on an NVIDIA card, where it ended the game inside the driver.

The low-end GPU mode sets mesh_emulation = 1, and on a card without mesh shaders the emulation then draws the game's task and mesh programs in place of the mesh fallback. On NVIDIA's cards without mesh shaders that ended the game at the first mesh draws of an area with an access violation inside the driver, at nvoglv64.dll+0x10cdffe on a GTX 1050 Ti and on a GTX 1070 (both 0.10.1), and a Titan X (Pascal) report names the same mode. The GTX 1050 Ti's owner set mesh_emulation = 0 and played on through the fallback with the rest of the mode on.

The decision (vk_mesh_path.h) takes the card's vendor: an NVIDIA card is drawn for as if the emulation were not asked for, and the boot line says so. The replay and the pipeline code read the decided path from the device context where each read the setting itself. tests/mesh_path_check.c has the new cases.

Not run in the game: no GTX 10 card here. mesh_path_check passes and every file that includes the changed headers compiles.

Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com>
This commit is contained in:
chrg6
2026-11-14 05:27:59 -05:00
parent 516bfa6fb0
commit bbeecce88c
7 changed files with 47 additions and 15 deletions

View File

@@ -40,6 +40,10 @@ cards).
code 70, until nx2navi.ini was edited by hand): with DLSS Frame Generation on and the *Graphics card* setting on
the card that is not NVIDIA's, the device could not be made. The game now starts on the NVIDIA card, and where
there is none, or frame generation cannot be set up, it starts without frame generation and the log says why.
- **A crash on GeForce GTX 10 cards with the low-end GPU mode on** (the game closing inside NVIDIA's driver at the
first grass or foliage of an area, reported on a GTX 1050 Ti, a GTX 1070 and a Titan X): the mode turned on an
older way of drawing the game's mesh shaders that this driver does not survive. NVIDIA cards without mesh shaders
now always take the mesh shader fallback, which ran on the GTX 1050 Ti with the rest of the mode still on.
- **Crashes and hangs found in a review of the whole runtime**; none was seen in our own play, and each fix has a check
of its own:
- a crash when the game read memory the lazy write-back was just handing to the GPU (NVIDIA and Intel cards);