Files
mitch030504--Wiicompiled_VR…/aurora-main
iChris4andClaude Opus 5 ee5df403ac Merge upstream/main (v0.2.32) into openxr-work
Brings in the keyboard/mouse rebinding overhaul (#162), the Kamek
skip-return hook fixes (#182, #218), the exit button and controller LED
fix (#221), the autohide-cursor and mute hotkey fix (#211), the Linux
--sysroot plumbing (#224) and the switch to the theofficialgman
dawn-build fork (#215).

Conflicts resolved to keep the VR integration intact:

- settings_overlay.cpp/.h: kept both new declarations. The controller
  rebinding UI takes upstream's click-to-rebind widgets wholesale - our
  only edit there was wrapping the combo width in Scaled(), and
  upstream's bindingWidth is already font-relative, so the headset
  panel still scales. Kept our DrawResolutionMenu() extraction (the VR
  panel reuses it) while adopting upstream's DrawExitPrompt() and its
  new DrawTopBar() prologue; kept our Diagnostics menu alongside
  upstream's exit-button width math. HandleEvents merges both keyboard
  paths, with the VR recenter hotkey now guarded by !g_rebind.active so
  it cannot fire while a binding is being captured.

- AuroraDawnProvider.cmake: dropped our now-dead Android hash block.
  Upstream restructured the pins into an if/elseif chain that already
  covers android/aarch64, with the digest for the new dawn-build fork;
  our leftover block was unreachable and carried the old encounter
  digest.

- Version plumbing (Build-Installer.ps1, Setup.Windows Program.cs and
  csproj): kept this fork's own line, which is 0.2.39 and centralised in
  Launcher/Directory.Build.props, rather than regressing to upstream's
  hardcoded 0.2.32.

Verified: translator 654/654; runtime ctest 14/14 including every VR
test; WiiCompiled and RetroRewind link; aurora gx_fifo_tests 262/263,
the one failure being the TevRegisterLiveness case already documented as
pre-existing on this branch.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 23:02:33 +02:00
..
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00
WUP
2026-08-30 11:21:10 +02:00
2026-08-23 17:10:50 +02:00
2026-08-23 17:10:50 +02:00

Logo

Aurora is a source-level GameCube & Wii compatibility layer intended for use with game decompilation projects.

Originally developed for use in Metaforce, a Metroid Prime reverse engineering project. It now powers several completed source ports, including Dusklight.

Features

  • Application layer using SDL3
    • Runs on Windows, Linux, macOS, iOS, tvOS, Android
  • GX compatibility layer
    • Graphics API support: D3D12, Vulkan, Metal
    • Highly accurate and performant GX implementation
    • Robust pipeline cache system with "transferable" cache support for releases
    • Dolphin-compatible texture pack support
    • Widescreen & resolution scaling support
    • Custom APIs for offscreen rendering
  • PAD compatibility layer
    • Utilizes SDL_Gamepad for wide controller support, including GameCube controller adapters
    • Automatically saves and loads controller bindings and port mappings
    • Gyro & mouse support
  • DVD compatibility layer
    • Utilizes nod to support all GameCube/Wii disc image types, including RVZ
  • CARD compatibility layer
    • Full compatibility with Dolphin .gci and .raw for game saves
  • Dear ImGui built-in for simple debug UIs

Graphics

The GX compatibility layer is built on top of WebGPU, a cross-platform graphics API abstraction layer. WebGPU allows targeting all major platforms simultaneously with minimal overhead. The WebGPU implementation used is Chromium's Dawn.

Screenshot

Building

See docs/building.md for build instructions, CMake integration, and configuration options.

License

Aurora is licensed under the MIT License.