[Tracking] Floating trees, missing mountains and vanishing near vegetation #994

Closed
opened 2026-11-09 05:38:38 +00:00 by NotRexed · 26 comments
NotRexed commented 2026-11-09 05:38:38 +00:00 (Migrated from github.com)

This issue collects every open report of floating trees and missing or vanishing vegetation, so there is one place to follow it. The individual reports were closed pointing here; their logs, screenshots and discussion stay in each linked issue.

Summary

  • Floating trees: trees stand in the air because the hillside or mountain under them is not drawn (Kakariko, Hyrule Castle grounds, Hyrule Field, Death Mountain, Kokiri hills).
  • Near vegetation vanishes: bushes, grass, leaves and canopy fade out in a sphere around Link while far ones are drawn.
  • Wrong distant vegetation: flat cyan or white silhouettes, grey bushes and planters, mirror-like ferns.

All vendors are affected. The v2.0.6 release notes list floating trees and missing near vegetation as a known issue; it is not fixed yet. The bright red/green plant stems are a different bug, fixed in v2.0.6 (PR #759).

Affected GPUs and versions

  • GPUs: all vendors: RTX 2080S to RTX 5080, RX 6650 XT to RX 9070 XT, NVIDIA on Linux.
  • Versions: v2.0.2-v2.0.5, plus older reports.

Evidence from the logs

  • #422 (Nitnek's trace): the mountain is missing already in the depth prepass. The culling indirect mesh pairs cb71f79f/68642bb8 (args from 4247f1b4) and c36a4f3f/9d8403e2 (102f5b0a slot +0x40) get 0 groups. It is not unbound memory.
  • #729: floating trees were gone in v2.0.3 thanks to Fritchii's storage-buffer pass, and came back in v2.0.4, where that pass is off (it darkened Link).
  • #667 (BernabeCR93): the far-foliage programs 95db514a/d76e73cf bind a float as a storage-buffer address (c4+0x40, c5+0x60).
  • #763 (KrysGG): depth 3bde059f and colour d4abbcb4 get identical inputs, yet the colour lands elsewhere. MMajor87's open PR #761 fixes the flat or wrong near plants on v2.0.5; it is not merged or released.

Workarounds

None known in the released builds.

Reports merged here (18 issues, about 42 people)

Issue Title People GPU Version Key detail
#352 Minor: Floating trees in Kakariko Village 7 RTX 3050 Laptop, RTX 2080S, RTX 4070 TiS, RTX 4070 v2.0.5 Floating trees in Kakariko, Hyrule Castle area and Hyrule Field (v2.0.5,); Death Mountain trees drawn without the mountain (#422); dups #930, #942 closed; v2.0.6 lists i…
#667 foliage is still disapearing, some flower and branches glow 5 RTX 3060 Ti, RX 6650 XT, ? v2.0.2 Foliage vanishes in a sphere around Link (leaves/canopy and shadows), ferns/far trees drawn like mirrors; BernabeCR93: far-foliage programs 95db514a/d76e73cf bind a floa…
#763 Visual regressions after latest update: foliage LOD pop-out, crushed… 5 RTX 5080, RTX 3070, RTX 4080 v2.0.5 KrysGG: depth 3bde059f and colour d4abbcb4 get identical inputs yet colour lands elsewhere (pointer-chased loads, 0 misses); MMajor87: PR #761 fixes the flat/wrong near…
#422 Montains not rendering and some light flashings 4 NVIDIA (CachyOS), RTX 3070 v2.0.x main Mountains not drawn -> floating trees (same as #352). Nitnek trace: mountain missing in depth prepass; culling indirect mesh pairs cb71f79f/68642bb8 (args from 4247f1b4)…
#696 [AMD RX 9070 XT] Bushes and grass disappear up close (mesh stage), vi… 4 RX 9070 XT, RX 6650 XT v2.0.2 Bushes/grass vanish up close on AMD; glowing stems from colour pass 89ca750f (see #659)
#11 Missing textures in Hyrule Field/Kokiri Forest/Water Textures 2 RTX 4060 foliage-linux-updater Missing grass/ferns Hyrule Field + dark water; reporter said worse on foliage-linux-updater; contributor saw grass drawn on 4cfa08f (RTX 4080, reporter's save)
#203 Hyrule Castle courtyard: the planter by the gate draws as a grey patt… 2 RX 9060 XT, RTX 2080S low-vram Hyrule Castle courtyard planter/bushes grey without colour, banner black; NVIDIA too (low-vram)
#729 Misplaced Models 2 RTX 5070 Ti, RTX 5080 v2.0.4 Floating trees (Hyrule Castle garden, Kokiri hills): fixed in v2.0.3 by Fritchii's storage buffer pass, back in v2.0.4 where it is off (cabb432, dark Link regression); s…
#820 RAM and VRAM usage are very high; there are also trees floating. 2 RTX 5070 v2.0.5 High RAM/VRAM and floating trees at Hyrule Castle (milk NPC) on v2.0.5 (5 logs, video)
#480 Nvidia 5090 Linux CachyOS Report 1 RTX 5090 (CachyOS) no-visual-studio Missing fog/leaves, bushes vanish near, striped shadows in Field, graphics break up at Hyrule Castle
#590 Distant foliage/bushes vanish when approaching 1 RX 9070 low-vram Bushes/shrubs fade out as the camera approaches (split from #575); v2.0.3 fixed then v2.0.4 took the extra plants back; #35 late comment same
#668 Bushes turn gray 1 ? v2.0.0 Bushes turn grey/green by angle and distance, a texture not loading, shiny flowers (log, screenshots)
#781 Mouse,Texture & FPS Drops 1 RTX 3070 v2.0.3 Hyrule Field small vegetation not drawn, Castle Town 7-15 fps, Native mouse camera not working in houses
#790 Missing textures 1 RX 9070 XT v2.0.3 Missing vegetation in Kokiri on v2.0.3, honest-eta was fine (5 logs); asks how to build older releases (answered: CONTRIBUTING.md)
#794 Floating Trees 1 RTX 4070 Super v2.0.5 Floating trees in and outside Kakariko, still on v2.0.5 (same as #352)
#811 Vegetation textures not loading correctly and foliage flickering 1 RX 9060 XT v2.0.5 Vegetation textures wrong, bright green/white flashing foliage on v2.0.5 (log)
#814 Subject: Vegetation LOD rendering issue – AMD Radeon RX 6750 XT 1 RX 6750 XT v2.0.5 Distant vegetation cyan/white flat silhouettes, correct up close (Kakariko)
#881 **Update: v2.0.5 on AMD RX 9070 XT. Image fixed, foliage streaks rema… 1 RX 9070 XT v2.0.5 v2.0.5 sharper than v2.0.3 and green/red streaks mostly gone; thin cyan streaks on ferns and branches remain

Adding a report

Please update to v2.0.6 first (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.6; Update next to Play in the launcher). Please add: the place (a screenshot helps), GPU, version, and hookshot_log.txt.

All tracking issues

  • #993 Garbled / rainbow textures that get worse over play time (VRAM over budget, mostly 4-8 GB cards)
  • #994 Floating trees, missing mountains and vanishing near vegetation
  • #995 Low FPS with low GPU usage (CPU-bound), FPS drops in Castle Town / Hyrule Field, shader stutter
  • #996 AMD on Windows: driver crash, device lost or freeze (RX 5000-9000, Deku Tree / after cutscenes)
  • #997 AMD handhelds and APUs (ROG Ally / Ally X, Legion Go, Radeon 780M/860M/890M): black screen, device lost, reboot
  • #998 Black screen with audio after the intro / at the Deku Tree cutscene
  • #999 Intel Arc and Core Ultra iGPUs: device lost, black screen after the intro, Linux ANV crashes
  • #1000 Linux and Steam Deck: GPU hangs, crashes, low FPS and build failures
  • #1001 GPUs without mesh shaders (GTX 9xx/10xx, RX 400/500/5000, Iris Xe/UHD): v2.0.6 fallback reports
  • #1002 Invisible or missing objects, walls and effects
  • #1003 Antivirus false positives on HookshotBuilder.exe (Defender Trojan:Script/Wacatac.H!ml)
  • #1004 Lighting: overexposure, over-bright bloom, crushed or black shadows, black faces
  • #1005 Flicker and flashing: brightness pulses, one-frame flashes, doubled image with frame pacing
  • #1006 AMD rendering: white silhouettes, block squares / grid lines, no anti-aliasing (networks in software)
  • #1007 Feature requests (collected)
This issue collects every open report of floating trees and missing or vanishing vegetation, so there is one place to follow it. The individual reports were closed pointing here; their logs, screenshots and discussion stay in each linked issue. ## Summary - **Floating trees:** trees stand in the air because the hillside or mountain under them is not drawn (Kakariko, Hyrule Castle grounds, Hyrule Field, Death Mountain, Kokiri hills). - **Near vegetation vanishes:** bushes, grass, leaves and canopy fade out in a sphere around Link while far ones are drawn. - **Wrong distant vegetation:** flat cyan or white silhouettes, grey bushes and planters, mirror-like ferns. All vendors are affected. The v2.0.6 release notes list floating trees and missing near vegetation as a known issue; it is **not fixed yet**. The bright red/green plant stems are a different bug, fixed in v2.0.6 (PR #759). ## Affected GPUs and versions - **GPUs:** all vendors: RTX 2080S to RTX 5080, RX 6650 XT to RX 9070 XT, NVIDIA on Linux. - **Versions:** v2.0.2-v2.0.5, plus older reports. ## Evidence from the logs - **#422** (Nitnek's trace): the mountain is missing already in the depth prepass. The culling indirect mesh pairs cb71f79f/68642bb8 (args from 4247f1b4) and c36a4f3f/9d8403e2 (102f5b0a slot +0x40) get 0 groups. It is not unbound memory. - **#729:** floating trees were gone in v2.0.3 thanks to Fritchii's storage-buffer pass, and came back in v2.0.4, where that pass is off (it darkened Link). - **#667** (BernabeCR93): the far-foliage programs 95db514a/d76e73cf bind a float as a storage-buffer address (c4+0x40, c5+0x60). - **#763** (KrysGG): depth 3bde059f and colour d4abbcb4 get identical inputs, yet the colour lands elsewhere. MMajor87's open PR #761 fixes the flat or wrong near plants on v2.0.5; it is not merged or released. ## Workarounds None known in the released builds. ## Reports merged here (18 issues, about 42 people) | Issue | Title | People | GPU | Version | Key detail | |---|---|---|---|---|---| | #352 | Minor: Floating trees in Kakariko Village | 7 | RTX 3050 Laptop, RTX 2080S, RTX 4070 TiS, RTX 4070 | v2.0.5 | Floating trees in Kakariko, Hyrule Castle area and Hyrule Field (v2.0.5,); Death Mountain trees drawn without the mountain (#422); dups #930, #942 closed; v2.0.6 lists i… | | #667 | foliage is still disapearing, some flower and branches glow | 5 | RTX 3060 Ti, RX 6650 XT, ? | v2.0.2 | Foliage vanishes in a sphere around Link (leaves/canopy and shadows), ferns/far trees drawn like mirrors; BernabeCR93: far-foliage programs 95db514a/d76e73cf bind a floa… | | #763 | Visual regressions after latest update: foliage LOD pop-out, crushed… | 5 | RTX 5080, RTX 3070, RTX 4080 | v2.0.5 | KrysGG: depth 3bde059f and colour d4abbcb4 get identical inputs yet colour lands elsewhere (pointer-chased loads, 0 misses); MMajor87: PR #761 fixes the flat/wrong near… | | #422 | Montains not rendering and some light flashings | 4 | NVIDIA (CachyOS), RTX 3070 | v2.0.x main | Mountains not drawn -> floating trees (same as #352). Nitnek trace: mountain missing in depth prepass; culling indirect mesh pairs cb71f79f/68642bb8 (args from 4247f1b4)… | | #696 | [AMD RX 9070 XT] Bushes and grass disappear up close (mesh stage), vi… | 4 | RX 9070 XT, RX 6650 XT | v2.0.2 | Bushes/grass vanish up close on AMD; glowing stems from colour pass 89ca750f (see #659) | | #11 | Missing textures in Hyrule Field/Kokiri Forest/Water Textures | 2 | RTX 4060 | foliage-linux-updater | Missing grass/ferns Hyrule Field + dark water; reporter said worse on foliage-linux-updater; contributor saw grass drawn on 4cfa08f (RTX 4080, reporter's save) | | #203 | Hyrule Castle courtyard: the planter by the gate draws as a grey patt… | 2 | RX 9060 XT, RTX 2080S | low-vram | Hyrule Castle courtyard planter/bushes grey without colour, banner black; NVIDIA too (low-vram) | | #729 | Misplaced Models | 2 | RTX 5070 Ti, RTX 5080 | v2.0.4 | Floating trees (Hyrule Castle garden, Kokiri hills): fixed in v2.0.3 by Fritchii's storage buffer pass, back in v2.0.4 where it is off (cabb432, dark Link regression); s… | | #820 | RAM and VRAM usage are very high; there are also trees floating. | 2 | RTX 5070 | v2.0.5 | High RAM/VRAM and floating trees at Hyrule Castle (milk NPC) on v2.0.5 (5 logs, video) | | #480 | Nvidia 5090 Linux CachyOS Report | 1 | RTX 5090 (CachyOS) | no-visual-studio | Missing fog/leaves, bushes vanish near, striped shadows in Field, graphics break up at Hyrule Castle | | #590 | Distant foliage/bushes vanish when approaching | 1 | RX 9070 | low-vram | Bushes/shrubs fade out as the camera approaches (split from #575); v2.0.3 fixed then v2.0.4 took the extra plants back; #35 late comment same | | #668 | Bushes turn gray | 1 | ? | v2.0.0 | Bushes turn grey/green by angle and distance, a texture not loading, shiny flowers (log, screenshots) | | #781 | Mouse,Texture & FPS Drops | 1 | RTX 3070 | v2.0.3 | Hyrule Field small vegetation not drawn, Castle Town 7-15 fps, Native mouse camera not working in houses | | #790 | Missing textures | 1 | RX 9070 XT | v2.0.3 | Missing vegetation in Kokiri on v2.0.3, honest-eta was fine (5 logs); asks how to build older releases (answered: CONTRIBUTING.md) | | #794 | Floating Trees | 1 | RTX 4070 Super | v2.0.5 | Floating trees in and outside Kakariko, still on v2.0.5 (same as #352) | | #811 | Vegetation textures not loading correctly and foliage flickering | 1 | RX 9060 XT | v2.0.5 | Vegetation textures wrong, bright green/white flashing foliage on v2.0.5 (log) | | #814 | **Subject: Vegetation LOD rendering issue – AMD Radeon RX 6750 XT** | 1 | RX 6750 XT | v2.0.5 | Distant vegetation cyan/white flat silhouettes, correct up close (Kakariko) | | #881 | **Update: v2.0.5 on AMD RX 9070 XT. Image fixed, foliage streaks rema… | 1 | RX 9070 XT | v2.0.5 | v2.0.5 sharper than v2.0.3 and green/red streaks mostly gone; thin cyan streaks on ferns and branches remain | ## Adding a report Please update to v2.0.6 first (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.6; Update next to Play in the launcher). Please add: the place (a screenshot helps), GPU, version, and `hookshot_log.txt`. ## All tracking issues - #993 Garbled / rainbow textures that get worse over play time (VRAM over budget, mostly 4-8 GB cards) - #994 Floating trees, missing mountains and vanishing near vegetation - #995 Low FPS with low GPU usage (CPU-bound), FPS drops in Castle Town / Hyrule Field, shader stutter - #996 AMD on Windows: driver crash, device lost or freeze (RX 5000-9000, Deku Tree / after cutscenes) - #997 AMD handhelds and APUs (ROG Ally / Ally X, Legion Go, Radeon 780M/860M/890M): black screen, device lost, reboot - #998 Black screen with audio after the intro / at the Deku Tree cutscene - #999 Intel Arc and Core Ultra iGPUs: device lost, black screen after the intro, Linux ANV crashes - #1000 Linux and Steam Deck: GPU hangs, crashes, low FPS and build failures - #1001 GPUs without mesh shaders (GTX 9xx/10xx, RX 400/500/5000, Iris Xe/UHD): v2.0.6 fallback reports - #1002 Invisible or missing objects, walls and effects - #1003 Antivirus false positives on HookshotBuilder.exe (Defender Trojan:Script/Wacatac.H!ml) - #1004 Lighting: overexposure, over-bright bloom, crushed or black shadows, black faces - #1005 Flicker and flashing: brightness pulses, one-frame flashes, doubled image with frame pacing - #1006 AMD rendering: white silhouettes, block squares / grid lines, no anti-aliasing (networks in software) - #1007 Feature requests (collected)
g1i7ch commented 2026-11-09 07:31:46 +00:00 (Migrated from github.com)

A character, not vegetation: King Zora draws flat white at a distance and fixes itself one body part at a time as Link approaches

  • Version: Hookshot v2.0.6 (source 6b1dd5d6), Linux AppImage, built with --cli from a complete .nup (23.86 GiB).
  • System: Linux 7.3.3 (CachyOS), NVIDIA RTX 3090 Ti, driver 620.70.06, Vulkan 1.4, mesh shaders on; i9-13900K, 64 GB RAM.
  • Settings: in-game defaults (resolution Auto, frame generation Off, frame pacing Off, upscaling Off). hookshot_env.txt only has HOS_PIN=Presentation=300,*=FCFF (CPU thread pinning).
  • Where: Zora's Domain, walking up to King Zora.
  • What: from a distance his whole model was bright white with no colour at all. Walking closer, the limbs, head and body each switched to their normal look one at a time, in no fixed order, each at its own distance; once near, everything was correct. It looks like the far-distance variant of each part's material drawing blank, the same class as the colourless hedge in #203 and the white/cyan far silhouettes listed above, but on a character.
  • Log: nothing visible around it. This run: sampled as the dummy 0 times, 0 draws skipped or left out, no unmapped reads, 0 programs failing to lower. VRAM 8.2 GB used of 21.5 GB allowed, textures 5.5 GB of the 6.1 GB budget, so not the over-budget case of #993. Full hookshot_log.txt (3.5 MB) attached. No screenshot, sorry; I can go back and take one if it helps.
**A character, not vegetation: King Zora draws flat white at a distance and fixes itself one body part at a time as Link approaches** - **Version:** Hookshot v2.0.6 (source `6b1dd5d6`), Linux AppImage, built with `--cli` from a complete `.nup` (23.86 GiB). - **System:** Linux 7.3.3 (CachyOS), NVIDIA RTX 3090 Ti, driver 620.70.06, Vulkan 1.4, mesh shaders on; i9-13900K, 64 GB RAM. - **Settings:** in-game defaults (resolution Auto, frame generation Off, frame pacing Off, upscaling Off). `hookshot_env.txt` only has `HOS_PIN=Presentation=300,*=FCFF` (CPU thread pinning). - **Where:** Zora's Domain, walking up to King Zora. - **What:** from a distance his whole model was bright white with no colour at all. Walking closer, the limbs, head and body each switched to their normal look one at a time, in no fixed order, each at its own distance; once near, everything was correct. It looks like the far-distance variant of each part's material drawing blank, the same class as the colourless hedge in #203 and the white/cyan far silhouettes listed above, but on a character. - **Log:** nothing visible around it. This run: `sampled as the dummy` 0 times, 0 draws skipped or left out, no unmapped reads, 0 programs failing to lower. VRAM 8.2 GB used of 21.5 GB allowed, textures 5.5 GB of the 6.1 GB budget, so not the over-budget case of #993. Full `hookshot_log.txt` (3.5 MB) attached. No screenshot, sorry; I can go back and take one if it helps.
KrysGG commented 2026-11-09 08:23:22 +00:00 (Migrated from github.com)

v2.0.6, side by side with a real Switch 2: Hyrule Field's hills, plateau and the Kakariko windmill are missing, the trees on them stay

  • Version: Hookshot v2.0.6 built from source (Windows), plus the DLSS PR #850 on top (the rest is v2.0.6 as released).
  • System: Windows 11, NVIDIA RTX 5080, driver 621.14; i9-13900K.
  • Where: Hyrule Field (the whole field looks like this), looking towards Death Mountain.
  • Comparison: left is a real Switch 2 (captured), right is Hookshot, same spot.

What's different:

  • On the Switch 2 the middle distance is open: rolling hills, the cliffs with the waterfall, and the big flat-topped plateau. In Hookshot those hills aren't drawn, and the trees that stand on them make a dense wall of conifers across the view. Same pattern as the floating trees above, seen from the field.
  • The Kakariko windmill (left of the Switch 2 picture) doesn't show in Hookshot.
  • Death Mountain itself is drawn in both.
  • Smaller: the nearest lupine in Hookshot has pale grey-white leaves and looks soft; on the Switch 2 the near lupines are sharp and green.

Log:
hookshot_log.txt

Screenshots attached.

Switch 2 (Left) ------------ Hookshot (Right)
Image

Image
**v2.0.6, side by side with a real Switch 2: Hyrule Field's hills, plateau and the Kakariko windmill are missing, the trees on them stay** - **Version:** Hookshot v2.0.6 built from source (Windows), plus the DLSS PR #850 on top (the rest is v2.0.6 as released). - **System:** Windows 11, NVIDIA RTX 5080, driver 621.14; i9-13900K. - **Where:** Hyrule Field (the whole field looks like this), looking towards Death Mountain. - **Comparison:** left is a real Switch 2 (captured), right is Hookshot, same spot. What's different: - On the Switch 2 the middle distance is open: rolling hills, the cliffs with the waterfall, and the big flat-topped plateau. In Hookshot those hills aren't drawn, and the trees that stand on them make a dense wall of conifers across the view. Same pattern as the floating trees above, seen from the field. - The Kakariko windmill (left of the Switch 2 picture) doesn't show in Hookshot. - Death Mountain itself is drawn in both. - Smaller: the nearest lupine in Hookshot has pale grey-white leaves and looks soft; on the Switch 2 the near lupines are sharp and green. Log: [hookshot_log.txt](https://github.com/user-attachments/files/34569827/hookshot_log.txt) Screenshots attached. Switch 2 (Left) ------------ Hookshot (Right) <img width="2000" height="593" alt="Image" src="https://github.com/user-attachments/assets/9b31106b-6237-466c-9c18-eac14ef0cd08" /> <img width="2000" height="596" alt="Image" src="https://github.com/user-attachments/assets/6f420f53-b001-48eb-963c-b077691730d5" />
Nitnek commented 2026-11-09 15:10:18 +00:00 (Migrated from github.com)

Far terrain missing behind Hyrule Castle (floating trees): what the storage buffer pass changes, v2.0.8-rc.3 / rc.5, RTX 3070 (Windows)

The scene can be reproduced exactly: the Hyrule Castle autosave, then the camera turned left toward the cliff. A wall of conifers stands in the sky, and the hills under them are missing. Every run below uses RX_VK_DRAW_STATS on the same frame.

The chain, as in my #422 trace:

  • b612216258832b9c (94 groups) writes the dispatch arguments of the terrain culling.
  • List A (@...960000: 44511d69, 6344c53d, cb2e06dd) is filled.
  • List B (@...99e000: 4247f1b4, abccf81b, f0fed2bb) is 0 groups.
  • The 6 far-terrain mesh pairs (68642bb8/cb71f79f, e28434e1/6b4dea60, 9d8403e2/c36a4f3f) get no work. This includes e28434e1/6b4dea60, whose arguments come from 44511d69, which does run (63 groups).
Build / switches List B Far terrain Trees Notes
rc.3, defaults 0 missing floating same with an empty hookshot_env.txt
rc.5, defaults 0 missing floating
rc.3 + #1133 0 missing floating
port for b6122162 only (local test switch) 0 missing floating the culling program's own bindings are not the cause
port for every compute program 0 missing floating no device lost
EDEN_NX2_GM_SPLIT=1 0 missing gone tree task programs 3cb76827/4f0c0b40 get 247 groups and emit 0 meshes: hides the trees, does not bring the hills back
port for the fragment stage only 0 here, 1 group from another camera angle missing floating dark lighting, as in v2.0.3
EDEN_NX2_GM_LEGACY=0 (all stages) n/a n/a n/a device lost while loading the save, last checkpoint before 68642bb8

So on this card no setting of the storage buffer pass brings the far terrain back. The split only removes the trees standing on it.

b6122162's second texture (c0+0xa8) is slot 0x102 here: an RGBA8 4x4 that the game creates once at start-up (frame 1234), uploaded once and never written again. It looks like an engine default texture. In my earlier capture from Hyrule Field, that sampler had a 1024² BC1 forest mask instead.

No game data attached. Logs on request.

**Far terrain missing behind Hyrule Castle (floating trees): what the storage buffer pass changes, v2.0.8-rc.3 / rc.5, RTX 3070 (Windows)** The scene can be reproduced exactly: the Hyrule Castle autosave, then the camera turned left toward the cliff. A wall of conifers stands in the sky, and the hills under them are missing. Every run below uses `RX_VK_DRAW_STATS` on the same frame. The chain, as in my #422 trace: - `b612216258832b9c` (94 groups) writes the dispatch arguments of the terrain culling. - List A (`@...960000`: `44511d69`, `6344c53d`, `cb2e06dd`) is filled. - List B (`@...99e000`: `4247f1b4`, `abccf81b`, `f0fed2bb`) is 0 groups. - The 6 far-terrain mesh pairs (`68642bb8`/`cb71f79f`, `e28434e1`/`6b4dea60`, `9d8403e2`/`c36a4f3f`) get no work. This includes `e28434e1`/`6b4dea60`, whose arguments come from `44511d69`, which does run (63 groups). | Build / switches | List B | Far terrain | Trees | Notes | |---|---|---|---|---| | rc.3, defaults | 0 | missing | floating | same with an empty `hookshot_env.txt` | | rc.5, defaults | 0 | missing | floating | | | rc.3 + #1133 | 0 | missing | floating | | | port for `b6122162` only (local test switch) | 0 | missing | floating | the culling program's own bindings are not the cause | | port for every compute program | 0 | missing | floating | no device lost | | `EDEN_NX2_GM_SPLIT=1` | 0 | missing | **gone** | tree task programs `3cb76827`/`4f0c0b40` get 247 groups and emit 0 meshes: hides the trees, does not bring the hills back | | port for the fragment stage only | 0 here, 1 group from another camera angle | missing | floating | dark lighting, as in v2.0.3 | | `EDEN_NX2_GM_LEGACY=0` (all stages) | n/a | n/a | n/a | device lost while loading the save, last checkpoint before `68642bb8` | So on this card no setting of the storage buffer pass brings the far terrain back. The split only removes the trees standing on it. `b6122162`'s second texture (`c0+0xa8`) is slot `0x102` here: an RGBA8 4x4 that the game creates once at start-up (frame 1234), uploaded once and never written again. It looks like an engine default texture. In my earlier capture from Hyrule Field, that sampler had a 1024² BC1 forest mask instead. No game data attached. Logs on request.
blushOFF commented 2026-11-09 15:28:47 +00:00 (Migrated from github.com)

Adding to @Nitnek's analysis from another scene, so nobody repeats these: Kakariko's entrance with the camera turned
toward Hyrule Field, RTX 3070 8 GB, Windows 11, v2.0.8-rc.1 (8b2e1d3b) plus local changes, frames captured every 30
presents through a scripted camera turn. Same conclusion: no setting of the storage buffer pass brings the hills back.
(The fps are from single runs, so they are only indicative.)

Run Hills Trees Near cliffs Kakariko fps
defaults missing floating whole ~38
EDEN_NX2_GM_SPLIT=1, warm program cache missing gone holes through them, dark 6.8 (second pass)
local switch: the port for the geometry stages only (fragment and compute as before) missing gone holes, dark 45 warm; 5.9 on the first pass after a new build
local switch: under the default tracking, a task/mesh access whose c0 word is not a mapped pointer left to the run-time search missing gone holes ~37
RX_VK_SSBO_STRETCH=1 missing floating whole 31
RX_VK_ROBUST=0 missing floating whole 46
  • The binding offsets are right. The far-terrain mesh programs (cb71f79f, 9d8403e2, 68642bb8, 6b4dea60, 739acd67,
    d905f52b, c36a4f3f) read mesh storage buffer slots 0-3 (c0+0x770..0x7a0, the mesh table in vk_bank.cpp's
    kSsboTable), and the default tracking binds exactly those.
  • The port answers differently depending on when it translates. With a local diagnostic that runs both trackings on each
    program, the port leaves all 19 accesses of cb71f79f to the run-time search when the program is prepared at start-up
    (nothing mapped yet), and agrees with the default tracking (0 differ) when the same program is translated in play. That
    is why its prepared programs are translated again in play, and why the first pass after a new build crawls.
  • The buffer sizes are not it either: stretching read-only buffers to their pool's end, or turning bounds checks off,
    changes nothing at that spot. That fits the far-terrain mesh programs getting no work at all, as in Nitnek's trace.

No game data attached.

Adding to @Nitnek's analysis from another scene, so nobody repeats these: Kakariko's entrance with the camera turned toward Hyrule Field, RTX 3070 8 GB, Windows 11, v2.0.8-rc.1 (8b2e1d3b) plus local changes, frames captured every 30 presents through a scripted camera turn. Same conclusion: no setting of the storage buffer pass brings the hills back. (The fps are from single runs, so they are only indicative.) | Run | Hills | Trees | Near cliffs | Kakariko fps | |---|---|---|---|---| | defaults | missing | floating | whole | ~38 | | `EDEN_NX2_GM_SPLIT=1`, warm program cache | missing | gone | holes through them, dark | 6.8 (second pass) | | local switch: the port for the geometry stages only (fragment and compute as before) | missing | gone | holes, dark | 45 warm; 5.9 on the first pass after a new build | | local switch: under the default tracking, a task/mesh access whose c0 word is not a mapped pointer left to the run-time search | missing | gone | holes | ~37 | | `RX_VK_SSBO_STRETCH=1` | missing | floating | whole | 31 | | `RX_VK_ROBUST=0` | missing | floating | whole | 46 | - The binding offsets are right. The far-terrain mesh programs (`cb71f79f`, `9d8403e2`, `68642bb8`, `6b4dea60`, `739acd67`, `d905f52b`, `c36a4f3f`) read mesh storage buffer slots 0-3 (`c0+0x770..0x7a0`, the mesh table in `vk_bank.cpp`'s `kSsboTable`), and the default tracking binds exactly those. - The port answers differently depending on when it translates. With a local diagnostic that runs both trackings on each program, the port leaves all 19 accesses of `cb71f79f` to the run-time search when the program is prepared at start-up (nothing mapped yet), and agrees with the default tracking (0 differ) when the same program is translated in play. That is why its prepared programs are translated again in play, and why the first pass after a new build crawls. - The buffer sizes are not it either: stretching read-only buffers to their pool's end, or turning bounds checks off, changes nothing at that spot. That fits the far-terrain mesh programs getting no work at all, as in Nitnek's trace. No game data attached.
renannpaiva commented 2026-11-09 15:40:27 +00:00 (Migrated from github.com)

hookshot_log.1.txt
hookshot_log.2.txt
hookshot_log.3.txt
hookshot_log.4.txt
hookshot_log.txt
hookshot_version.txt

v2.0.8

It keeps crashing; it opened once, but then closed the second time I tried. My resolution—1920x1080p—isn't showing up.

RTX 5070 9800x3d 32gb

@NotRexed

[hookshot_log.1.txt](https://github.com/user-attachments/files/34586500/hookshot_log.1.txt) [hookshot_log.2.txt](https://github.com/user-attachments/files/34586502/hookshot_log.2.txt) [hookshot_log.3.txt](https://github.com/user-attachments/files/34586501/hookshot_log.3.txt) [hookshot_log.4.txt](https://github.com/user-attachments/files/34586505/hookshot_log.4.txt) [hookshot_log.txt](https://github.com/user-attachments/files/34586504/hookshot_log.txt) [hookshot_version.txt](https://github.com/user-attachments/files/34586503/hookshot_version.txt) v2.0.8 It keeps crashing; it opened once, but then closed the second time I tried. My resolution—1920x1080p—isn't showing up. RTX 5070 9800x3d 32gb @NotRexed
t0masz407 commented 2026-11-09 16:39:24 +00:00 (Migrated from github.com)

The RX_VK_PARALLEL part of this has a cause and a fix: #1184

With RX_VK_PARALLEL set, houses, big rocks and bushes go missing near Link: in Kokiri Forest, for example, the tree over the shop. That is a different bug from the far-terrain cases above. Serial replay (RX_VK_PARALLEL=0) draws them.

Cause: a pool's VRAM mirror is made at its first binding. Its fill went into the uploads of whichever segment's worker bound the pool first, but the page table pointed at the mirror at once. An earlier segment, submitted first, read the mirror empty. That is also why such an object may come back after a few minutes of play.

RX 7900 XTX, RADV, Linux, v2.0.7 plus #1069 and #1108, scripted camera turns in front of the Kokiri shop:

  • RX_VK_PARALLEL=4 was missing the shop tree; with the fix, 8 of 8 screenshots were complete.
  • RX_VK_PARALLEL_SEG=40 gave torn geometry; with the fix, 8 of 8 were complete.

If you see missing objects and have RX_VK_PARALLEL set, try RX_VK_PARALLEL=0 (or RX_VK_MIRROR_DEFER=1) to tell which bug it is.

**The `RX_VK_PARALLEL` part of this has a cause and a fix: #1184** With `RX_VK_PARALLEL` set, houses, big rocks and bushes go missing near Link: in Kokiri Forest, for example, the tree over the shop. That is a different bug from the far-terrain cases above. Serial replay (`RX_VK_PARALLEL=0`) draws them. Cause: a pool's VRAM mirror is made at its first binding. Its fill went into the uploads of whichever segment's worker bound the pool first, but the page table pointed at the mirror at once. An earlier segment, submitted first, read the mirror empty. That is also why such an object may come back after a few minutes of play. RX 7900 XTX, RADV, Linux, v2.0.7 plus #1069 and #1108, scripted camera turns in front of the Kokiri shop: - `RX_VK_PARALLEL=4` was missing the shop tree; with the fix, 8 of 8 screenshots were complete. - `RX_VK_PARALLEL_SEG=40` gave torn geometry; with the fix, 8 of 8 were complete. If you see missing objects and have `RX_VK_PARALLEL` set, try `RX_VK_PARALLEL=0` (or `RX_VK_MIRROR_DEFER=1`) to tell which bug it is.
blushOFF commented 2026-11-09 16:55:23 +00:00 (Migrated from github.com)

The far terrain goes missing on the CPU side: the culling chain is given nothing to draw (RTX 3070, Windows, v2.0.8
plus local diagnostics; Kakariko's entrance with the camera held toward Hyrule Field)

Following @Nitnek's chain (b6122162 → lists A/B → the far-terrain mesh pairs), the GPU part seems to do what it is told.
What it is told is empty:

  • b6122162 splits its warps over categories by cumulative counts it reads from its first uniform buffer (c3,
    +0x660..+0x6e0 in steps of 16, the total at +0x6f0). As the dispatch reads them (the RX_VK_DRAW_STATS dump of
    that buffer, with the stream's inline updates): 0, 0, 43, 62, 131, 131, 168, 235, 274, total 281. Categories 0, 1
    and 5 get no warps at all. List A's group counts match two of the others (43 warps → 42 groups, 19 → 19); list B gets
    1, 1 and 0 groups. These counts are written by the game's CPU code, so the culling, the lists and the mesh pairs only
    follow them.
  • With HOS_FS_TRACE=1, in that scene the game opens TerrainArc for KakarikoVillage_01 (its root tile and 19
    level-2 tiles) and KakarikoVillage_02, but never HyruleField_02: no .tscb, no tile. It does load Hyrule Field's
    tree textures (the spruces) and its environment parameters. The floating trees look like Hyrule Field's trees standing
    on terrain that is never loaded.
  • Ruled out at that spot, besides the storage buffer pass settings above: buffer sizes (RX_VK_SSBO_STRETCH=1,
    RX_VK_ROBUST=0), copying what the culling writes through its bare table entries back to guest memory (a local test
    switch), the game's occlusion queries (HOOKSHOT_OCCLUSION_OFF=1), and #1127 (it does apply there: the culling's pools
    are remade from retired mirrors, but the counts stay the same).

So the question seems to be why the game never loads HyruleField_02's terrain from Kakariko, or more generally what
fills those categories on the console. No game data attached.

**The far terrain goes missing on the CPU side: the culling chain is given nothing to draw** (RTX 3070, Windows, v2.0.8 plus local diagnostics; Kakariko's entrance with the camera held toward Hyrule Field) Following @Nitnek's chain (`b6122162` → lists A/B → the far-terrain mesh pairs), the GPU part seems to do what it is told. What it is told is empty: - `b6122162` splits its warps over categories by cumulative counts it reads from its first uniform buffer (`c3`, `+0x660..+0x6e0` in steps of 16, the total at `+0x6f0`). As the dispatch reads them (the `RX_VK_DRAW_STATS` dump of that buffer, with the stream's inline updates): `0, 0, 43, 62, 131, 131, 168, 235, 274`, total `281`. Categories 0, 1 and 5 get no warps at all. List A's group counts match two of the others (43 warps → 42 groups, 19 → 19); list B gets 1, 1 and 0 groups. These counts are written by the game's CPU code, so the culling, the lists and the mesh pairs only follow them. - With `HOS_FS_TRACE=1`, in that scene the game opens `TerrainArc` for `KakarikoVillage_01` (its root tile and 19 level-2 tiles) and `KakarikoVillage_02`, but never `HyruleField_02`: no `.tscb`, no tile. It does load Hyrule Field's tree textures (the spruces) and its environment parameters. The floating trees look like Hyrule Field's trees standing on terrain that is never loaded. - Ruled out at that spot, besides the storage buffer pass settings above: buffer sizes (`RX_VK_SSBO_STRETCH=1`, `RX_VK_ROBUST=0`), copying what the culling writes through its bare table entries back to guest memory (a local test switch), the game's occlusion queries (`HOOKSHOT_OCCLUSION_OFF=1`), and #1127 (it does apply there: the culling's pools are remade from retired mirrors, but the counts stay the same). So the question seems to be why the game never loads `HyruleField_02`'s terrain from Kakariko, or more generally what fills those categories on the console. No game data attached.
KrysGG commented 2026-11-09 18:08:42 +00:00 (Migrated from github.com)

Follow-up: in Hyrule Field the hills are drawn; one tree program pair draws far too many trees over them

Re-checked on v2.0.10 (built from source, plus #850, RTX 5080): unchanged, same tree wall at the same spot. Headless runs from one save, looking from the field towards Death Mountain.

  • Switching programs off one at a time (RX_VK_SKIP_FILE): skipping only the task+mesh pair 3cb7682790143836 / 4f0c0b40ab3a32cd (indirect args written by b612216258832b9c) removes the wall of trees, and what is left matches the Switch 2 picture: hills, the plateau, the Kakariko windmill. So in this view the terrain is not missing; that one pair draws a dense forest where the console shows a few small trees. (The other vegetation programs, including grass and bushes, don't affect it.)

  • EDEN_NX2_GM_SPLIT=1 and EDEN_NX2_GM_LEGACY=0 also uncover the hills, but they remove every tree and all the grass, so they aren't a fix.

  • No change with: DLSS off, Resolution Auto, Ultrawide off, Handheld profile; RX_VK_FOLLOW_MESH=1; RX_VK_FOLLOW_STORES=1; RX_VK_MESH_ARGS=1 + RX_VK_MESH_FIRST=1 (the tree draw's own first is 0).

  • What the pair reads looks right in game memory: the tree data the task stage reads through its c0+0x670 pointer (a count of 2968 cells, packed cell codes, prefix-sum starts, then triplets), the camera in c3+0x9d0 (near 0.1, far 25000, 16:9, 50° fov) and the frustum planes in c4+0x4c0.

  • One anomaly: with RX_VK_MISS_LOG=1 the task stage of the pair makes about 100k global reads per frame that no buffer holds, about 33 to 36 MB past the tree data. Turned back into indices they are packed cell codes (0x808090, 0x8984B2) where list indices belong. So some task workgroups take stale or garbage entries from the visible list b6122162 writes (whose entries are an index, or an index with bit 31 set).

  • Lichii (Eden-based, 9e9ee6a215 oot/nx2-tip) at the same spot draws it like the Switch 2: sparse small trees, hills, windmill. So the game's data is fine and the difference is in how Hookshot runs b6122162 or the tree task stage. That fits @Nitnek's chain above (b6122162 also fills List B).

  • Ruling out the Ampere -> Maxwell lowering: I dumped the native code of b6122162 (= Lichii's 52612da1509ec28d, byte for byte), the shared task stage d91e4f46becaba90 and the two mesh stages (9d026703ad5da78c, b86297c24c8d8c7a), then lowered each with Hookshot's and Lichii's lower_to_maxwell.h in a small standalone tool. The task stage lowers identically. In the others the differences are equivalent: a UIADD3.X with !PT as its second carry, a wrapped SHF.R.U32.HI as SHR.W vs SHF.R.W, branch offsets, and REGMAP markers vs shadow moves. So the difference is after lowering (the IR passes or what the shaders reach at run time), not in the instruction translation.

  • The two textures b6122162 samples at this spot are 1024² masks, one R8 (five dark blobs) and one grey map shaped like Hyrule Field. Dumped from the GPU, they look correctly decoded, so this spot isn't the 4x4 default-texture case from the castle.

  • Following @blushOFF's CPU-side lead at my spot, which is inside the field: HOS_FS_TRACE=1 shows HyruleField_02.tscb and its tiles (levels 10 and 31-36) open without errors, so here the terrain files do load. b6122162's category starts at c3+0x660..0x6e0 are 0, 0, 134, 292, 485, 505, 782, 944, 1074 (total 1167): category 0 is empty here too, the others are filled.

  • Together with the lowering result and Lichii drawing this spot correctly, that points at the counts the game's CPU code hands the culling (recompiled code, or something the game asks the system, such as a memory budget), not at the GPU translation.

Happy to run more traces if anyone wants a specific switch or dump from this spot.

**Follow-up: in Hyrule Field the hills are drawn; one tree program pair draws far too many trees over them** Re-checked on **v2.0.10** (built from source, plus #850, RTX 5080): unchanged, same tree wall at the same spot. Headless runs from one save, looking from the field towards Death Mountain. - Switching programs off one at a time (`RX_VK_SKIP_FILE`): skipping only the task+mesh pair **`3cb7682790143836` / `4f0c0b40ab3a32cd`** (indirect args written by **`b612216258832b9c`**) removes the wall of trees, and what is left matches the Switch 2 picture: hills, the plateau, the Kakariko windmill. So in this view the terrain is not missing; that one pair draws a dense forest where the console shows a few small trees. (The other vegetation programs, including grass and bushes, don't affect it.) - `EDEN_NX2_GM_SPLIT=1` and `EDEN_NX2_GM_LEGACY=0` also uncover the hills, but they remove every tree and all the grass, so they aren't a fix. - No change with: DLSS off, Resolution Auto, Ultrawide off, Handheld profile; `RX_VK_FOLLOW_MESH=1`; `RX_VK_FOLLOW_STORES=1`; `RX_VK_MESH_ARGS=1` + `RX_VK_MESH_FIRST=1` (the tree draw's own first is 0). - What the pair reads looks right in game memory: the tree data the task stage reads through its c0+0x670 pointer (a count of 2968 cells, packed cell codes, prefix-sum starts, then triplets), the camera in c3+0x9d0 (near 0.1, far 25000, 16:9, 50° fov) and the frustum planes in c4+0x4c0. - One anomaly: with `RX_VK_MISS_LOG=1` the **task** stage of the pair makes about 100k global reads per frame that no buffer holds, about 33 to 36 MB past the tree data. Turned back into indices they are packed cell codes (`0x808090`, `0x8984B2`) where list indices belong. So some task workgroups take stale or garbage entries from the visible list `b6122162` writes (whose entries are an index, or an index with bit 31 set). - Lichii (Eden-based, `9e9ee6a215` oot/nx2-tip) at the same spot draws it like the Switch 2: sparse small trees, hills, windmill. So the game's data is fine and the difference is in how Hookshot runs `b6122162` or the tree task stage. That fits @Nitnek's chain above (`b6122162` also fills List B). - Ruling out the Ampere -> Maxwell lowering: I dumped the native code of `b6122162` (= Lichii's `52612da1509ec28d`, byte for byte), the shared task stage `d91e4f46becaba90` and the two mesh stages (`9d026703ad5da78c`, `b86297c24c8d8c7a`), then lowered each with Hookshot's and Lichii's `lower_to_maxwell.h` in a small standalone tool. The task stage lowers identically. In the others the differences are equivalent: a `UIADD3.X` with `!PT` as its second carry, a wrapped `SHF.R.U32.HI` as `SHR.W` vs `SHF.R.W`, branch offsets, and REGMAP markers vs shadow moves. So the difference is after lowering (the IR passes or what the shaders reach at run time), not in the instruction translation. - The two textures `b6122162` samples at this spot are 1024² masks, one R8 (five dark blobs) and one grey map shaped like Hyrule Field. Dumped from the GPU, they look correctly decoded, so this spot isn't the 4x4 default-texture case from the castle. - Following @blushOFF's CPU-side lead at my spot, which is inside the field: `HOS_FS_TRACE=1` shows `HyruleField_02.tscb` and its tiles (levels 10 and 31-36) open without errors, so here the terrain files do load. `b6122162`'s category starts at `c3+0x660..0x6e0` are `0, 0, 134, 292, 485, 505, 782, 944, 1074` (total 1167): category 0 is empty here too, the others are filled. - Together with the lowering result and Lichii drawing this spot correctly, that points at the counts the game's CPU code hands the culling (recompiled code, or something the game asks the system, such as a memory budget), not at the GPU translation. Happy to run more traces if anyone wants a specific switch or dump from this spot.
Nitnek commented 2026-11-09 18:20:52 +00:00 (Migrated from github.com)

A third spot, same as @blushOFF's Kakariko one: from Hyrule Castle the field's terrain is never opened (v2.0.10 built from source, RTX 3070, Windows 11)

  • Where: the castle cliff view from my earlier comment (Hyrule Castle autosave, camera turned left).
  • What HOS_FS_TRACE=1 shows: from loading the save to the cliff view, the only terrain the game opens is TerrainArc/HrlCastle_01.tscb and 94 files of TerrainArc/HrlCastle_01/. HyruleField_02 is never opened, yet the spruces standing on it are drawn: that is the wall of floating trees.
  • The GPU side on v2.0.10 is unchanged:
    • b612216258832b9c runs 94 groups;
    • list B's 4247f1b4c3ce6cf3 gets 0 groups;
    • the far-terrain pair 68642bb8 gets no work;
    • the tree pair 3cb7682790143836 draws ~2.0M fragments.
  • A side note so nobody chases it: the same trace prints ~2000 fs: OpenFile(content:/Tex/....bntx.zs): not found lines (DummyBlack_Gn2, CmnTex_BakeLightDefault, Rock_Pot_A_Rgh...). None of those files exist in the romfs, with or without .zs. The game only probes for loose textures, so they are not the cause.

So three spots now agree: Kakariko, Hyrule Castle, and @KrysGG's field view (where HyruleField_02 does load and category 0 is still empty). The terrain the far view needs is never requested by the game's own code. A next step could be the same trace in Lichii at one of these spots, to see whether it opens HyruleField_02 there.

**A third spot, same as @blushOFF's Kakariko one: from Hyrule Castle the field's terrain is never opened** (v2.0.10 built from source, RTX 3070, Windows 11) - **Where:** the castle cliff view from my earlier comment (Hyrule Castle autosave, camera turned left). - **What `HOS_FS_TRACE=1` shows:** from loading the save to the cliff view, the only terrain the game opens is `TerrainArc/HrlCastle_01.tscb` and 94 files of `TerrainArc/HrlCastle_01/`. `HyruleField_02` is never opened, yet the spruces standing on it are drawn: that is the wall of floating trees. - **The GPU side on v2.0.10 is unchanged:** - `b612216258832b9c` runs 94 groups; - list B's `4247f1b4c3ce6cf3` gets 0 groups; - the far-terrain pair `68642bb8` gets no work; - the tree pair `3cb7682790143836` draws ~2.0M fragments. - **A side note so nobody chases it:** the same trace prints ~2000 `fs: OpenFile(content:/Tex/....bntx.zs): not found` lines (`DummyBlack_Gn2`, `CmnTex_BakeLightDefault`, `Rock_Pot_A_Rgh`...). None of those files exist in the romfs, with or without `.zs`. The game only probes for loose textures, so they are not the cause. So three spots now agree: Kakariko, Hyrule Castle, and @KrysGG's field view (where `HyruleField_02` does load and category 0 is still empty). The terrain the far view needs is never requested by the game's own code. A next step could be the same trace in Lichii at one of these spots, to see whether it opens `HyruleField_02` there.
KrysGG commented 2026-11-09 18:25:31 +00:00 (Migrated from github.com)

@Nitnek I tried that Lichii trace at my field spot. With Service.FS:Debug, Lichii logs ~15k reads but no game file names: it serves the RomFS as one storage and logs only offsets (fs_i_storage.cpp Read: offset=0x257f6a730, length=131072). Only the save files show by name. So comparing TerrainArc opens needs those offsets mapped back to RomFS paths. Lichii already parses the RomFS, so a small local log there (the path for each read's offset) would do it. I can try that unless someone has a quicker way.

@Nitnek I tried that Lichii trace at my field spot. With `Service.FS:Debug`, Lichii logs ~15k reads but no game file names: it serves the RomFS as one storage and logs only offsets (`fs_i_storage.cpp Read: offset=0x257f6a730, length=131072`). Only the save files show by name. So comparing `TerrainArc` opens needs those offsets mapped back to RomFS paths. Lichii already parses the RomFS, so a small local log there (the path for each read's offset) would do it. I can try that unless someone has a quicker way.
blushOFF commented 2026-11-09 19:14:01 +00:00 (Migrated from github.com)

Correction of my 16:55Z comment, and what the floating trees are at Kakariko's entrance (RTX 3070, Windows 11, v2.0.8 plus local changes)

Please disregard the "CPU side" conclusion of my 16:55Z comment. I read b6122162's category counts as terrain patches, and I now have no evidence for that: its c3+0x220..0x22c are bit-identical to the four floats in the header of the scene's Forest placement file (.flnt), and it is the shader that writes the buffer holding the visible list of @KrysGG's tree pair. As far as I can now show, an empty category tells nothing about terrain, so please don't do a Lichii file trace because of that comment.

At this spot, the floating trees are that tree pair drawing too many records:

  • @KrysGG's test reproduces: with 3cb7682790143836 and 4f0c0b40ab3a32cd in RX_VK_SKIP_FILE, no floating tree is left in a scripted camera sweep.
  • The pair's task stage takes one entry e of the visible list per workgroup and computes the number of trees of that cell as min(offs[e+1] - offs[e], 256), offs being the prefix-sum table of the .flnt (read in its IR).
  • In the frame I dumped (RX_VK_GPU_DUMP), the GPU held 11 entries in that list, all below the file's 223 cells, and the file holds 82 trees for those 11 cells. But the mesh stage ran 1184 threads and made 2082 primitives, and each mesh thread that reaches the output writes one quad.
  • Projected with that frame's view-projection matrix (checked on a lamp post), the records offs[e] to offs[e] + 255, placed in cell e, land on the trees drawn in the sky. In the upper-right part of the frame, where the floating trees are, 98 to 100 % of the sample points along those 256 records are on non-sky pixels, and 62 to 70 % for the records after them, when 62 % of that area is not sky anyway. The four cells seen in that area hold 3, 5, 14 and 31 trees in the file.

So in that frame those cells are drawn as if they held 256 trees, and the extra ones are the records of the following cells, placed in the wrong cell.

In a run of the same scene, the GPU's copy of the file matched it on the four 16-byte samples I watched (RX_VK_WATCH_ADDRS: header, cell table, offset table), so nothing points to stale data so far.

I don't know yet why the count comes out at the clamp: I'm tracing those loads. I have not checked other spots, and this says nothing about the hills @KrysGG and @Nitnek describe.

**Correction of my 16:55Z comment, and what the floating trees are at Kakariko's entrance** (RTX 3070, Windows 11, v2.0.8 plus local changes) Please disregard the "CPU side" conclusion of my 16:55Z comment. I read `b6122162`'s category counts as terrain patches, and I now have no evidence for that: its `c3+0x220..0x22c` are bit-identical to the four floats in the header of the scene's `Forest` placement file (`.flnt`), and it is the shader that writes the buffer holding the visible list of @KrysGG's tree pair. As far as I can now show, an empty category tells nothing about terrain, so please don't do a Lichii file trace because of that comment. At this spot, the floating trees are that tree pair drawing too many records: - @KrysGG's test reproduces: with `3cb7682790143836` and `4f0c0b40ab3a32cd` in `RX_VK_SKIP_FILE`, no floating tree is left in a scripted camera sweep. - The pair's task stage takes one entry `e` of the visible list per workgroup and computes the number of trees of that cell as `min(offs[e+1] - offs[e], 256)`, `offs` being the prefix-sum table of the `.flnt` (read in its IR). - In the frame I dumped (`RX_VK_GPU_DUMP`), the GPU held 11 entries in that list, all below the file's 223 cells, and the file holds 82 trees for those 11 cells. But the mesh stage ran 1184 threads and made 2082 primitives, and each mesh thread that reaches the output writes one quad. - Projected with that frame's view-projection matrix (checked on a lamp post), the records `offs[e]` to `offs[e] + 255`, placed in cell `e`, land on the trees drawn in the sky. In the upper-right part of the frame, where the floating trees are, 98 to 100 % of the sample points along those 256 records are on non-sky pixels, and 62 to 70 % for the records after them, when 62 % of that area is not sky anyway. The four cells seen in that area hold 3, 5, 14 and 31 trees in the file. So in that frame those cells are drawn as if they held 256 trees, and the extra ones are the records of the following cells, placed in the wrong cell. In a run of the same scene, the GPU's copy of the file matched it on the four 16-byte samples I watched (`RX_VK_WATCH_ADDRS`: header, cell table, offset table), so nothing points to stale data so far. I don't know yet why the count comes out at the clamp: I'm tracing those loads. I have not checked other spots, and this says nothing about the hills @KrysGG and @Nitnek describe.
Nitnek commented 2026-11-09 20:06:16 +00:00 (Migrated from github.com)

Following @blushOFF's correction: I withdraw the conclusion of my last comment, and add a data point that fits the tree-count finding.

Withdrawn. That HyruleField_02 is never opened from the castle is still what the trace shows. But I read it as "the far terrain is never requested by the game's code", leaning on the category reading that is now retracted, and that does not follow: the far view may come from elsewhere. Please ignore the Lichii file-trace suggestion too.

What fits the 256 clamp. In the castle cliff view (my 15:10 comment), the same tree pair 3cb7682790143836 / 4f0c0b40ab3a32cd behaves very differently with the storage buffer pass's port on the geometry stages:

task groups (from b6122162's list) mesh threads fragments
default (legacy tracking) 188 45504 2.0M (the tree wall)
EDEN_NX2_GM_SPLIT=1 247 0 0 (no trees at all)

So under the legacy tracking the per-cell count comes out at the clamp (256), and under the port it seems to come out as 0, from the same visible list. That would fit the task stage's offs[e] / offs[e+1] loads being bound to the wrong buffer, a different wrong one in each mode, rather than the data being wrong. It also fits @KrysGG's miss log: ~100k task-stage global reads a frame that no buffer holds, 33-36 MB past the tree data.

A next check, if someone gets to it before me: the pointer the storage buffer pass picks for those two loads in the shared task stage (d91e4f46becaba90 per @KrysGG), e.g. with RX_VK_PTR_DIAG=1 or RX_VK_MISS_LOG_PROG, under both settings.

**Following @blushOFF's correction: I withdraw the conclusion of my last comment, and add a data point that fits the tree-count finding.** **Withdrawn.** That `HyruleField_02` is never opened from the castle is still what the trace shows. But I read it as "the far terrain is never requested by the game's code", leaning on the category reading that is now retracted, and that does not follow: the far view may come from elsewhere. Please ignore the Lichii file-trace suggestion too. **What fits the 256 clamp.** In the castle cliff view (my 15:10 comment), the same tree pair `3cb7682790143836` / `4f0c0b40ab3a32cd` behaves very differently with the storage buffer pass's port on the geometry stages: | | task groups (from `b6122162`'s list) | mesh threads | fragments | |---|---|---|---| | default (legacy tracking) | 188 | 45504 | 2.0M (the tree wall) | | `EDEN_NX2_GM_SPLIT=1` | 247 | 0 | 0 (no trees at all) | So under the legacy tracking the per-cell count comes out at the clamp (256), and under the port it seems to come out as 0, from the same visible list. That would fit the task stage's `offs[e]` / `offs[e+1]` loads being bound to the wrong buffer, a different wrong one in each mode, rather than the data being wrong. It also fits @KrysGG's miss log: ~100k task-stage global reads a frame that no buffer holds, 33-36 MB past the tree data. A next check, if someone gets to it before me: the pointer the storage buffer pass picks for those two loads in the shared task stage (`d91e4f46becaba90` per @KrysGG), e.g. with `RX_VK_PTR_DIAG=1` or `RX_VK_MISS_LOG_PROG`, under both settings.
blushOFF commented 2026-11-09 21:00:44 +00:00 (Migrated from github.com)

Why the count is 256 at Kakariko: the task stage's offs[e+1] load goes to a wrong address, and neither the IR nor the SPIR-V says so (RTX 3070, Windows 11, NVIDIA driver 610.88 as Vulkan reports it, v2.0.8 plus local changes)

Follow-up to my 19:14Z comment, same spot and scripted camera.

What the task stage of 3cb7682790143836 reads. A local probe logged the address and the value of each 32-bit global load, for lane 0 of each workgroup (10 workgroups, each seen twice in the frame):

  • n = load(file + 4) returns 223, the file's cell count. The cells[e] and offs[e] loads return the file's values, and so do the 520 later loads in the log (n again, offs[e], the records).
  • The offs[e+1] load is the only wrong one, in all 20 cases. Its address should be file + (n + 9 + e) * 4. The address the shader used is file + (cells[e] + 9 + e) * 4: the cell's packed code where n belongs. For e = 122 (code 0x808178) that is 33.7 MB past the start of the file. No buffer holds it, and the load returns 0.
  • So the count is min(0 - offs[e], 256) in unsigned arithmetic: 256 for every cell. These are the misses of the miss log (3200 a frame here). It would also be why @KrysGG's missed addresses turn back into packed cell codes: the code is in the address.

Where it goes wrong.

  • The IR dumped right before the SPIR-V is emitted is right: that address is built from the first load's result.
  • The emitted SPIR-V is right too. I dumped it and read it by hand (no spirv-val here): the third call's address is built from the result id of the first call of the load helper, not the second's.
  • That helper is the function Hookshot emits for global loads, marked DontInline. With it marked Inline for the task and mesh stages only (a local change), in the same scene: no miss is left; the pair's mesh stage runs 160 threads and makes 78 primitives, against 1184 and 2082; the file holds 81 trees for the 10 cells of the traced frame; and no tree is left in the sky in the scripted camera runs, with a cold program cache too.

So at this spot the compiled task stage does not compute what its SPIR-V says while the helper is not inlined, and does once it is. I can't tell from here whether that is the driver's compiler or something in the module that I missed.

Not checked yet: other spots (a tour of the areas is running), other GPUs and drivers, frame rate and compile times over a session. This does not explain @Nitnek's EDEN_NX2_GM_SPLIT=1 case (no trees at all), and it says nothing about the hills. If the tour holds, I'll open a PR with the change.

**Why the count is 256 at Kakariko: the task stage's `offs[e+1]` load goes to a wrong address, and neither the IR nor the SPIR-V says so** (RTX 3070, Windows 11, NVIDIA driver 610.88 as Vulkan reports it, v2.0.8 plus local changes) Follow-up to my 19:14Z comment, same spot and scripted camera. **What the task stage of `3cb7682790143836` reads.** A local probe logged the address and the value of each 32-bit global load, for lane 0 of each workgroup (10 workgroups, each seen twice in the frame): - `n = load(file + 4)` returns 223, the file's cell count. The `cells[e]` and `offs[e]` loads return the file's values, and so do the 520 later loads in the log (`n` again, `offs[e]`, the records). - The `offs[e+1]` load is the only wrong one, in all 20 cases. Its address should be `file + (n + 9 + e) * 4`. The address the shader used is `file + (cells[e] + 9 + e) * 4`: the cell's packed code where `n` belongs. For `e = 122` (code `0x808178`) that is 33.7 MB past the start of the file. No buffer holds it, and the load returns 0. - So the count is `min(0 - offs[e], 256)` in unsigned arithmetic: 256 for every cell. These are the misses of the miss log (3200 a frame here). It would also be why @KrysGG's missed addresses turn back into packed cell codes: the code is in the address. **Where it goes wrong.** - The IR dumped right before the SPIR-V is emitted is right: that address is built from the first load's result. - The emitted SPIR-V is right too. I dumped it and read it by hand (no `spirv-val` here): the third call's address is built from the result id of the first call of the load helper, not the second's. - That helper is the function Hookshot emits for global loads, marked `DontInline`. With it marked `Inline` for the task and mesh stages only (a local change), in the same scene: no miss is left; the pair's mesh stage runs 160 threads and makes 78 primitives, against 1184 and 2082; the file holds 81 trees for the 10 cells of the traced frame; and no tree is left in the sky in the scripted camera runs, with a cold program cache too. So at this spot the compiled task stage does not compute what its SPIR-V says while the helper is not inlined, and does once it is. I can't tell from here whether that is the driver's compiler or something in the module that I missed. **Not checked yet:** other spots (a tour of the areas is running), other GPUs and drivers, frame rate and compile times over a session. This does not explain @Nitnek's `EDEN_NX2_GM_SPLIT=1` case (no trees at all), and it says nothing about the hills. If the tour holds, I'll open a PR with the change.
Nitnek commented 2026-11-09 21:10:55 +00:00 (Migrated from github.com)

@blushOFF great find, and it corrects my 20:06Z guess. I read the 256 as the offs loads being bound to the wrong buffer; your trace shows the buffer is right and the address is wrong (the cell code where n belongs), in a compiled helper whose SPIR-V is correct. So please disregard the "bound to the wrong buffer" part of that comment.

When your branch is up I can run it at the Hyrule Castle cliff view from my 15:10Z comment (RTX 3070, Windows 11). The tree wall there is large: 3cb7682790143836 drew ~2.0M fragments, with 45504 mesh threads. That gives a second spot, on another driver version, with before/after draw stats.

@blushOFF great find, and it corrects my 20:06Z guess. I read the 256 as the `offs` loads being bound to the wrong buffer; your trace shows the buffer is right and the address is wrong (the cell code where `n` belongs), in a compiled helper whose SPIR-V is correct. So please disregard the "bound to the wrong buffer" part of that comment. When your branch is up I can run it at the Hyrule Castle cliff view from my 15:10Z comment (RTX 3070, Windows 11). The tree wall there is large: `3cb7682790143836` drew ~2.0M fragments, with 45504 mesh threads. That gives a second spot, on another driver version, with before/after draw stats.
blushOFF commented 2026-11-09 22:01:06 +00:00 (Migrated from github.com)

The PR is up: #1334. It is the change from my last comment (the global-load helper inlined in task and mesh stages, EDEN_NX2_GM_INLINE=0 turns it off). @Nitnek, thanks for offering to run it at the castle cliff.

The PR is up: #1334. It is the change from my last comment (the global-load helper inlined in task and mesh stages, `EDEN_NX2_GM_INLINE=0` turns it off). @Nitnek, thanks for offering to run it at the castle cliff.
Nitnek commented 2026-11-09 22:08:28 +00:00 (Migrated from github.com)

The "vanishing vegetation at mid distance" part has its own cause and a fix: #1338 (separate from the floating trees @blushOFF traced to the load helper).

Trees full from far, bare at mid distance and full again near (#1151) come from the foliage LODs' crossfade. It is dithered against a 64³ noise volume that the game renders while an area loads (53509044401d78d2). Hookshot left that pass out by default after it lost the device on first starts, so the noise stayed zero and the crossfade became a hard cut. The PR fixes the two reasons the pass failed: BC images had no colour attachment usage for their raw views, and the pass was sized in texels instead of blocks. It also turns the pass back on. RTX 3070: needles kept at mid distance, 12 of 12 starts with the pass running and no device lost.

**The "vanishing vegetation at mid distance" part has its own cause and a fix: #1338** (separate from the floating trees @blushOFF traced to the load helper). Trees full from far, bare at mid distance and full again near (#1151) come from the foliage LODs' crossfade. It is dithered against a 64³ noise volume that the game renders while an area loads (`53509044401d78d2`). Hookshot left that pass out by default after it lost the device on first starts, so the noise stayed zero and the crossfade became a hard cut. The PR fixes the two reasons the pass failed: BC images had no colour attachment usage for their raw views, and the pass was sized in texels instead of blocks. It also turns the pass back on. RTX 3070: needles kept at mid distance, 12 of 12 starts with the pass running and no device lost.
Oliverito commented 2026-11-09 22:15:49 +00:00 (Migrated from github.com)

Floating trees / missing background hills in Kakariko Village (v2.0.11, RTX 4070 Ti)

  • Version: Hookshot v2.0.11 (source d6369f1e), built via HookshotBuilder on Windows.
  • System:
    • OS: Windows 11 Pro
    • GPU: NVIDIA GeForce RTX 4070 Ti (Driver 621.14 / Vulkan 1.4)
    • CPU: AMD Ryzen 7 5700X (8-Core)
    • RAM: 32 GB
  • Where: Kakariko Village (viewing the hillside/mountain backdrop).
  • Description: Background hill/mountain terrain fails to render, leaving distant trees floating in mid-air across the sky. Rebuilt cleanly from scratch with v2.0.11 defaults; behavior persists.
  • Log & Screenshot: Attached below.
Image Image Image
**Floating trees / missing background hills in Kakariko Village (v2.0.11, RTX 4070 Ti)** - **Version:** Hookshot v2.0.11 (source `d6369f1e`), built via HookshotBuilder on Windows. - **System:** - OS: Windows 11 Pro - GPU: NVIDIA GeForce RTX 4070 Ti (Driver 621.14 / Vulkan 1.4) - CPU: AMD Ryzen 7 5700X (8-Core) - RAM: 32 GB - **Where:** Kakariko Village (viewing the hillside/mountain backdrop). - **Description:** Background hill/mountain terrain fails to render, leaving distant trees floating in mid-air across the sky. Rebuilt cleanly from scratch with v2.0.11 defaults; behavior persists. - **Log & Screenshot:** Attached below. <img width="1919" height="1079" alt="Image" src="https://github.com/user-attachments/assets/668abf84-2261-4f67-91a7-4b6831e837c7" /> <img width="1918" height="1078" alt="Image" src="https://github.com/user-attachments/assets/18d4da3e-dea3-4322-86b0-ace803760c90" /> <img width="1919" height="1079" alt="Image" src="https://github.com/user-attachments/assets/d1be19c2-4281-43f9-b036-24a0893a5771" />
blushOFF commented 2026-11-09 22:37:46 +00:00 (Migrated from github.com)

@Oliverito that is expected on v2.0.11: the fix for the floating trees (#1334) was merged after that release, so it will be in the next one. Until then, only a build from current main has it.

@Oliverito that is expected on v2.0.11: the fix for the floating trees (#1334) was merged after that release, so it will be in the next one. Until then, only a build from current `main` has it.
lucasmazzoni45-del commented 2026-11-10 00:33:34 +00:00 (Migrated from github.com)

Data point on a build without #1338: the foliage/mountain LOD problem on an RX 7800 XT / Windows 11 (main 0828863 + #1130).

On the path from Zora's River toward Zora's Domain (child Link), the top of a mountain shows dark angular polygon patches, like parts of the rock drawn in a much darker tone with hard edges. The log around it is clean (60 fps, no error, no not made, no slow submit). This build has #1334 (merged) but not #1338 (still open). I have not run #1338 yet; I will build main with it on top and compare the same spot, and post the result here. Until then this is only a possible match, not a confirmation.

**Data point on a build without #1338: the foliage/mountain LOD problem on an RX 7800 XT / Windows 11 (main 0828863 + #1130).** On the path from Zora's River toward Zora's Domain (child Link), the top of a mountain shows dark angular polygon patches, like parts of the rock drawn in a much darker tone with hard edges. The log around it is clean (60 fps, no error, no `not made`, no slow submit). This build has #1334 (merged) but not #1338 (still open). I have not run #1338 yet; I will build main with it on top and compare the same spot, and post the result here. Until then this is only a possible match, not a confirmation.
NotRexed commented 2026-11-10 01:59:40 +00:00 (Migrated from github.com)

Fixed in the v2.0.12 branch, closing when it ships. The floating trees fix (#1334: the global-load helper inlined in task and mesh stages) is merged; testers confirm the Castle and Kakariko trees are gone with it.

Fixed in the v2.0.12 branch, closing when it ships. The floating trees fix (#1334: the global-load helper inlined in task and mesh stages) is merged; testers confirm the Castle and Kakariko trees are gone with it.
NotRexed commented 2026-11-10 03:49:44 +00:00 (Migrated from github.com)

Also in the v2.0.12 branch: the mid-distance foliage fix (#1338, OoT's noise volume pass no longer left out), on top of the floating trees fix. Closing at release.

Also in the v2.0.12 branch: the mid-distance foliage fix (#1338, OoT's noise volume pass no longer left out), on top of the floating trees fix. Closing at release.
omega-tuna commented 2026-11-10 04:21:27 +00:00 (Migrated from github.com)

The recomp curse, it's even harder to track down bugs like this because it's a recomp. The game could be doing everything correctly but somewhere down the line it ends up getting scrambled. On a more positive note you guys are doing an amazing job finding and fixing them. The work on this is nothing short of incredible

The recomp curse, it's even harder to track down bugs like this because it's a recomp. The game could be doing everything correctly but somewhere down the line it ends up getting scrambled. On a more positive note you guys are doing an amazing job finding and fixing them. The work on this is nothing short of incredible
djanice1980 commented 2026-11-10 05:07:23 +00:00 (Migrated from github.com)

Linux data point for #1334, since Linux was listed as not tested. CachyOS, kernel 7.3.3, RTX 5070 Ti (driver 620.70.06), built from main 5609af4.

Same build, same spot (looking up at the sky beside the Hyrule Castle wall):

  • EDEN_NX2_GM_INLINE=0: a wall of floating trees across the sky.
  • default: no floating trees.

I only checked this one spot, and I have not done the before/after on AMD.

Linux data point for #1334, since Linux was listed as not tested. CachyOS, kernel 7.3.3, RTX 5070 Ti (driver 620.70.06), built from main 5609af4. Same build, same spot (looking up at the sky beside the Hyrule Castle wall): - `EDEN_NX2_GM_INLINE=0`: a wall of floating trees across the sky. - default: no floating trees. I only checked this one spot, and I have not done the before/after on AMD.
The128ReBits commented 2026-11-10 07:24:42 +00:00 (Migrated from github.com)

Still happening on v2.0.11.

System: Ryzen 7 5700X3D · RTX 5070 Ti (NVIDIA driver 32.0.16.2114 / 621.14) · 32 GB RAM · Windows 11 Pro build 26300 · Vulkan. 100-180 FPS, performance fine.
Version: v2.0.11 (some screenshots taken on v2.0.10; resumed the same save in the same area on v2.0.11 hours later and the bugs are unchanged).
Progress: ~2+ hours in, young Link, Spanish language. Now on Death Mountain Trail.

Huge numbers of pine trees float in the sky, detached from terrain. Seen on the Hyrule Castle walls/grounds (sneaking in to meet Zelda), the castle road gate, Kakariko Village at night, the Kakariko guard gate to Death Mountain and in the rain at night. Consistent every time, not a one-off.

Image Image Image Image Image Image Image
Still happening on **v2.0.11**. **System:** Ryzen 7 5700X3D · RTX 5070 Ti (NVIDIA driver 32.0.16.2114 / 621.14) · 32 GB RAM · Windows 11 Pro build 26300 · Vulkan. 100-180 FPS, performance fine. **Version:** v2.0.11 (some screenshots taken on v2.0.10; resumed the same save in the same area on v2.0.11 hours later and the bugs are unchanged). **Progress:** ~2+ hours in, young Link, Spanish language. Now on Death Mountain Trail. Huge numbers of pine trees float in the sky, detached from terrain. Seen on the Hyrule Castle walls/grounds (sneaking in to meet Zelda), the castle road gate, Kakariko Village at night, the Kakariko guard gate to Death Mountain and in the rain at night. Consistent every time, not a one-off. <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/a58e86e1-bc3d-45ea-b3ba-b3eae324d488" /> <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/7a1f2ecc-d07e-447b-95eb-a749a6b992f4" /> <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/30621e6d-ed21-4709-acf1-99a11e4e55fb" /> <img width="2000" height="1124" alt="Image" src="https://github.com/user-attachments/assets/ca15ffcb-676b-4c09-86f3-c85ea683bd5c" /> <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/49c2d5a2-310c-4fd1-869d-ce84f44fdf27" /> <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/0d15500c-6c4d-4ad1-a879-8c0ac290352e" /> <img width="2000" height="1125" alt="Image" src="https://github.com/user-attachments/assets/43ec8031-4ac6-4f3f-9b0e-789a87d13e83" />
NotRexed commented 2026-11-10 10:07:40 +00:00 (Migrated from github.com)

Fixed in v2.0.12 (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.12): the floating trees and missing mountains (#1334: the global-load helper inlined in the task and mesh stages; #1338: OoT's noise volume pass no longer left out). Update with the Hookshot Builder (or the game's update offer) and rebuild. If it still happens on v2.0.12, reopen this with your hookshot_log.txt.

Fixed in **v2.0.12** (https://github.com/NotRexed/Hookshot/releases/tag/v2.0.12): the floating trees and missing mountains (#1334: the global-load helper inlined in the task and mesh stages; #1338: OoT's noise volume pass no longer left out). Update with the Hookshot Builder (or the game's update offer) and rebuild. If it still happens on v2.0.12, reopen this with your `hookshot_log.txt`.
junker66TTV commented 2026-11-11 05:23:23 +00:00 (Migrated from github.com)

Also seeing vegetation vanish when approaching it (bushes disappear as the player gets close).

GPU: NVIDIA GeForce GTX 1080 (no mesh shaders, "Mesh shaders: Compute" row)
CPU / RAM: Intel Core i7-12700, 32 GB
OS: Windows 11
Hookshot: v2.1.0 (source 633eb435)

Where: Hyrule Castle

Settings: Fullscreen On, GPU device GTX 1080, Frame generation 2x, Frame pacing Off, Reflex Off, Frame rate cap 60,
1920x1080 output, FSR 3.1 Quality 67% (1280x720), Sharpness 50%, Anisotropic 4x, Profile Docked, Ultrawide 16:9,
Robust buffers Off, Mesh shaders Compute, Descriptor reuse On, Sampler cache On.

hookshot_log.txt

Also seeing vegetation vanish when approaching it (bushes disappear as the player gets close). GPU: NVIDIA GeForce GTX 1080 (no mesh shaders, "Mesh shaders: Compute" row) CPU / RAM: Intel Core i7-12700, 32 GB OS: Windows 11 Hookshot: v2.1.0 (source 633eb435) Where: Hyrule Castle Settings: Fullscreen On, GPU device GTX 1080, Frame generation 2x, Frame pacing Off, Reflex Off, Frame rate cap 60, 1920x1080 output, FSR 3.1 Quality 67% (1280x720), Sharpness 50%, Anisotropic 4x, Profile Docked, Ultrawide 16:9, Robust buffers Off, Mesh shaders Compute, Descriptor reuse On, Sampler cache On. [hookshot_log.txt](https://github.com/user-attachments/files/34671760/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#994
No description provided.