#9597

Add GX backend (Gamecube/Wii)

Opendakotathwants to merge intofrom

Adding Nintendo Wii/GC rendering backend for use with Wii/GC homebrew development.

Activity

2
ocornut17d ago

Hello Dakota,

At a cursory glance this looks good. Unfortunately, however cool this is, I am unable to take on maintenance for a fringe-use-case backend.

I suggest you host this on its own repository, e.g. dakotath/imgui_impl_gx, just the two files + README, and I will happily sadd suitable links from wiki and other places.

Also as per #9400, I am open to discussing how to avoid ABGR/RGBA conversion, which you may be able to avoid entirely by defining IM_COL32_R_SHIFT, IM_COL32_G_SHIFT, IM_COL32_B_SHIFT, IM_COL32_A_SHIFT, IM_COL32_A_MASK if deemed useful. But I would guess the current backend it's only used for infrequent texture updates and probably. I was surprised by using an immediate mode graphics API aka GX_Begin(), GX_Position3f32() etc. instead of a full buffer copy but it seems like it is what maps to the HW for uploads, as per https://github.com/devkitPro/libogc/blob/959871c08ed80d1a63b258bc207218623ea1b0e5/gc/ogc/gx.h#L2122.