From 4bac444ad7b4ffe32ddd191ced2fd204c3c956f1 Mon Sep 17 00:00:00 2001 From: chrg6 Date: Tue, 10 Nov 2026 11:14:51 -0500 Subject: [PATCH] Set the version to 0.7.1 and write its release notes. What came in since 0.7.0: the lazy write-back on by default with the flicker's cause fixed, the pipeline read-ahead and linking changes, the texture detail setting, the mirror share for 6 GiB cards, five pull requests and the log queue's order. The notes say which numbers are single measurements and that the small-card changes were measured with the budget capped on a larger card. Co-Authored-By: Claude Fable 5.2 --- VERSION | 2 +- docs/releases/v0.7.1.md | 87 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 docs/releases/v0.7.1.md diff --git a/VERSION b/VERSION index faef31a4..39e898a4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.7.0 +0.7.1 diff --git a/docs/releases/v0.7.1.md b/docs/releases/v0.7.1.md new file mode 100644 index 00000000..54261403 --- /dev/null +++ b/docs/releases/v0.7.1.md @@ -0,0 +1,87 @@ +A performance and fix release for *The Legend of Zelda: Ocarina of Time* for Nintendo Switch 2 (game version 1.1.1): +a much higher frame rate in open areas, a single-frame flicker found and fixed, fewer hitches when shaders are first +used, and a texture detail setting for cards with little video memory. **No game files are included**: the setup builds +the game on your PC from your own dump. + +## Install or update + +- **Already have 0.6.0, 0.6.1 or 0.7.0:** start the launcher; it offers 0.7.1, updates itself and keeps the game it + compiled and the shaders it prepared. Only what changed is compiled again. +- **Already have 0.5.0:** the same, and the game's code 0.5.0 compiled is kept as it was compiled (for any x86-64 + processor); *Rebuild the Game* in the launcher's home compiles it again for yours. +- **New install:** download **`NX2navi-Setup-0.7.1.exe`** below, put it next to your `.nup` dump of the game and start + it. Windows SmartScreen warns on the first start because the setup is not signed: choose *More info* and *Run + anyway*. The launcher checks your game files, builds the game (10 to 25 minutes, once), prepares every shader and + starts it. + +**Requirements:** Windows 10 or 11; an x86-64 CPU with SSE4.2; 16 GB of RAM; about 30 GB free for the game and 1.5 GB +for the launcher; a GPU with Vulkan 1.3, `VK_EXT_external_memory_host` and `VK_EXT_mesh_shader` (current NVIDIA and AMD +cards). + +## Faster + +- **Open areas.** What the game's shaders write into its memory was copied back from the video card after every GPU + submission, in case the game's CPU code reads it: 66 MiB a frame in Hyrule Field, more than half of the frame's GPU + time. It is now copied once and after that only when the CPU touches it. 0.7.0 had this as *Experimental FPS boost*, + off, because single frames flickered with it on; the cause is fixed (see below), so it is on by default on Windows + and the menu row is gone. Standing in Hyrule Field on our test PC (RTX 5090, DLSS Performance) that is about 90 fps + instead of 65. `wb_lazy = 0` in `nx2navi.ini` brings the old behaviour back; on Linux it stays off unless you set + `wb_lazy = 1`. +- **Hitches when something is shown for the first time.** A draw whose pipeline was not ready made the game wait or + left the draw out while one thread linked it. Now the rest of the submission is read ahead and the pipelines it + will need are queued at once, several threads link them, and pipelines whose shader reads a target of its own pass + are linked the fast way like the others. Walking into Kokiri Forest for the first time, the worst frame went from + 434 ms to 44 ms in one measurement each, with no frame over 50 ms. + +## New + +- **Texture detail** (Screen tab; `texture_detail` in `nx2navi.ini`): *Reduced* makes the large surface textures + without their largest mip level and *Low* without the two largest, so a loaded area fits the video memory of small + cards; surfaces seen up close look softer, and interface art, small textures and shadow maps are unchanged. + *Automatic*, the default, picks by the video memory Windows grants the game: full detail on cards of 10 GB and more, + Reduced on 8 GB cards, Low on cards of 6 GB and less. Pick *Full* to keep every texture as it is on any card. + +## Fixed + +- **Single frames with the whole scene lit differently** (a flicker, brighter with the shadows off, most often while + other programs kept the processor busy, and far more often with the FPS boost on). Each frame the game signals the + renderer once it has written the frame's data; the renderer took its copies of that data just before it looked for + the signal, so a signal arriving in between let the frame be drawn from copies made too early. A signal now counts + only if it came before the copies. In captures of every picture shown, runs without the fix had up to 38 flicker + frames in 1,800 and no run with it had any. +- DLAA now reaches the screen in gameplay: its picture went into a target nothing read any more, so gameplay showed no + anti-aliasing at all in that mode. +- With a picture of 1080 lines, each DLSS and FSR mode renders the scene at the size its name says (Quality drew + 960x540 instead of 1280x720). That is sharper and costs some frame rate at 1080p; pick a lower mode to get the old + speed. +- **Cards with 6 GB of video memory:** once an area's textures had filled the card, the game's vertex, index and + storage buffers were refused a place in video memory and read over the bus at every draw (5 to 13 fps in two + reports from RTX 3060 Laptop cards). The buffers now keep their place, up to half of the video memory. +- A crash when a texture slot brought back a texture whose memory the game had already freed. +- The settings menu says "after restart" only while a restart would change something, and the Restart button counts + the settings that wait. +- Lines in the log could come out of order when several threads logged at once. +- The log now says when NVIDIA's shader cache is too small to hold the prepared shaders. If play stutters at every + start on an NVIDIA card, set **Shader Cache Size** to **Unlimited** in NVIDIA's settings (Graphics, Global Settings). + +## Known issues + +- The first visit to an area after an install can still pause while the graphics driver builds what it has not seen. +- When the system's memory is nearly full, towns re-upload many textures and the frame rate drops; closing other + programs helps. Machines with 16 GB of RAM can run out of system memory in Hyrule Field. +- Texture detail and the 6 GB fix were measured with the video memory limited on a larger card, not on a 6 GB card. + Tell us how it runs on yours. +- Integrated AMD GPUs can fail at the title screen (their host memory heap is too small for the game's memory). +- Opening the game's settings menu can crash on some AMD Radeon GPUs. +- Nothing in this release was run on Linux by us. + +## Thanks + +Pull requests in this release came from mooki000, tarballz and TophC7, and the 6 GB fix follows two testers' reports +and measurements from RTX 3060 Laptop cards. Thanks to everyone who sent logs, captures and test reports. + +Report problems as issues, with the game's log (`logs\nx2navi.log` in the game folder) and what you were doing; *Export +Save* with the bug report box ticked packs the log, your settings and your save into one zip. + +NX2navi is an independent, non-commercial fan project, not affiliated with or endorsed by Nintendo. *The Legend of +Zelda*, *Ocarina of Time* and *Nintendo Switch* are trademarks of Nintendo.