chess demo
GLUT's "Chess" demo
running with freeglut.

What?

freeglut is a completely OpenSourced alternative to the OpenGL Utility Toolkit (GLUT) library. GLUT was originally written by Mark Kilgard to support the sample programs in the second edition OpenGL 'RedBook'. Since then, GLUT has been used in a wide variety of practical applications because it is simple, widely available and highly portable.

GLUT (and hence freeglut) allows the user to create and manage windows containing OpenGL contexts on a wide range of platforms and also read the mouse, keyboard and joystick functions.

freeglut is released under the X-Consortium license.

Why?

The original GLUT library seems to have been abandoned with the most recent version (3.7) dating back to August 1998. Its license does not allow anyone to distribute modified library code. This would be OK, if not for the fact that GLUT is getting old and really needs improvement. Also, GLUT's license is incompatible with some software distributions (e.g., XFree86).

Who?

freeglut was originally written by Pawel W. Olszta with contributions from Andreas Umbach and Steve Baker. Steve is now the official owner/maintainer of freeglut.

When?

Pawel started freeglut development on December 1st, 1999. The project is now virtually a 100% replacement for the original GLUT with only a few departures (such as the abandonment of SGI-specific features such as the Dials&Buttons box and Dynamic Video Resolution) and a shrinking set of bugs.

There are some additional features such as a larger set of predefined shapes for use in applications.

Help out!

FreeGLUT 3.0 is in active development, and will feature a port to Android as well as a host of other enhancements. We are looking for developers to help out with further work on the Android port. Furthermore, ports to Cocoa/Carbon on OSX, and maybe even Wayland are planned. For more information, see the Help Out page and join the freeglut-developer mailing list.
Note that the FreeGLUT 3.0 enhancements are already in the API docs on the website, some of these will not work with the currently available 2.8.1 release.

Downloads...

Below are file links for the freeglut project. README files are included. Have fun!

Testing Releases

The port to Andriod as well as other API and implementation enhancements (e.g., move to CMake build system, VBO support for geometry) are currently only available in trunk. Feel free to test by downloading a tarball of current trunk, or grabbing a copy from svn, and give us feedback on how it worked for you. All this will eventually become a FreeGLUT 3.0 release.

Stable Releases

Freeglut 2.8.1 [Released: 5 April 2013]
Freeglut 2.8.0 [Released: 2 January 2012]
Freeglut 2.6.0 [Released: 27 November 2009]
Freeglut 2.4.0 [Released: 9 June 2005]
Freeglut 2.2.0 [Released: 12 December 2003]
Freeglut 2.0.1 [Released: 23 October 2003]

Prepackaged Releases

The freeglut project does not support packaged versions of freeglut excepting, of course, the tarballs distributed here. However, various members of the community have put time and effort into providing source or binary rollups, and we thank them for their efforts. Here's a list which is likely incomplete:

Martin Payne's Windows binaries (MSVC and MinGW)
Florian Echtler's MPX Patch

If you have problems with these packages, please contact their maintainers - we of the freeglut team probably can't help.

Development Releases

SVN trunk tarball
Anonymous SVN Instructions

Questions?

Don't be afraid to ask for help. We don't bite. Much.

Send freeglut related questions to the appropriate freeglut mailing list:

Please note that you must subscribe before you can post to our mailing lists. Sorry for the inconvenience.