A source-level GameCube & Wii compatibility layer
Go to file
Phillip Stephens 5589b24df6 Add AURORA_WINDOW_MOVED event and add ability to set window position at launch 2023-10-27 14:31:57 -07:00
examples Update submodules; add (very) simple example 2022-07-27 15:15:23 -04:00
extern Upgrade to Imgui 1.89.9-docking 2023-10-27 13:14:42 -07:00
include Add AURORA_WINDOW_MOVED event and add ability to set window position at launch 2023-10-27 14:31:57 -07:00
lib Add AURORA_WINDOW_MOVED event and add ability to set window position at launch 2023-10-27 14:31:57 -07:00
.clang-format Initial commit 2022-07-27 11:25:25 -04:00
.gitignore Initial commit 2022-07-27 11:25:25 -04:00
.gitmodules Initial commit 2022-07-27 11:25:25 -04:00
CMakeLists.txt Transition back to webgpu_cpp; initial emscripten support 2022-08-02 16:37:56 -04:00
GX.md Initial commit 2022-07-27 11:25:25 -04:00
LICENSE Initial commit 2022-07-27 11:25:25 -04:00
README.md Initial commit 2022-07-27 11:25:25 -04:00

README.md

Aurora

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

Originally developed for use in Metaforce, a Metroid Prime reverse engineering project.

Features

  • GX compatibility layer
    • Graphics API support: D3D12, Vulkan, Metal, OpenGL 4.4+ and OpenGL ES 3.1+
    • Planned: deko3d backend for Switch
  • Application layer using SDL
    • Runs on Windows, Linux, macOS, iOS, tvOS (Android coming soon)
    • Audio support with SDL_audio
  • PAD compatibility layer
    • Utilizes SDL_GameController for wide controller support, including GameCube controllers.
    • Planned: Wii remote support
  • Dear ImGui built-in for UI

GX

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.

Currently, the WebGPU implementation used is Chromium's Dawn.

See GX API support for more information.

PAD

The PAD compatibility layer utilizes SDL_GameController to automatically support & provide mappings for hundreds of controllers across all platforms.