libfixgl logo
The libfixgl project begins!

Welcome to the brand-new libfixgl project web page!

libfixgl, is an implementation of the OpenGL standard for realtime 3D graphics, based on fixed point arithmetic. Apart from doing all the internal mathematics (such as transformations, lighting, and rasterization) in fixed point arithmetic, it also provides alternative API entry points using fixed point arguments. Of course the regular floating point interface is still there too, acting as wrappers for the fixed point functions. So for example there are both a glVertex3f function and a new fixed point version called glVertex3x

The objective of this project is to produce a full-featured, fast, and usable implementation of OpenGL for handheld consoles such as the GP2X, GP32, GBA, or other FPU-less embedded devices. However you are free to use it anywhere you see fit, since the code is completely platform-independent ANSI/ISO C.

If you are interested in contributing a patch to the project, make sure you have checked out the latest SVN snapshot (svn co https://svn.sourceforge.net/svnroot/libfixgl), and do send me an email to let me know what you will be implementing. An grossly incomplete list of tasks to be done is available at the sourceforge project page

Shots
libfixgl on GP2X
The libfixgl example running on a GP2X
ambient occlusion on GP2X
libfixgl-based precomputed ambient occlusion on a GP2X
2D physics game on GP2X
libfixgl used to port an OpenGL 2D physics game to the GP2X