mirror of
https://github.com/tangerineturtle1/NX2navi.git
synced 2026-11-15 19:19:58 -04:00
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 <noreply@anthropic.com>
This commit is contained in:
87
docs/releases/v0.7.1.md
Normal file
87
docs/releases/v0.7.1.md
Normal file
@@ -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.
|
||||
Reference in New Issue
Block a user