Status
July 2006
After about a year of GLUI 2.3 sitting around in CVS, finally a new
official release! We've skipped right past 2.3 and gone straight to
GLUI 2.35 (release notes).
GLUI 2.35 includes not only the never-released changes
made for 2.3, but also several tasty new improvements submitted by
Alain Daurat and Orion Sky Lawlor.
March 2005
GLUI website migration to SourceForge.
Some new features are being merged into CVS.
What is GLUI?
GLUI is a GLUT-based C++ user interface library which provides
controls such as buttons, checkboxes, radio buttons, and spinners
to OpenGL applications. It is window-system independent, relying
on GLUT to handle all system-dependent issues, such as window
and mouse management.
Features of the GLUI User Interface Library include:
- Complete integration with GLUT toolkit
- Simple creation of a new user interface window with a single line of code
- Support for multiple user interface windows
- Standard user interface controls such as:
- Buttons
- Checkboxes for boolean variables
- Radio Buttons for mutually-exclusive options
- Editable text boxes for inputting text, integers, and floating-point values
- Spinners for interactively manipulating integer and floating-point values
- Static text fields
- Panels for grouping sets of controls
- Separator lines to help visually organize groups of controls
- Controls can generate callbacks when their values change
- Variables can be linked to controls and automatically updated when the value of the control changes ("live variables")
- Controls can be automatically synchronized to reflect changes in live variables
- Controls can trigger GLUT redisplay events when their values change
- Layout and sizing of controls is automatic
- Controls can be grouped into columns
- User can cycle through controls using Tab key
What does GLUI look like?
Here's an example GLUI window, showing the different controls. This
window is rendered entirely in OpenGL. It therefore looks the same on
PCs, Macs, SGIs, and other Unixes, using either SGI's implementation
of OpenGL, Microsoft's, or Mesa's.

New in Version 2
GLUI version 2 includes the following new features and controls:
- GLUI controls within the main graphics window.
- Functions for cleanly destroying GLUI windows and subwindows.
- Functions for hiding and showing GLUI windows and subwindows.
- A sync_live_all() for automatically synchronizing all live variables in all GLUI windows simultaneously.
- Rollouts - collapsible panels for reducing screen clutter.
- Listboxes - allows the user to choose an item from a list of strings.
- Rotation and translation controllers - for easily receiving 3D interaction input from the user.
Here is a screenshot (from Windows) showing all the GLUI version 2.0 controls:

And another screenshot (from X-Windows/Mwm), showing the new features, including
GLUI subwindows docked inside the main graphics window.

This screenshot (from Windows) shows the new widgets in GLUI 2.3, including
scrollbars, a list widget, an area text widget, and a simple file browser.

Version 2.35
Version 2.2
Files hosted by SourceForge
Versions previous to GLUI 2.2 are available.
License Information
GLUI is licensed under LGPL.
Projects Using GLUI
- Doris - a script driven OpenGL viewer using Lua.
Wish List
- Convert documentation to LaTeX
- Doxygen documentation
- Feature request: Floating controls over a 3D canvas
Links