First run with a cold cache: ~20 fps, black/flickering textures, then interrupted prepare leaves the next start broken until cache rebuilt #388

Closed
opened 2026-11-07 23:20:15 +00:00 by Bronnzy · 1 comment
Bronnzy commented 2026-11-07 23:20:15 +00:00 (Migrated from github.com)

Builder version

foliage-linux-updater

How you built

Hookshot Builder zip, GUI, .nup

Game files given to it

A .nup

The error

A new user's first hour (all from hookshot_log.txt, RTX 5070 Ti):

  1. First start after the build: the last start did not finish the driver's part of the shaders: left out, then prepared 14179 shader programs (10440 new, 105 failed) in 17.0 s — i.e. 10,440 of 14,179 programs compiled at runtime, and 105 programs failed to translate (matching #148's "~100 shader programs fail to translate"). Those failures persist for the whole session.
  2. The runtime compile work spreads over the session: translation 129070 ms in all climbing to 205 s, with visible hitches exactly at pipeline bursts — +345 pipelines in one frame at present 17760 (2.8 fps), +194 at 23280 (18.7 fps). The user-visible symptoms: ~20 fps dips, blackened/flickering textures, horizontal phasing flicker while moving.
  3. If the game is closed while the driver cache is still warming, the next start logs the last start did not finish the driver's part of the shaders again and re-pays part of the cost. Nothing indicates to the user that closing early loses work.

Second run with a warm 97 MB mkw_vk_pipelines.bin: translation 0 ms at boot, 60 fps — same machine, same area. So the entire first-hour experience is cache warm-up plus the 105 failed programs.

Suggestions:

  • a visible "preparing shaders (N remaining), keep the game open" indicator on the first start, and saving the driver cache incrementally so a kill mid-warm does not lose it;
  • the 105 failed translations are worth a look independent of caching (likely real bugs, cf. #148).

Relates to #334 (shareable pipeline manifest would remove most of the warm-up).

Visual Studio or Build Tools version, and Windows SDK version

VS Build Tools 2022, MSVC 14.44, Windows SDK 10.0.26100

Operating system and free space on the output drive

Windows 11, ~60 GB free

Confirmations

  • On the newest release, and it still fails there.
  • Open issues searched before filing.
  • No game files or anything built from them is attached.
### Builder version foliage-linux-updater ### How you built Hookshot Builder zip, GUI, .nup ### Game files given to it A .nup ### The error A new user's first hour (all from `hookshot_log.txt`, RTX 5070 Ti): 1. First start after the build: `the last start did not finish the driver's part of the shaders: left out`, then `prepared 14179 shader programs (10440 new, 105 failed) in 17.0 s` — i.e. 10,440 of 14,179 programs compiled at runtime, and **105 programs failed to translate** (matching #148's "~100 shader programs fail to translate"). Those failures persist for the whole session. 2. The runtime compile work spreads over the session: `translation 129070 ms in all` climbing to 205 s, with visible hitches exactly at pipeline bursts — +345 pipelines in one frame at present 17760 (2.8 fps), +194 at 23280 (18.7 fps). The user-visible symptoms: ~20 fps dips, blackened/flickering textures, horizontal phasing flicker while moving. 3. If the game is closed while the driver cache is still warming, the next start logs `the last start did not finish the driver's part of the shaders` again and re-pays part of the cost. Nothing indicates to the user that closing early loses work. Second run with a warm 97 MB `mkw_vk_pipelines.bin`: `translation 0 ms` at boot, 60 fps — same machine, same area. So the entire first-hour experience is cache warm-up plus the 105 failed programs. Suggestions: - a visible "preparing shaders (N remaining), keep the game open" indicator on the first start, and saving the driver cache incrementally so a kill mid-warm does not lose it; - the 105 failed translations are worth a look independent of caching (likely real bugs, cf. #148). Relates to #334 (shareable pipeline manifest would remove most of the warm-up). ### Visual Studio or Build Tools version, and Windows SDK version VS Build Tools 2022, MSVC 14.44, Windows SDK 10.0.26100 ### Operating system and free space on the output drive Windows 11, ~60 GB free ### Confirmations - On the newest release, and it still fails there. - Open issues searched before filing. - No game files or anything built from them is attached.
NotRexed commented 2026-11-08 08:21:37 +00:00 (Migrated from github.com)

Fixed in https://github.com/NotRexed/Hookshot/releases/tag/ultrawide. Please reopen if it still happens with that release.

Fixed in https://github.com/NotRexed/Hookshot/releases/tag/ultrawide. Please reopen if it still happens with that release.
Commenting is not possible because the repository is archived.
No milestone
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Hookshot#388
No description provided.