Black screen after Great Deku Tree dialogue on AMD RX 5700 XT – game keeps rendering (~40 fps, 600–990 draws) but output is black; ~100 shader programs fail to translate #148

Closed
opened 2026-11-07 13:24:34 +00:00 by camsay1996 · 4 comments
camsay1996 commented 2026-11-07 13:24:34 +00:00 (Migrated from github.com)

Description
On an AMD RX 5700 XT the game boots and plays the intro, but the screen turns black right after the Great Deku Tree finishes speaking. The game does not crash or freeze: the log shows frames still being presented at ~40 fps with 600–990 draws per frame, and the audio threads keep running. So the scene seems to be rendered, but nothing visible reaches the screen.

RX_VK_NO_FOLLOW=1 (set through a .bat launcher before starting the game) does not change anything. It is still black.

System

  • GPU: AMD Radeon RX 5700 XT 8 GB (Vulkan 1.4, driver 0x800161 per Hookshot log)
  • AMD Adrenalin driver version:
  • CPU / RAM: Ryzen 5 2600 / 16 GB DDR4
  • OS: Windows 11
  • Hookshot version / commit:
  • Install path: D:\Games\EMULATOR\SW2\HK-BUILD
  • Contents of hookshot_options.ini: <paste, or "defaults">

Steps to reproduce

  1. Launch the game (via launch_nofollow.bat, which sets RX_VK_NO_FOLLOW=1, or directly).
  2. Intro plays normally and the Great Deku Tree speaks.
  3. Right after he finishes speaking, the screen goes black and stays black.
  4. <Audio keeps playing? Can you still move or press buttons? – fill in>

Expected: gameplay is visible.
Actual: black screen.

What the log shows (full log attached: hookshot_log_1000af.txt)

Rendering keeps running:

  • Until ~11,000 presents: 60 fps, only 2–5 draws per frame (intro and cutscene).
  • By ~12,000 presents: 990 draws per frame, ~37 fps. Later around 600–780 draws at ~40 fps.
  • Last status line: 14520 presents, 39.5 fps; a frame: 619 draws (61 skipped) ... 21840 programs (100 failed), 799 textures (2004 MB)

Programs fail to translate (about 100 failed in total):

  • 30× mesh program ... not translated: Failed to track indirect branch is not implemented
  • 11× ... not translated: a network left out on this card
  • 31× NVN2 program ... (stage 7) does not lower, with these reasons:
    • 18× native program uses lowering scratch registers (native op 0x805)
    • 4× native special-register read (0x805)
    • 3× native dependency barrier mode
    • 3× native call linkage mode (0x944)
    • 2× native uniform arithmetic predication (0x291)
    • 1× native return linkage mode
  • Capability line: vk: AMD Radeon RX 5700 XT, Vulkan 1.4, driver 0x800161; mesh shaders no, host memory import yes, pipeline libraries yes
  • Also: vk: matrix multiplies in software (the cooperative matrices lack 16x8x16 f16)

Other messages near the end of the log:

  • vk: graphics pipeline for 5fa56485a6b07619 not made (-13) (an earlier run also had 6eaa646d07ea4e43 not made (-13))
  • vk: a draw (program e99f305c16ced78f) samples a target the pass wrote, after 2 draws of the pass (1152x648): a pass of its own
  • 43× vk: upload over a drawn image messages
  • Several slow submits of 90–125 ms

Notes

  • This run started with an empty program cache (hookshot_programs.bin: 0 program keys kept). An earlier run with 21,628 cached program keys showed only 10 failed programs, so the cache may hide the real failures in later runs.
  • The failing programs may be the ones needed to draw the scene after the Deku Tree cutscene, since the black screen starts when the draw count jumps. I haven't confirmed that.

Tried

  • RX_VK_NO_FOLLOW=1: no change, still black.
  • <fill in: with all in-game options off (frame generation off, resolution Auto)? yes/no, result>

Attachments: hookshot_log_1000af.txt

hookshot_log.txt

