Update README.md

This commit is contained in:
Luke Street
2026-05-05 12:12:09 -06:00
parent bd464e536d
commit 6f8ebcb52e
4 changed files with 29 additions and 285 deletions
-266
View File
@@ -1,266 +0,0 @@
# GX API Support
- GXBump
- [x] GXSetNumIndStages
- [x] GXSetIndTexOrder
- [x] GXSetIndTexCoordScale
- [x] GXSetIndTexMtx
- [x] GXSetTevIndirect
- [x] GXSetTevDirect
- [x] GXSetTevIndWarp
- [ ] GXSetTevIndTile
- [ ] GXSetTevIndBumpST
- [ ] GXSetTevIndBumpXYZ
- [ ] GXSetTevIndRepeat
- GXCull
- [x] GXSetScissor
- [x] GXSetCullMode
- [ ] GXSetCoPlanar
- GXDispList
- [x] GXBeginDisplayList (stub)
- [x] GXEndDisplayList (stub)
- [x] GXCallDisplayList
- GXDraw
- [ ] GXDrawCylinder
- [ ] GXDrawTorus
- [ ] GXDrawSphere
- [ ] GXDrawCube
- [ ] GXDrawDodeca
- [ ] GXDrawOctahedron
- [ ] GXDrawIcosahedron
- [ ] GXDrawSphere1
- [ ] GXGenNormalTable
- GXFifo
- [x] GXGetGPStatus (stub)
- [ ] GXGetFifoStatus
- [x] GXGetFifoPtrs (stub)
- [x] GXGetCPUFifo (stub)
- [x] GXGetGPFifo (stub)
- [ ] GXGetFifoBase
- [ ] GXGetFifoSize
- [ ] GXGetFifoLimits
- [ ] GXSetBreakPtCallback
- [ ] GXEnableBreakPt
- [ ] GXDisableBreakPt
- [x] GXInitFifoBase (stub)
- [x] GXInitFifoPtrs (stub)
- [ ] GXInitFifoLimits
- [x] GXSetCPUFifo (stub)
- [x] GXSetGPFifo (stub)
- [x] GXSaveCPUFifo (stub)
- [ ] GXSaveGPFifo
- [ ] GXRedirectWriteGatherPipe
- [ ] GXRestoreWriteGatherPipe
- [ ] GXSetCurrentGXThread
- [ ] GXGetCurrentGXThread
- [ ] GXGetOverflowCount
- [ ] GXResetOverflowCount
- GXFrameBuffer
- [x] GXAdjustForOverscan
- [x] GXSetDispCopySrc (stub)
- [x] GXSetTexCopySrc
- [x] GXSetDispCopyDst (stub)
- [x] GXSetTexCopyDst
- [ ] GXSetDispCopyFrame2Field
- [ ] GXSetCopyClamp
- [x] GXSetDispCopyYScale (stub)
- [x] GXSetCopyClear
- [x] GXSetCopyFilter (stub)
- [x] GXSetDispCopyGamma (stub)
- [x] GXCopyDisp (stub)
- [x] GXCopyTex
- [ ] GXGetYScaleFactor
- [ ] GXGetNumXfbLines
- [ ] GXClearBoundingBox
- [ ] GXReadBoundingBox
- GXGeometry
- [x] GXSetVtxDesc
- [x] GXSetVtxDescv
- [x] GXClearVtxDesc
- [x] GXSetVtxAttrFmt
- [ ] GXSetVtxAttrFmtv
- [x] GXSetArray
- [x] GXBegin
- [x] GXEnd
- [x] GXSetTexCoordGen2
- [x] GXSetNumTexGens
- [ ] GXInvalidateVtxCache
- [ ] GXSetLineWidth
- [ ] GXSetPointSize
- [ ] GXEnableTexOffsets
- GXGet
- [ ] GXGetVtxDesc
- [ ] GXGetVtxDescv
- [ ] GXGetVtxAttrFmtv
- [ ] GXGetLineWidth
- [ ] GXGetPointSize
- [x] GXGetVtxAttrFmt
- [ ] GXGetViewportv
- [x] GXGetProjectionv
- [ ] GXGetScissor
- [ ] GXGetCullMode
- [x] GXGetLightAttnA
- [x] GXGetLightAttnK
- [x] GXGetLightPos
- [x] GXGetLightDir
- [x] GXGetLightColor
- [x] GXGetTexObjData
- [x] GXGetTexObjWidth
- [x] GXGetTexObjHeight
- [x] GXGetTexObjFmt
- [x] GXGetTexObjWrapS
- [x] GXGetTexObjWrapT
- [x] GXGetTexObjMipMap
- [ ] GXGetTexObjAll
- [ ] GXGetTexObjMinFilt
- [ ] GXGetTexObjMagFilt
- [ ] GXGetTexObjMinLOD
- [ ] GXGetTexObjMaxLOD
- [ ] GXGetTexObjLODBias
- [ ] GXGetTexObjBiasClamp
- [ ] GXGetTexObjEdgeLOD
- [ ] GXGetTexObjMaxAniso
- [ ] GXGetTexObjLODAll
- [ ] GXGetTexObjTlut
- [ ] GXGetTlutObjData
- [ ] GXGetTlutObjFmt
- [ ] GXGetTlutObjNumEntries
- [ ] GXGetTlutObjAll
- [ ] GXGetTexRegionAll
- [ ] GXGetTlutRegionAll
- GXLighting
- [x] GXInitLightAttn
- [x] GXInitLightAttnA
- [x] GXInitLightAttnK
- [x] GXInitLightSpot
- [x] GXInitLightDistAttn
- [x] GXInitLightPos
- [x] GXInitLightColor
- [x] GXLoadLightObjImm
- [ ] GXLoadLightObjIndx
- [x] GXSetChanAmbColor
- [x] GXSetChanMatColor
- [x] GXSetNumChans
- [x] GXInitLightDir
- [x] GXInitSpecularDir
- [x] GXInitSpecularDirHA
- [x] GXSetChanCtrl
- GXManage
- [x] GXInit (stub)
- [ ] GXAbortFrame
- [ ] GXSetDrawSync
- [ ] GXReadDrawSync
- [ ] GXSetDrawSyncCallback
- [x] GXDrawDone (stub)
- [x] GXSetDrawDone (stub)
- [ ] GXWaitDrawDone
- [x] GXSetDrawDoneCallback (stub)
- [ ] GXSetResetWritePipe
- [x] GXFlush (stub)
- [ ] GXResetWriteGatherPipe
- [x] GXPixModeSync (stub)
- [x] GXTexModeSync (stub)
- [ ] IsWriteGatherBufferEmpty
- [ ] GXSetMisc
- GXPerf
- [ ] GXSetGPMetric
- [ ] GXClearGPMetric
- [ ] GXReadGPMetric
- [ ] GXReadGP0Metric
- [ ] GXReadGP1Metric
- [ ] GXReadMemMetric
- [ ] GXClearMemMetric
- [ ] GXReadPixMetric
- [ ] GXClearPixMetric
- [ ] GXSetVCacheMetric
- [ ] GXReadVCacheMetric
- [ ] GXClearVCacheMetric
- [ ] GXReadXfRasMetric
- [ ] GXInitXfRasMetric
- [ ] GXReadClksPerVtx
- GXPixel
- [x] GXSetFog
- [x] GXSetFogColor
- [ ] GXInitFogAdjTable
- [ ] GXSetFogRangeAdj
- [x] GXSetBlendMode
- [x] GXSetColorUpdate
- [x] GXSetAlphaUpdate
- [x] GXSetZMode
- [ ] GXSetZCompLoc
- [x] GXSetPixelFmt (stub)
- [x] GXSetDither (stub)
- [x] GXSetDstAlpha
- [ ] GXSetFieldMask
- [ ] GXSetFieldMode
- GXTev
- [x] GXSetTevOp
- [x] GXSetTevColorIn
- [x] GXSetTevAlphaIn
- [x] GXSetTevColorOp
- [x] GXSetTevAlphaOp
- [x] GXSetTevColor
- [x] GXSetTevColorS10
- [x] GXSetAlphaCompare
- [x] GXSetTevOrder
- [ ] GXSetZTexture
- [x] GXSetNumTevStages
- [x] GXSetTevKColor
- [x] GXSetTevKColorSel
- [x] GXSetTevKAlphaSel
- [x] GXSetTevSwapMode
- [x] GXSetTevSwapModeTable
- GXTexture
- [x] GXInitTexObj
- [x] GXInitTexObjCI
- [x] GXInitTexObjLOD
- [x] GXInitTexObjData
- [x] GXInitTexObjWrapMode
- [x] GXInitTexObjTlut
- [ ] GXInitTexObjFilter
- [ ] GXInitTexObjMaxLOD
- [ ] GXInitTexObjMinLOD
- [ ] GXInitTexObjLODBias
- [ ] GXInitTexObjBiasClamp
- [ ] GXInitTexObjEdgeLOD
- [ ] GXInitTexObjMaxAniso
- [ ] GXInitTexObjUserData
- [ ] GXGetTexObjUserData
- [x] GXLoadTexObj
- [x] GXGetTexBufferSize
- [x] GXInitTlutObj
- [x] GXLoadTlut
- [ ] GXInitTexCacheRegion
- [ ] GXInitTexPreLoadRegion
- [ ] GXInitTlutRegion
- [ ] GXInvalidateTexRegion
- [x] GXInvalidateTexAll (stub)
- [ ] GXPreLoadEntireTexture
- [ ] GXSetTexRegionCallback
- [ ] GXSetTlutRegionCallback
- [ ] GXLoadTexObjPreLoaded
- [ ] GXSetTexCoordScaleManually
- [ ] GXSetTexCoordCylWrap
- [ ] GXSetTexCoordBias
- GXTransform
- [x] GXSetProjection
- [ ] GXSetProjectionv
- [x] GXLoadPosMtxImm
- [ ] GXLoadPosMtxIndx
- [x] GXLoadNrmMtxImm
- [ ] GXLoadNrmMtxImm3x3
- [ ] GXLoadNrmMtxIndx3x3
- [x] GXSetCurrentMtx
- [x] GXLoadTexMtxImm
- [ ] GXLoadTexMtxIndx
- [ ] GXProject
- [x] GXSetViewport
- [x] GXSetViewportJitter
- [ ] GXSetZScaleOffset
- [ ] GXSetScissorBoxOffset
- [ ] GXSetClipMode
- GXVert
- [x] GXPosition\[n]\[t]
- [x] GXNormal\[n]\[t]
- [x] GXColor\[n]\[t]
- [x] GXTexCoord\[n]\[t]
+29 -19
View File
@@ -1,32 +1,42 @@
# Aurora <div align="center">
<img src="assets/aurora.png" alt="Logo" width="640">
</div>
Aurora is a source-level GameCube & Wii compatibility layer intended for use with game reverse engineering projects. 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 Originally developed for use in [Metaforce](https://github.com/AxioDL/metaforce), a Metroid Prime reverse engineering project.
project. It now powers several completed source ports, including [Dusk](https://github.com/TwilitRealm/dusk).
### Features ### Features
- Application layer using SDL3
- Runs on Windows, Linux, macOS, iOS, tvOS, Android
- GX compatibility layer - GX compatibility layer
- Graphics API support: D3D12, Vulkan, Metal - Graphics API support: D3D12, Vulkan, Metal
- Application layer using SDL - Highly accurate and performant GX implementation
- Runs on Windows, Linux, macOS, iOS, tvOS, Android - Robust pipeline cache system with "transferable" cache support for releases
- Audio support with SDL_audio - Dolphin-compatible texture pack support
- Widescreen & resolution scaling support
- Custom APIs for offscreen rendering
- PAD compatibility layer - PAD compatibility layer
- Utilizes SDL_GameController for wide controller support, including GameCube controllers. - Utilizes `SDL_Gamepad` for wide controller support, including GameCube controller adapters
- *Planned: Wii remote support* - Automatically saves and loads controller bindings and port mappings
- [Dear ImGui](https://github.com/ocornut/imgui) built-in for UI - 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
### GX ### Graphics
The GX compatibility layer is built on top of [WebGPU](https://www.w3.org/TR/webgpu/), a cross-platform graphics API 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. 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/).
Currently, the WebGPU implementation used is Chromium's [Dawn](https://dawn.googlesource.com/dawn/). ![Screenshot](assets/screenshot.png)
See [GX API support](GX.md) for more information. ### License
### PAD Aurora is licensed under the [MIT License](LICENSE).
The PAD compatibility layer utilizes SDL_GameController to automatically support & provide mappings for hundreds of
controllers across all platforms.
BIN
View File
Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 586 KiB