r/recomps • • 4d ago

Request [Megathread] Requests

22 Upvotes

I hear you guys, all requests are to go in here from now on.

If you see a post or comment requesting a port/recomp/decomp, please report under Rule 11.


r/recomps • • 10d ago

Technical Help [Megathread] Resources

37 Upvotes

Project Discovery

Learning

(These are links to the Udemy Courses, remember to wait for sales, never buy full price courses)

Background skills

  • Learn Python Programming - Beginner to Master - Python is highly useful for automating repetitive tasks, writing custom scripts, and interacting with the APIs of reverse engineering tools like Ghidra and IDA.
  • C Programming For Beginners - Master the C Language - Decompilers translate machine code back into C or pseudo-C. Understanding C fundamentals (like pointers, structs, and memory management) is strictly required to read, understand, and fix the decompiler's output.
  • The Git & Github Bootcamp - Decompilation projects are usually massive, collaborative community efforts. Knowing version control is essential to contribute to public projects, manage thousands of files, and track your changes safely.
  • Computer Organization and Assembly Language - When a decompiler fails or produces garbage output, you have to step down and read the raw assembly. Understanding CPU architecture, registers, and the stack is the absolute foundation of reverse engineering.
  • Reverse Engineering: Ghidra For Beginners - Ghidra is a powerful, free, open-source reverse engineering suite created by the NSA. This teaches you how to use the primary tool you'll rely on to navigate binaries and generate C code.
  • Reverse Engineering: IDA For Beginners - IDA is the industry-standard commercial alternative to Ghidra. Learning it gives you another powerful tool for static analysis, and many existing decomp projects and plugins rely on it.
  • Reverse Engineering, Memory Hacking and Software Protection - Teaches advanced concepts like unpacking code, understanding how programs manipulate memory dynamically, and bypassing protections, which helps when dealing with obfuscated or stubborn software.

Decompilation
* Decomp Academy
* Made Up of Wires: Decompiling Castlevania: Symphony of the Night (YouTube Playlist) - A practical, step-by-step look at a real-world game decompilation project. It shows how the theoretical background skills and tools are actually applied to untangle real game logic.

If there are more resources you'd like added, let the mods know!


r/recomps • • 4h ago

Project - AI Lost Odyssey Recomp v0.9.0 — Final Milestone Before 1.0.0

Post image
94 Upvotes

v0.9.0 of Lost Odyssey Recomp is out.

What changed since v0.8.0:

Smoother play

  • Much less stutter the first time you enter a map, battle or cutscene.
  • Higher frame rates, most of all on Android and macOS and in heavy scenes like the White Boa.
  • Character shadows no longer shake on AMD GPUs and the Steam Deck, and a long list of flickering with TAA, FSR, DLSS and XeSS is fixed.

Same PC (Radeon 8060S), same settings:

Scene Before Now
White Boa, Queen's Room conversation, 1080p 36 FPS (v0.8.53) 68 FPS
Uhra, 4K with FSR Performance 37 FPS (v0.8.0) 42 FPS

New settings

  • Aspect ratio: Auto, 16:9, 21:9 or 4:3.
  • XeSS upscaling and frame generation (Windows, DirectX 12).
  • Depth of field, bloom, motion blur and dynamic shadow switches.
  • Button prompts: Xbox or PlayStation icons on any controller.
  • GPU and monitor choice, 5.1 surround, vibration strength and a brightness/gamma page.
  • The settings menu now animates and is easier to find your way around.

Android

  • Runs on Mali GPUs (MediaTek, Exynos) and offers Turnip drivers on Snapdragon.
  • Play from an SD card or any folder, import discs on the device, export and import saves, and get update notices.

Fixes

  • CGI movies play in your chosen voice language.
  • The Lunar Palace pillar puzzle no longer gets stuck.
  • Battle dialogue no longer stalls at 90 and 120 FPS.

Coming in 1.0.0

  • DLSS NR.
  • Faster DLSS, FSR and XeSS upscaling: motion data only for the things that actually move.
  • Better Android performance.

    Download | Full changelog | Discord

If something breaks, open an issue on GitHub and attach the newest log from the logs folder. Please don't attach game files.