**Description** On an AMD RX 5700 XT the game boots and plays the intro, but the screen turns black right after the Great Deku Tree finishes speaking. The game does not crash or freeze: the log shows frames still being presented at ~40 fps with 600–990 draws per frame, and the audio threads keep running. So the scene seems to be rendered, but nothing visible reaches the screen. `RX_VK_NO_FOLLOW=1` (set through a .bat launcher before starting the game) does not change anything. It is still black. **System** - GPU: AMD Radeon RX 5700 XT 8 GB (Vulkan 1.4, driver 0x800161 per Hookshot log) - AMD Adrenalin driver version: <fill in> - CPU / RAM: Ryzen 5 2600 / 16 GB DDR4 - OS: Windows 11 <build> - Hookshot version / commit: <fill in> - Install path: D:\Games\EMULATOR\SW2\HK-BUILD - Contents of hookshot_options.ini: <paste, or "defaults"> **Steps to reproduce** 1. Launch the game (via `launch_nofollow.bat`, which sets `RX_VK_NO_FOLLOW=1`, or directly). 2. Intro plays normally and the Great Deku Tree speaks. 3. Right after he finishes speaking, the screen goes black and stays black. 4. <Audio keeps playing? Can you still move or press buttons? – fill in> **Expected:** gameplay is visible. **Actual:** black screen. **What the log shows** (full log attached: hookshot_log_1000af.txt) *Rendering keeps running:* - Until ~11,000 presents: 60 fps, only 2–5 draws per frame (intro and cutscene). - By ~12,000 presents: 990 draws per frame, ~37 fps. Later around 600–780 draws at ~40 fps. - Last status line: `14520 presents, 39.5 fps; a frame: 619 draws (61 skipped) ... 21840 programs (100 failed), 799 textures (2004 MB)` *Programs fail to translate (about 100 failed in total):* - 30× `mesh program ... not translated: Failed to track indirect branch is not implemented` - 11× `... not translated: a network left out on this card` - 31× `NVN2 program ... (stage 7) does not lower`, with these reasons: - 18× native program uses lowering scratch registers (native op 0x805) - 4× native special-register read (0x805) - 3× native dependency barrier mode - 3× native call linkage mode (0x944) - 2× native uniform arithmetic predication (0x291) - 1× native return linkage mode - Capability line: `vk: AMD Radeon RX 5700 XT, Vulkan 1.4, driver 0x800161; mesh shaders no, host memory import yes, pipeline libraries yes` - Also: `vk: matrix multiplies in software (the cooperative matrices lack 16x8x16 f16)` *Other messages near the end of the log:* - `vk: graphics pipeline for 5fa56485a6b07619 not made (-13)` (an earlier run also had `6eaa646d07ea4e43 not made (-13)`) - `vk: a draw (program e99f305c16ced78f) samples a target the pass wrote, after 2 draws of the pass (1152x648): a pass of its own` - 43× `vk: upload over a drawn image` messages - Several slow submits of 90–125 ms **Notes** - This run started with an empty program cache (`hookshot_programs.bin: 0 program keys kept`). An earlier run with 21,628 cached program keys showed only 10 failed programs, so the cache may hide the real failures in later runs. - The failing programs may be the ones needed to draw the scene after the Deku Tree cutscene, since the black screen starts when the draw count jumps. I haven't confirmed that. **Tried** - `RX_VK_NO_FOLLOW=1`: no change, still black. - <fill in: with all in-game options off (frame generation off, resolution Auto)? yes/no, result> **Attachments:** hookshot_log_1000af.txt [hookshot_log.txt](https://github.com/user-attachments/files/34519635/hookshot_log.txt)
NotRexed commented 2026-11-07 14:01:12 +00:00 (Migrated from github.com)

Thanks for the detailed log. The RX 5700 XT (RDNA1) has no mesh shader support in Vulkan (your log says 'mesh shaders no'), so the ~100 programs that fail to translate are the mesh-shader ones and that scenery is skipped. The black screen after the Deku Tree is a separate problem, probably the same one as #127, where an RX 9060 XT got in game with RX_VK_OOT_VISUAL=0 and RX_VK_NO_FOLLOW=1. Could you try those two (in hookshot_env.txt next to hookshot.exe, one per line)?

