GLUT|ES - The OpenGL|ES Utility Toolkit

The OpenGL Utility Toolkit (GLUT), originally written by Mark Kilgard, is a window system independent toolkit for writing OpenGL programs.

GLUT|ES is a port of the OpenSource freeglut implementation for WinCE and Win32 systems based on OpenGL|ES. Most of GLUT API v.3 functionnalities are present: window creation, callbacks, menus, timers etc. Only functions that cannot exist with OpenGL|ES or are not pertinent have not been ported (like overlays, joysticks on PocketPC, ...).

GLUT|ES is developped by Joachim Pouderoux with the help of Jean-Eudes Marvie. Both are student researchers in the IPARLA Project (LaBRI - INRIA Futurs) at University of Bordeaux, France, which research topics are related to handheld devices.

Latest version

The current version of the GLUT|ES API is 1.0.
The current source code distribution is GLUT|ES is 1.11 (november 21 2005).

GLUT|ES has been compiled, linked and tested successfully with Hybrid Rasteroid, Vincent and Intel® 2700G implementations of OpenGL|ES 1.1.
GLUT|ES is compatible with both OpenGL|ES Common Light (CL) and Common (CM) profiles.

The toolkit supports:

  • Single window for OpenGL|ES rendering (fullscreen only under WinCE)
  • Callback driven event processing
  • Input devices support (stylus and keys)
  • 'idle' routine and timers
  • Cascading pop-up menus
  • Utility routines to generate various solid and wire frame objects
  • Support for stroke and bitmap fonts
  • Miscellaneous window management functions
  • NEW: A file chooser (glutSelectFile)
  • NEW: Support UNICODE strings with TrueType fonts (glutTrueTypeString)
  • NEW: glutInitDisplayString can now be used to manually change the parameters of the EGL config (eg. depth size, stencil buffer etc.)
  • NEW: GLUT|ES project now supports Visual Studio 2005.You can now run your GLUT|ES based applications using the ARM PocketPC and SmartPhone device emulator.
List of supported GLUT v.3.0 functions.


By downloading and using GLUT|ES you agree with the license.

GLUT|ES and GLU|ES are now hosted on the SourceForge project.


First of all, don't miss to read the GLUT|ES Frequently Asked Questions (FAQ).

The doxygen documentation of GLUT|ES can be found here but you can also read the FreeGLUT API documentation.

Documentation for the GLUT API is available in HTML, Postscript and PDF formats.
For general information about GLUT, see's GLUT page or's GLUT FAQ.


Grant James' ZeusCMD web site proposes some tutorials on OpenGL|ES based on the Vincent library.
Tutorials are now available for both GLUT|ES and UG.


Support and bug report:

We are looking for cool demos made using GLUT|ES. Do not hesistate to send us some screenshots, click here.

Developper: Joachim Pouderoux.
Do not hesitate to join our developper team.

Thanks to Intel Corporation for their material support.

This work is partially granted by:

Last update: december 15, 2005 Logo

GLUT|ES running Magellan