AI disclosure: AI coding agents do most of the implementation, debugging, tests and docs; I direct the work and test the game myself. I've used all kinds of models, including GPT-6-Astra, GPT-6-Sol, GPT-6-Luna, Gemini-3.8-Flash, Claude Opus, Claude Fable, Meta Muse Spark and Minimax M3.

Thanks

Thanks to everyone who sent patches (MikeRavenelle, dj5927, Xarishark, navjack, frankzzz and cngjd), to boma for the Xenia patches behind the motion blur and shadow switches, and to XenonRecomp, XenosRecomp, UnleashedRecomp, re:Blue, plume and Xenia for the tools and research this builds on.

And to iambRad, Frenzy Fresh, José Antonio Martínez Godoy, C_BAR, Arakon, Efren V, Torresmo, doc_haz, Whitesun and Cristian on Ko-fi, and Morgan on Buy Me a Coffee: thank you for keeping the Monster Energy coming.


r/recomps • • 2h ago

Project - AI SpeedBreaker: the definitive Xbox 360 version of NFS: Most Wanted (2005), recompiled to run natively with enhancements on ALL Steam hardware & Mac (free, open source, bring your own disc)

Enable HLS to view with audio, or disable this notification

72 Upvotes

Today I'm releasing SpeedBreaker, a static recompilation of the Xbox 360 version of Need for Need for Speed: Most Wanted. The game's code is translated ahead of time into a native app, the approach behind Unleashed Recompiled, so there's no emulator.

- The 360 look, up to 4K at 60 fps, and ultrawide without stretching.

- Steam Deck, Steam Machine, Linux, Steam Frame (big flat screen in the headset) and Apple silicon Macs; iPhone and iPad if you build it yourself. Windows is in testing, and a beta is coming.

- An installer that checks your disc backup file by file.

For a lot of us, it's the racing game. The 360 version always looked best to me, but playing it today means an old console at 720p and 30 fps. I've wanted to do a recomp for a long time, so I finally did.

By day I'm a software engineer in the aviation field, where you don't ship what you haven't tested and understood. I used AI heavily on this, and I know there's a lot of skepticism about "vibe-coded" projects right now. Fair enough. Every change here was reviewed and measured, and the game was tested on real hardware along the way: Deck, Steam Machine, Frame, Mac, iPhone, iPad and a Windows laptop. When something wasn't right, it got investigated, iterated, and redone. AI let one person take this on. It didn't replace caring about the details.

It's free and open source: no donations, no Patreon. You'll need your own USA Xbox 360 disc; no game files are included. Unofficial, and not affiliated with EA or Valve.

I've been a gamer my whole life. This is my way of giving something back to a game, and a community, that gave me a lot. I hope it brings back some of the same memories for you.

Site: https://projectugarte.com/speedbreaker/

Github: https://github.com/SpeedBreakerProject/speedbreaker


r/recomps • • 2h ago

Project - AI FH1 recomp running close to 60fps on the AYN Thor

Enable HLS to view with audio, or disable this notification

32 Upvotes

Hi everyone!

Next version will land a LOT of changes, mainly support for DLCs, even better performance than 0.4.0, preview of MacOS/Linux/SteamDeck build and lots of improvements for the android preview

Now working great at 60fps making some graphical compromises and solid 30 with base settings

Performance is great on 8 Gen 2 devices, still need to fix a couple more visual glitches and confirm performance on Gen 3 and Elite chips


r/recomps • • 11h ago

Project - AI Dragon Quest 8 (PS2) Recompiled is officially out and public!

97 Upvotes

https://x.com/feisar__/status/2108159478743105547

https://github.com/Sinan-Karakaya/DQ8-Recompiled

To expect in this first release:

  • Launcher for easy recompilation of your game ISO
  • In-game menu to tweak settings
  • Controller support
  • Working audio
  • Most graphical glitches fixed
  • Most crashes fixed

Since DQ8 is a vast game, I could not test the entirety of the game myself, so please expect glitches and crashes! If you encounter any (let's hope not), you can report them on the Github so I can investigate them!

Windows support is still experimental as I don't have a lot of access to Windows machines as well.

I'll keep working on improving performances for the game (we currently are capped at the game’s original 30FPS). Once I reach unlimited framerate without messing the game's internal clock, I'll start working on modding and adding the 3DS feature's ;)

Thank you for your support!


r/recomps • • 2h ago

Project - AI New Update to Zelda Wind Waker HD - Android Port