Thanks for the detailed log. The RX 5700 XT (RDNA1) has no mesh shader support in Vulkan (your log says 'mesh shaders no'), so the ~100 programs that fail to translate are the mesh-shader ones and that scenery is skipped. The black screen after the Deku Tree is a separate problem, probably the same one as #127, where an RX 9060 XT got in game with `RX_VK_OOT_VISUAL=0` and `RX_VK_NO_FOLLOW=1`. Could you try those two (in `hookshot_env.txt` next to `hookshot.exe`, one per line)?
camsay1996 commented 2026-11-07 14:32:29 +00:00 (Migrated from github.com)

Thanks for the detailed log. The RX 5700 XT (RDNA1) has no mesh shader support in Vulkan (your log says 'mesh shaders no'), so the ~100 programs that fail to translate are the mesh-shader ones and that scenery is skipped. The black screen after the Deku Tree is a separate problem, probably the same one as #127, where an RX 9060 XT got in game with RX_VK_OOT_VISUAL=0 and RX_VK_NO_FOLLOW=1. Could you try those two (in hookshot_env.txt next to hookshot.exe, one per line)?

Yes i already tried

RX_VK_OOT_VISUAL=0 RX_VK_NO_FOLLOW=1.
(in hookshot_env.txt)

so rdna1 is not supported?

> Thanks for the detailed log. The RX 5700 XT (RDNA1) has no mesh shader support in Vulkan (your log says 'mesh shaders no'), so the ~100 programs that fail to translate are the mesh-shader ones and that scenery is skipped. The black screen after the Deku Tree is a separate problem, probably the same one as #127, where an RX 9060 XT got in game with `RX_VK_OOT_VISUAL=0` and `RX_VK_NO_FOLLOW=1`. Could you try those two (in `hookshot_env.txt` next to `hookshot.exe`, one per line)? Yes i already tried `RX_VK_OOT_VISUAL=0` `RX_VK_NO_FOLLOW=1`. (in `hookshot_env.txt`) so rdna1 is not supported?
Ikusan193 commented 2026-11-07 20:23:06 +00:00 (Migrated from github.com)

it's possible the problem on the RX 6000 series GPUs is a different one, as they have "mesh shaders yes", and seem to get stuck at different point, with the RX 6000 hanging before tree scene, while this issue with RX 5700 XT is after the tree scene

log using https://github.com/NotRexed/Hookshot/releases/tag/foliage-linux-updater
hookshot_log.txt

it's possible the problem on the RX 6000 series GPUs is a different one, as they have "mesh shaders yes", and seem to get stuck at different point, with the RX 6000 hanging before tree scene, while this issue with RX 5700 XT is after the tree scene log using https://github.com/NotRexed/Hookshot/releases/tag/foliage-linux-updater [hookshot_log.txt](https://github.com/user-attachments/files/34528032/hookshot_log.txt)
NotRexed commented 2026-11-09 05:44:38 +00:00 (Migrated from github.com)

Tracked in #1001, follow there. That issue collects every report of GPUs without mesh shaders, and this one is linked from it with its GPU, version and log details. v2.0.6 brings back the fallback for GPUs without mesh shaders (PR #779). It is untested on these cards, so a v2.0.6 result from you would help. If it still happens on v2.0.6 (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.6; Update next to Play in the launcher), please add a comment there with your hookshot_log.txt.

Tracked in #1001, follow there. That issue collects every report of GPUs without mesh shaders, and this one is linked from it with its GPU, version and log details. v2.0.6 brings back the fallback for GPUs without mesh shaders (PR #779). It is untested on these cards, so a v2.0.6 result from you would help. If it still happens on v2.0.6 (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.6; Update next to Play in the launcher), please add a comment there with your `hookshot_log.txt`.
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#148
No description provided.