mirror of
https://github.com/encounter/aurora.git
synced 2026-07-09 18:19:33 -07:00
dda143a42d
* docs: add build instructions to README Resolves #7 Added comprehensive build documentation covering: - Prerequisites (CMake 3.25+, C++20 compiler) - Building included examples - Integrating Aurora into game decomp projects - Available CMake options Verified on macOS with clang by successfully building the simple example. * qa: fix --recursive flag (no submodules) and add missing AURORA_CACHE_USE_ZSTD option - Remove --recursive from clone command: repo uses FetchContent, not submodules - Document AURORA_CACHE_USE_ZSTD option (default: ON) that was missing from the list * move build instructions to docs/building.md
48 lines
2.0 KiB
Markdown
48 lines
2.0 KiB
Markdown
<div align="center">
|
|
<img src="assets/aurora.png" alt="Logo" width="640">
|
|
</div>
|
|
<br/>
|
|
|
|
Aurora is a source-level GameCube & Wii compatibility layer intended for use with game decompilation projects.
|
|
|
|
Originally developed for use in [Metaforce](https://github.com/AxioDL/metaforce), a Metroid Prime reverse engineering project.
|
|
It now powers several completed source ports, including [Dusk](https://github.com/TwilitRealm/dusk).
|
|
|
|
### 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](https://github.com/encounter/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](https://github.com/ocornut/imgui) built-in for simple debug UIs
|
|
- [RmlUi](https://github.com/mikke89/RmlUi) built-in for full-fledged HTML/CSS-based UIs
|
|
|
|
### Graphics
|
|
|
|
The GX compatibility layer is built on top of [WebGPU](https://www.w3.org/TR/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](https://dawn.googlesource.com/dawn/).
|
|
|
|

|
|
|
|
### Building
|
|
|
|
See [docs/building.md](docs/building.md) for build instructions, CMake integration, and configuration options.
|
|
|
|
### License
|
|
|
|
Aurora is licensed under the [MIT License](LICENSE).
|