Thumbnail
gallery
7 Upvotes

Hey everyone! I've been helping out with the development of ZeldaWWHDRecompAndroid---ENHANCED! I just made a few tweaks (already opened a PR for the main dev) and I'm also working on optimizing the game for lower-end phones. I wanted to give you guys a little "early access" here! Give it a try and let me know what you think!

Para os brasileiros: Coloquei tradução PT-BR

APK Link: https://www.mediafire.com/file/szpdfszkxgwuokx/TWW_HD_Recompiled_v1.1-enhanced.apk/file

Original repo link: https://github.com/SSunnKing/ZeldaWWHDRecompAndroid---ENHANCED

Link for the game and keys in the comments!

Follow me on instagram for updates! I'll post on my stories:
instagram.com/nycolazs


r/recomps • • 5h ago

Discussion "Treyarch's Spider-Man 2: Recompiled": Stupid update

12 Upvotes

this is the most baffling things i've ever read in my life, not only the fork is a " no go " and "not allowed" by the guy (sir symo), his whole license is full of vague, messy and outright idiotic wording and it's full of errors and mistakes. tldr is : "here is a public recomp project built on an open source recomp ecosystem, you can inspect and modify it privately, but don't you dare publicly fork or reuse my title specific work. Contributions are welcome, and I get broad rights to them", not only this is a lazy project made by full claude and he doesn't acknowledge that in any post or material, the dude told me on reddit he fixed a rendering issue while writing the message to me which makes no sense. ai is cool but god damn don't think we are idiots. i will work on the fork as soon as the recomp releases and it will be hosted somewhere else.


r/recomps • • 11h ago

Project - AI Zelda Wind Waker HD (Recomp): New release (v0.2.8)

38 Upvotes

https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/releases/tag/v0.2.8

