The Wii video card interface is called 'GX'.
Here are some functions of the main header :
GX_Init, GX_InitFifoBase, GX_SetCPUFifo, GX_Flush, GX_GetDrawSync,
GX_SetDrawSync, GX_DrawDone, GX_TexModeSync, GX_ClearVtxDesc,
GX_LoadProjectionMtx, GX_SetViewport, GX_SetChanAmbColor, GX_Begin,
GX_BeginDispList, GX_CallDispList, GX_End, GX_Position3f32, GX_Normal3f32,
GX_Color4u8, GX_TexCoord2f32, GX_AdjustForOverscan, GX_SetCurrentMtx,
GX_SetZTexture, GX_SetZMode, ....
I dont know if this the same interface than the old time 'GX' api.
Anyway, I would like to mention that the purpose is not to have a special
non standard interface but to finish to implement the official openGL API to
be able to use all the current 3D engines.
So yes it is possible to have a complete openGL driver using the Nintendo GX
library at background.
On Tue, Jan 27, 2009 at 9:06 PM, Corbin Simpson
> skaiware skaiware wrote:
> > Dear,
> > Nowadays, we can easily and successfully legally run our own executables
> > the Nintendo Wii video game console, WITHOUT the need to open the console
> > and modify the hardware.
> > It is done using msys, g++, gcc, and many unix like opensource tools on
> > Linux or Win32.
> > Many 2D libs and games have been coded.
> > Very few 3d games has been released because of the lack of a 3D library.
> > The Wii has a personnal 3D API that looks like openGL.
> > Using the MESA implementation example, we have already implemented,
> > compiled, linked and tested few openGL instructions.
> > Here is a screenshot :
> > http://img111.imageshack.us/img111/8620/img0132zn8.jpg
> > There are still many openGL functions that has not been implemented and
> > that are needed to port usual 3D engine like Ogre, Irrlicht,...
> > I could offer some Wii tools (USB-Ethernet, USB Gecko, USB V-Box ) to
> > coder that would help.
> > Contact : skaiware@...
> > Regards
> IIRC the Wii uses GX, right? So it should be possible to make an entire
> driver based on that API, similar to the glide driver, although there
> are a few things that AFAIK don't translate directly, like fragment
> shaders, although I haven't looked at that stuff in a while.