XC3 Recomp
XC3 Recomp is a native PC port of Xenoblade Chronicles 3 that runs at 60 fps and supports DLSS and FSR 3 frame generation.
- Type: PC port
- Game: Xenoblade Chronicles 3
- Runs on Windows and Linux
- By jmars125
- Latest release v0.2.6, 2026-11-09
- Source: https://github.com/jmars125/xc3-recomp
README
XC3 Recomp
XC3 Recomp is a static recompilation of Xenoblade Chronicles 3 (Nintendo Switch, 2022) into a native Windows x86-64 application (docs/architecture.md). It is a fork of XCX Recomp, itself a fork of TotK Recomp by Valiantsin Dzerakh.
Important
No game files are included. You need your own legally obtained copy of Xenoblade Chronicles 3, dumped from your own console: the base game and the 2.2.1 update (the add-on content is optional). Instructions for obtaining those files will not be provided.
The game is built from your files on your machine, so the result contains the game. It is for your own use. Do not share it.
Status
Playable from New Game through the story, cutscenes and battles on Windows, with sound, text and the menu. 60 fps by default; 30 to 360 in the settings, with game speed kept right at any rate.
Known issues:
- Some busy areas and cutscenes drop to around 40 fps on any GPU: the game's own CPU work bounds them. Frame generation helps there.
- The first visit to a place can stutter briefly while its shaders build; later visits do not.
- Linux and the Steam Deck: the setup builds and installs, but play is not yet tested on a real GPU.
Report problems as issues, following CONTRIBUTING.md.
Features
- Native code, not emulation
- Update 2.2.1 and all four add-on content packs, including Future Redeemed
- XC3-Setup: builds the game from your own NSP files and
prod.keys - In-game settings menu (F1) and performance overlay (F10)
- Keyboard, mouse and gamepad, with Xbox or PlayStation button prompts
- 60 fps and above (
fps_limitup to 360 or the display's rate) - Any game resolution and aspect ratio, including ultrawide 21:9 and 32:9 (
output_res,ui_fit) - Upscaling and anti-aliasing (
upscaler): NVIDIA DLSS and DLAA on RTX cards, AMD FSR 3 on any GPU, each in place of the game's own temporal reconstruction, withrender_scalesetting the share of the resolution the 3D scene draws in; FSR 1 for a window larger than the game resolution - Frame generation (
frame_gen; takes a restart): NVIDIA DLSS Frame Generation on RTX 40 and 50 cards, AMD FSR 3 frame generation on any GPU, a generated frame between every two the game draws; DLSS Multi Frame Generation (frame_gen_multi, 3x to 6x) on RTX 50 cards. It needs a temporal upscaler (fsr3,dlssordlaa). The frame limit counts the frames on screen, so 120 draws 60 and shows 120; the overlay counts the frames on screen too. The game's interface is kept out of the generated frames - DLSS model choice (
dlss_preset) and NVIDIA Reflex low latency (reflex) with DLSS or DLAA - Dynamic resolution (
dynamic_res): the game's own, the 3D scene drawn smaller while the GPU cannot keep up with the frame limit - HDR10 output (
hdr; Windows' HDR on): the scene's highlights expanded towards the display's peak, the interface kept at its own brightness - Variable refresh rate (
vrr): for G-SYNC and FreeSync monitors, each frame shows when it is ready and the frame rate stays a little under the refresh rate (116 at 120 Hz), inside the monitor's range - RomFS mods made for emulators: unpack a mod into a
modsfolder next toxc3.exe
Every setting is in the F1 menu and in xc3.ini (xc3.ini.example lists every key). The setup puts
the NVIDIA (Streamline, DLSS) and AMD (FidelityFX) libraries next to xc3.exe.
Planned
- Linux and the Steam Deck tested on real hardware
Installing
Requirements: Windows 10 or later, an x86-64 CPU with AVX2, a GPU with Vulkan 1.3 and VK_EXT_external_memory_host, about 36 GiB free during setup (20 GiB after). DLSS needs an NVIDIA RTX card; DLSS Frame Generation an RTX 40 or 50 card with hardware-accelerated GPU scheduling on.
- Download
XC3-Setup-<version>-windows.zipfrom Releases and unpack it. - Start
XC3-Setup.exe. If SmartScreen warns about an unsigned app, choose More info, then Run anyway. - Pick your game files, the language and an install folder, and press Start. The setup builds the game once.
- Play
xc3.exefrom the install folder.
To update, run a newer XC3-Setup.exe on the same folder; saves and settings are kept. Controls: docs/controls.md.
Credits
XC3 Recomp builds on the projects below. What was taken from each, with its license, is listed in THIRD_PARTY_NOTICES.md.
- XCX Recomp, the project XC3 Recomp is forked from
- TotK Recomp by Valiantsin Dzerakh, the project XC3 Recomp is forked from
- LAS Recomp
- MacNativeGames
- d2r-mobile and nxnative
- SavageWindRecomp
- Ryujinx
- deko3d
- hactool
- SDL 3, Dear ImGui, AMD FSR 1, AMD FidelityFX SDK (FSR 3), NVIDIA Streamline (DLSS), Vulkan Memory Allocator, libopus, libvpx, Zstandard
- The 60FPS mod for XC3 1.0.1 by Fl4sh_ and StevensND
- Switchbrew and the Switch homebrew community
License
The project's own code is under the MIT License; third-party code keeps its own license (THIRD_PARTY_NOTICES.md). The license grants nothing for Nintendo's game.
XC3 Recomp is an independent, non-commercial fan project, not affiliated with or endorsed by Nintendo. Xenoblade Chronicles 3 and Nintendo Switch are trademarks of Nintendo; Xenoblade Chronicles 3 is developed by Monolith Soft.
Building from source
docs/building.md lists the toolchain and the steps. Everything the build writes stays under build\ and generated\, which git ignores; run tools/check_content.py before a commit. Testers: docs/tester-guide.md.
Most of the code and documentation is written by AI coding agents (Claude Code) under the maintainer's direction; the maintainer plays every build and decides what is merged. AGENTS.md holds the rules they work under.