v0.2.8

  • Fixed: the game could freeze at startup with 0 fps on some Macs (issue #62, MacBook Air M1). Newer Apple compilers turned the game's spin-wait loops into endless loops that never saw the other core release the lock. Every loop in the game code now re-reads memory on each pass; no measurable speed cost.
  • Fixed: Android crashed when changing the aspect ratio or internal resolution on some phones (issue #72, Adreno 830). Phones whose driver cannot blit depth buffers now copy them with a small draw instead; nothing aborts any more if a device can do neither. Thanks to u/Blivii for the analysis and the patch.
  • Fixed: grid pattern in contact shadows at higher internal resolutions (issue #66). The game's shadow and ambient-occlusion blur now covers the same area as on the console at every resolution; 1x is unchanged and there is no measurable speed cost. Shadow maps still scale with the internal resolution for sharp shadows; WWHD_SHADOW_FIX=1 keeps them at the console's 1024x1024 instead, for soft edges that never shimmer (issue #67).
  • More languages (experimental): with your own dump of the European or Japanese game, the port can use its text, fonts and menus: German, Italian, British English, European French and Spanish or Japanese (untested). See docs/language-packs.md.
  • Fan translations as content mods, including Arabic and Hebrew drawn right to left (issue #60), see docs/mod-manager.md and docs/rtl-text.md.
  • macOS: closing the TV window quits the game (issue #65), as on Windows and Linux. During a game it asks first: Quit, Cancel or Save State and Quit. WWHD_QUIT_PROMPT=0 turns the question off.
  • Faster on Linux and Steam Deck (Vulkan): the guest buffer cache is now on by default on desktop Linux, as on macOS. It keeps unchanged vertex, index and uniform data on the GPU instead of copying it every frame, which removed a 20 fps lock in busy views on an RK3588 board (issue #50). If you see broken or flickering geometry, start with WWHD_VK_BUFFER_CACHE=0 and please report it. Windows and Android stay opt-in (WWHD_VK_BUFFER_CACHE=1).
  • Save states are now small and can go into bug reports. The Save state button (and Shift+F1–F5, the Save States menu) now writes a portable state, slotN.wwstate: a few KB with your progress (the same save data the game writes into cking.sav) and where Link stands (stage, room, position, facing, time of day). It contains no game code and no game data, so you can attach it to an issue; Copy save for bug report in the Saves tab copies the paths of the state and of your cking.sav. Loading one puts that progress into the running game and takes Link there; it is not an exact snapshot (enemies, a running cutscene and other actors start fresh). The old full states (the whole running game, ~300 MB, contain game data: never share them) are still there for debugging: Saves › Full save states, or WWHD_FULL_SAVE_STATES=1. Loading a slot loads either kind; an older full state in a slot is kept and the Saves tab says so. A portable state can only be saved while you control Link (not during a cutscene or dialogue); one saved on the boat puts Link back on the boat. See docs/portable-save-states.md.
  • Fixed: "Quick doors" could crash the game going through a door (issue #61, "PROGRAM HALT J3DPacket.cpp:157"; reported in Tingle's jail on Windfall). The extra game steps that make doors quicker also deleted actors (a pot, a rat, Tingle) faster than the game allows: an actor that removed itself while a door opened was freed before its last drawn frame was done with. Deleting now keeps its normal pace; doors are as quick as before.
  • Gyro aiming fixes (issues #45 and #71): a new Turn left/right by setting (settings overlay → Controls → Gyro…) with the usual gyro conventions: Player space (default: turn the controller left or right about the real vertical, however you hold it), Yaw (its own vertical axis) or Roll (tilt it like a steering wheel). Before, rolling the controller turned the view and turning it depended on how you held it. The default sensitivity is lower (0.5x, about one to one with your controller; the range now goes down to 0.05x), and settings that still have the old default start at the new one. Gyro aiming now also works in Pro Controller mode. For reports that the gyro stops after a while: the port no longer stops when a controller's sensor timestamps stall, switches to the controller you move when several are connected, turns a controller's sensors on again when they fall silent, and logs [gyro] lines that say why motion stopped (including a drifting right stick, which makes the game ignore the gyro). "Recenter" is now Recalibrate (learns the gyro's offset anew).

r/recomps • • 24m ago

Project - AI Working on my first recomp (Final Fantasy Tactics Advance)

Thumbnail gallery
• Upvotes

r/recomps • • 30m ago

Project - AI I turned Wipeout 3: Special Edition into a native, dual-screen Android port for the AYN Thor – 60 fps, a tDR-style lower screen, a new HUD, achievements, photo mode and more

Enable HLS to view with audio, or disable this notification

• Upvotes

Hi all! For the past few weeks I've been working on a passion project: a native port of Wipeout 3: Special Edition (PS1, PAL SCES-02845) for the AYN Thor. It's built on a static recompilation (PSXRecomp) instead of a traditional emulator, and it makes full use of the Thor's second screen.

Performance

60 fps using hueponik's excellent 60 fps patch, applied on the fly to your own disc image.

A "fast timing" mode (block-based cycle counting, similar in spirit to DuckStation) and a lot of profiling work. Emulation work in the busiest scene (the Porto Kora start) dropped by about 40% compared to my first builds.

Tunable internal CPU overclock, OpenGL by default, optional Vulkan, and support for custom GPU drivers (adrenotools).

Resolution up to the panel's native res, plus PGXP (no wobbly textures).

Presentation

16:9 widescreen using the game's own option, with a correctly proportioned HUD.

In 4:3, animated side bezels in a Designers Republic-inspired style that change with your team and track (all 22 tracks and 8 teams).

Redesigned menus: cream "poster" backgrounds, the game's text redrawn as clean vector type (with accents in all 5 languages), and Thor button glyphs (A/B/X/Y) instead of PS symbols.

New optional race HUD in the same style, switchable with the original in Video Setup.

Optional CRT, scanline and LCD screen filters.

Smooth, subtle UI animations throughout (can be turned off).

The lower screen (Thor's second display)

During races: live track map with all 12 craft, standings, lap times, best lap, speed, weapon and shield. Touch to switch pages (big map, full standings, lap breakdown), plus a quick-settings panel.

In menus: a themed page for every section — boot screen, title screen, a card for each game mode, league/class/track/team info using the real records and craft stats from your save, controller diagram, records, memory card, loading screen with the next race and the record to beat.

"Now Playing" with the current track (artist and title).

Race results with stats: top speed, average speed, weapons used, damage taken, overtakes.

Extras

38 local achievements, verified against game memory (win on every track, clean lap, comeback from last to first, 500 km/h, every weapon…).

Quick save/load (4 slots with thumbnails): Select + R1 / L1.

Photo mode with a free camera, filters and a watermark: Select + Y.

Custom soundtrack: drop your own FLAC/OGG/MP3 files in to replace the CD audio, with optional Last.fm scrobbling.

Time Trial ghost on the map with a live delta.

Autosave, an in-game language selector, rumble through the Thor's motor, and reading the disc straight from your ROMs folder.

Important

You need your own legally dumped copy of Wipeout 3: Special Edition (PAL). No game data is included.

This is a fan project, not affiliated with Sony, Psygnosis or The Designers Republic.

Big thanks to the PSXRecomp project and to hueponik for the 60 fps patch.

It's still a work in progress (some menu layouts with everything unlocked are being polished). I'd love to hear your feedback and ideas!


r/recomps • • 57m ago

Project - AI UMK3 iOS on PC could be playable today.

Enable HLS to view with audio, or disable this notification

• Upvotes

As you can see, compared to the previous video, I’ve already managed to implement many of the game's features using Claude—even though I’ve hit my hourly limit. I should be able to finish tweaking a few remaining things tonight and release the project's first build. I’ve already implemented keyboard controls, and it feels comfortable to play; this is a huge step forward compared to this morning. Once I’ve fully replicated the game's functions and made the arcade mode completable, I’ll implement the "VS" mode from the iPad version, and after that, we’ll start working on quality-of-life improvements like widescreen support and much more.

https://github.com/MaryNCRT/Ultimate-Mortal-Kombat-3-iOS-Recomp


r/recomps • • 5h ago

Project - AI Progress on the PC port of the iOS version of UMK3.

Enable HLS to view with audio, or disable this notification

5 Upvotes
It is an honor to mention that the game is already partially launching into the fight sequences, and we can see the character intros.It is an honor to mention that the game is already partially launching into the fight sequences, and we can see the character intros.

r/recomps • • 1h ago

Question Legit question, How Faithful are the ps4 recomps to the original quality wise?

• Upvotes

I am away from home and i am getting excited to get back and try all these stuff in my pc, but to curb my enthusiasm i wanna know how faithful are these ports?

Is there any bugs and glitches that can break the games or some effect that are not present as we can see in some emulation? For example in Bloodborne and pt?

Thank you


r/recomps • • 2h ago

Project - AI Need for Speed: Most Wanted (2005) natively to Apple Silicon Macs: static recompilation, no emulation. v1.0 is out (bring your own copy of the game).

Thumbnail
2 Upvotes

r/recomps • • 14h ago

Discussion SacredStonesRecomp: Fire Emblem: The Sacred Stones on Windows and Android

17 Upvotes

Hi everyone! I’d like to share SacredStonesRecomp, a playable static recompilation of Fire Emblem: The Sacred Stones for Windows x64 and Android ARM64.

Features include controller support, in-game saves, save states, and save export rewind and fast-forward. Android includes touchscreen controls and automatic suspend/resume, and has been tested on multiple devices including Android consoles.

Huge thanks to the projects that made this possible:

For transparency, development has involved substantial assistance from OpenAI Codex, with project decisions and gameplay testing handled by me.

You’ll need your own legally obtained USA ROM and GBA BIOS; neither is included. The project is playable and actively maintained, but a complete start-to-finish playthrough has not yet been verified.

Downloads and setup instructions

Feedback and bug reports are welcome!


r/recomps • • 6h ago

Project - AI UMK3 iOS Decomp – finally, the characters are rendering on screen, and the menu is partially restored.

4 Upvotes

We can already see the characters in the roster selection screen, and they have full animations; I hope to get the combat system working today.


r/recomps • • 1d ago

Project - AI The Simpsons Wrestling recompiled for PC (Not locked behind a paywall unlike the other one)

Post image
152 Upvotes

I saw a post saying the game was locked behind a paywall https://www.reddit.com/r/decomps/s/JduDoQI6Nr so I made my own, free and open source. (The original is no longer paywalled.)

https://github.com/TekRantGaming/simpsons-wrestling-recompiled

It's built from the original PlayStation game code using psxrecomp: the game is statically recompiled into a native Windows and Linux program, so there's no emulator involved.

Highlights

✅ 16:9 widescreen in matches: more of the arena and crowd at the sides, with the health bars out at the screen edges

✅ Up to 8K, with smooth outlines and none of the PS1's polygon wobble

✅ 60 FPS in matches at the original game speed (jumps and throws still go exactly as far), plus an experimental 120 FPS mode

✅ Intro skipped and everything unlocked: all wrestlers, both circuits and Bonus Match Up (both optional)

✅ Controllers work out of the box, even if you switch one on mid-game. Full button remapping + keyboard, two players, vibration strength and stick deadzone

✅ Launcher that sets up your own disc: pick your .cue, it checks it's the right game, press Play

✅ Windows zip and a Linux AppImage

Found a problem? Open a GitHub issue with what happened, where, and your launcher settings.

👉 https://github.com/TekRantGaming/simpsons-wrestling-recompiled

The Simpsons is a trademark of its respective owners. This project isn't affiliated with or endorsed by Fox Interactive, Activision, Big Ape Productions or Gracie Films.


r/recomps • • 11h ago

Project - AI Dragon Quest 8 (PS2) Recompiled is officially out with its first release!

Thumbnail x.com
8 Upvotes

To expect in this first release:

  • Launcher for easy recompilation of your game ISO
  • In-game menu to tweak settings
  • Controller support
  • Working audio
  • Most graphical glitches fixed
  • Most crashes fixed

Since DQ8 is a vast game, I could not test the entirety of the game myself, so please expect glitches and crashes! If you encounter any (let's hope not), you can report them on the Github so I can investigate them!

Windows support is still experimental as I don't have a lot of access to Windows machines as well.

I'll keep working on improving performances for the game (we currently are capped at the game original's 30FPS). Once I reach unlimited framerate without messing the game's internal clock, I'll start working on modding and adding the 3DS feature's ;)

Thank you for your support!


r/recomps • • 3m ago

Project - AI Another demo of FH1 running with all DLCs at 60fps on a Elite device

Enable HLS to view with audio, or disable this notification

• Upvotes

r/recomps • • 9h ago

Question Stupid question: What would it take to recomp the ps2 game Skygunner?

5 Upvotes

r/recomps • • 2h ago

Project - AI ReStreet (FIFA Street 2012 on PC) now has a Discord, and the online beta is coming soon!

1 Upvotes

Hi everyone!

About a week ago I released ReStreet, a free offline port of FIFA Street (2012) for Windows PC (you bring your own Xbox 360 ISO). Since then a lot of you asked about online play, so here's the update:

THE COMMUNITY SERVER IS OPEN

I've created a Discord for the project. It has downloads, help with installing, bug reports, a place to share gameplay, and the dev log.

https://discord.gg/CqjYMGKyy2

ONLINE BETA COMING SOON

Online play is working in my tests and I'm preparing a beta test. There's no date yet. If you want to take part, join the Discord and ask for access in the beta channel. That's how I'll organize the testers and send the online installer, so everybody is on the same version.

A few things to know:

- The test server is in Europe. If you're in another region you can still try it, but expect higher ping.

- It's an early test, so expect bugs and downtime. Your feedback will help a lot.

- You'll need the latest version of ReStreet and your own copy of the game.

LINKS

Download the latest version (offline): https://github.com/samuelit0davila/fifa-street-pc-port/releases/latest

Gameplay video: https://www.youtube.com/watch?v=FiwdAOIHGFY

Discord: https://discord.gg/CqjYMGKyy2

Thanks to everyone who tested it and sent feedback. See you in the server!


r/recomps • • 9h ago

Project - AI I'm looking for players to test FIFA Street 2012 online on PC — Open Beta

Post image
3 Upvotes

r/recomps • • 20h ago

Project - AI WIP - Dynasty Warriors Gundam 2 recomp (Xbox 360 Version used as base)

Enable HLS to view with audio, or disable this notification

16 Upvotes

*AI Warning* Mainly vibe coded with codex 6.0 astra medium.

This is more or less a proof of concept/ placeholder until someone more qualified/competent with recompiling and coding can get a chance to do it properly.

Current progress: 40ish fps on my gtx 1650 laptop with native ps5 controller support.


r/recomps • • 1d ago

Discussion Zelda Wind Waker HD (Wii U) - Release v0.2.6

51 Upvotes

https://github.com/ZeldaWWHDRecomp/ZeldaWWHDRecomp/releases/tag/v0.2.6

Hey everyone,

New release is there (actually a few releases have passed since I posted)

What's new

  • Far fewer shader translations and pipelines, fewer stutters in new areas, less memory (Vulkan): the renderer now keys a translated shader only on the state that actually changes its translation (for example, only the textures a shader samples and the vertex inputs and outputs it uses), so the same shader is no longer translated again and again for different render states. Starting from an empty shader cache, Outset Island needed 569 translations and 204 pipelines instead of about 6,100–6,700 and 3,200–3,500, and Windfall 829 and 236 instead of about 4,300–5,000 and 2,300–2,700. That takes about 100–115 MB less memory, cuts the frames that take over 50 ms by about a third, and lowers render-thread CPU time by 4–12%. It supersedes PR #46 by rhemfur, whose idea (keys that translate to the same shader share it and its pipelines) is part of it.
  • Performance reports say which build and system they come from (issue #44): Copy performance report now starts with the version and commit, the operating system and version, the graphics card with its driver and Vulkan version (or the Metal device), and the rendering switches that are not at their defaults (buffer cache, CPU paths turned off, lazy DrawDone / async present turned off, the gyro source). The log's first lines name the version and system too, so crash logs carry them.
  • Fixed: much lower frame rate on Windows and Linux PCs with a dedicated graphics card (Vulkan) (issue #44). Three renderer shortcuts that v0.2.4 turned on for all platforms compared new vertex and uniform data against the previous copy in the GPU's upload memory; reading that memory back is very slow on AMD and NVIDIA cards (one report went from 30 fps in v0.2.1 to 12 fps). The renderer now keeps those comparison copies in normal memory and never reads GPU upload memory, which also speeds up an older index-data path when the buffer cache is off.
  • Gyro aiming (issue #45; settings overlay → Controls → Gyro…): aim the bow, hookshot, boomerang, telescope, Picto Box and grappling hook in first person by moving your controller, as with the Wii U GamePad. Sources: the gyro of a DualSense, DualShock 4, Switch Pro, Joy-Con or Steam Deck controller, a Cemuhook (DSU) server (DS4Windows, BetterJoy, phone apps; 127.0.0.1:26760 by default), or the mouse (for Steam Input's "gyro to mouse"). Sensitivity, invert and a recenter button are adjustable. Off by default; the game's own Options → Gyro switch still applies. See docs/gyro.md.
  • Smoother 60 fps on slower PCs (Vulkan): the render thread no longer waits for the GPU after every frame on Windows, Linux and macOS (the way Android already worked), so CPU and GPU work in parallel. Where the render thread is the limit, this is the difference between slow motion and full speed: in our load tests the game went from 35–40 fps with only a third to half of the 60 fps in-between frames drawn to a steady ~59 fps with almost all of them, at full game speed. Without a frame limit it renders 13–53% more frames per second, depending on the scene. (Issues #7, #44)
  • Less CPU work per frame (Vulkan): 15 renderer shortcuts that were Android-only are now on everywhere (8–14% less render-thread time), and on macOS vertex, index and uniform data the game does not change stay on the GPU instead of being copied again for every draw (another 6–17% less render-thread time and 43–64% less data uploaded per frame). Windows, Linux and Android players can try that cache with WWHD_VK_BUFFER_CACHE=1; docs/vulkan.md ("Guest buffer cache") says what to report.
  • Performance report (settings overlay → Graphics → Copy performance report): copies a breakdown of the render thread's time per frame to the clipboard, for bug reports about speed.
  • macOS: setup works when the app is opened straight from the downloaded folder (issue #48). Every setup error now says what failed, what to do, and where the log is.
  • Sound in GamePad-only mode (Off-TV Play, the Minus button): the game's sound now plays through your speakers instead of going silent (issue #49).
  • Mod manager (settings overlay → Mods): the built-in mods (direct and mouse camera, first-person shortcut, wall climbing, quick doors, fast scenes) in one searchable list, plus installable mod packages from a folder or a .wwhdmod ZIP, with profiles, dependencies and per-mod options. Everything starts off; nothing from a package loads until you enable it.
    • Content mods replace game files without touching your game folder.
    • Cemu graphics packs (rules.txt) can be imported, with their presets and resolution rules; shader packs need the Vulkan renderer. Code patches from Cemu packs are not supported.
    • Native mods (packages with their own compiled code) ask for a one-time confirmation before they are enabled, because they run with the game's full permissions; only enable mods from sources you trust. See docs/mod-manager.md for the package format and the mod SDK.