Skip to content

Releases: sonsegajp/HWDER

HWDER v0.1.2-test2 - smoother 60 fps, AMD black-box fix, 120/144 Hz interpolation

Choose a tag to compare

@sonsegajp sonsegajp released this 14 Oct 02:46

Test build 2: smoother frame pacing for everyone, the AMD black-box fix, and working frame interpolation for 120/144 Hz screens. Still a pre-release; please report back with your hwder.log.

Smoother 60 fps (all GPUs)

  • Fixed a frame-pacing bug: after any frame that was slightly late, the next one was held for an extra refresh. Heavy battles alternated 17 ms and 33 ms frames, which looks like constant stutter.
  • The game's own frame timing now wakes on time. Windows timers woke it 0.4–0.7 ms late every frame, and some of its tiny polling waits took ~0.7 ms instead of microseconds.
  • The audio renderer can no longer be starved by busy threads. The game paces itself on audio, so late audio meant late frames.
  • Occlusion queries no longer cost a full GPU round trip each.
  • Lower per-draw CPU overhead in the renderer.

AMD black boxes (#2)

  • The black tiles on the presented picture came from the final copy to the screen racing with the screen clear on AMD drivers. That's fixed. Thanks @Zucchyny63 for the frame dumps that pinned it down.

Frame interpolation (120/144 Hz)

  • F1 → Frame interpolation: Off / Match display refresh / 120 Hz / 144 Hz.
  • The game still runs at 60 fps. In-between frames are rendered with blended 3D positions (camera, characters), so motion is smooth on high-refresh screens. The HUD always shows the newest frame.
  • It costs extra GPU/CPU work per displayed frame. Use 120 Hz if 144 drops frames on your PC.

Tip: if you run the game from inside a code editor's project folder (VS Code etc.), its file indexer can spike the CPU every few seconds while the game writes files. Run it from its own folder.

Setup is unchanged: put your own .nsp and prod.keys next to hwder.exe.

HWDER v0.1.2-test1 - AMD / startup crash test build

Choose a tag to compare

@sonsegajp sonsegajp released this 13 Oct 22:25

Test build for the AMD and startup problems in #1, #2 and #3. None of these fixes have been tested on AMD hardware yet, which is why this is a pre-release. If you hit any of those issues, please try it and report back in your issue with your hwder.log attached.

Startup crash in vulkan-1.dll (#1)

  • The crash handler used to stop the game on any access violation, including harmless ones the Vulkan loader or GPU driver raise and handle themselves. It now only steps in when nobody else handles the fault.
  • hwder.log now lists the Vulkan loader, installed layers (overlays such as OBS, Steam, Epic, RivaTuner), every GPU and any missing driver features. Crash reports show module+offset for every frame instead of ?!?+0x0.
  • On laptops or PCs with two GPUs, HWDER_GPU=<number or part of the name> picks one. The log lists them.

AMD crash after the first movie (#3)

  • Depth buffers used D24S8, which AMD does not support for depth buffers. AMD now gets D32S8 instead.
  • Fixed a case where a frame could be submitted halfway through a draw when the upload buffer filled up.

AMD rendering problems: black boxes, missing terrain, odd water (#2)

  • The shadow lookup on a placeholder texture now uses a real depth texture. On AMD it came out fully shadowed (black).
  • Draws that read a render target written earlier in the same pass are now synchronized (AMD framebuffer compression returned garbage tiles).
  • 3-component vertex formats, which AMD lacks, now read their 4th component correctly.
  • Shader fixes:
    • discarded pixels no longer break neighbouring pixels' derivatives;
    • unwritten vertex outputs and clip distances are defined;
    • sin/cos arguments are range-reduced.
  • Fixed all Vulkan validation errors found in a full run: sampler compare state, sRGB view usage, present semaphores.

Note: HWDER needs a Vulkan 1.3 driver (the README said 1.2). If the game exits at startup, update your GPU driver first.

Setup is unchanged: put your own .nsp and prod.keys next to hwder.exe.

HWDER v0.1.1 - movie stall fixes

Choose a tag to compare

@sonsegajp sonsegajp released this 03 Oct 23:06

Stall fixes for movies and scene changes, plus better options feedback.

Fixed

  • 50-100 ms hitches during the intro/title movies: the readback the game does of each converted movie frame went through uncached (write-combined) host memory; it now uses host-cached memory, and buffers the CPU rewrote after the GPU are no longer read back at all.
  • Texture decode cache (cache\astc) was never created because of an escaped path; big ASTC textures now decode once per machine.
  • 60 Hz monitor switch now defaults on when the desktop refresh is not a multiple of 60 (144 Hz panels show 30/60 fps content with uneven cadence otherwise). Explicit display_60hz= in the ini still wins.

Options

  • F1 overlay shows the active 3D render resolution. "Unlocked resolution" renders at the window's own size: on a 1920x1080 window that is the game's native resolution, so use the scale combo to super-sample.

Diagnostics (in hwder.log): slow readbacks, present stages, RomFS reads, IPC calls and GPU ioctls over a threshold are now logged with their cost.

Setup is unchanged: put your own .nsp and prod.keys next to hwder.exe.

HWDER v0.1.0 - first public build

Choose a tag to compare

@sonsegajp sonsegajp released this 03 Oct 22:24

First public build of the Hyrule Warriors: Definitive Edition recompilation.

Setup: unpack, put your own dump of the game (*.nsp, title 0100AE00096EA000, base game) and your prod.keys next to hwder.exe, run it. Code and assets are decrypted out of the NSP at startup; nothing is extracted to disk. See README.txt in the zip.

What works: boot, menus, movies, battles, saves, audio, XInput + keyboard, 60 Hz presentation, F1 options overlay (internal resolution scale, unlocked/ultrawide resolution, vsync, borderless, anisotropic filtering, FPS counter, 60 Hz monitor switch, save-file cheats tab), F11 borderless toggle.

Requirements: Windows 10/11 x64, Vulkan 1.2 GPU driver, AVX2 CPU, Media Foundation.

Known issues: occasional black quads on some hit effects; movies and gameplay judder on panels that only offer 60/144 Hz (use the 60 Hz monitor option).

Attach hwder.log to bug reports. The pdb is included so crash logs come with symbol names.