- Add GLUT_ACTIVE_SUPER modifier, and corresponding GLUT_KEY_SUPER_L and GLUT_KEY_SUPER_R special keys. These map to Windows/Command keys.
- Fix RGB mode (GLUT_RGBA) colors on 8bpp displays on windows (construct default RGB332 palette).
- Fix indexed color context creation on X11 and windows (GLUT_INDEX).
- Add missing colormap management functions for X11 and windows (glutSetColor, glutGetColor).
- Fix crash when calling glutTimerFuncUcall.
- Fix FreeBSD build by essentially disabling the joystick code for newer FreeBSD versions. It will eventually need to be replaced/fixed.
- Add fallbacks for the old GLX (<1.3) context creation API (glXChooseVisual/glXCreateContext), makes us compatible with IRIX 5.x and other old UNIX systems.
- Add fallbacks for OpenGL 1.0 (no vertex arrays/client state).
- Use nanosleep instead of usleep on UNIX, which is more widely supported on old UNIX systems.
- Fix build on X11 if GL_SAMPLES is not defined.
- Fix overly strict context version checking on Android leading to context creation failure in some cases.
- Fix GLUT_CURSOR_INFO on windows, should be IDC_HAND, not IDC_HELP.
- Fix mismatched font declarations on X11.
- Add alternative simple ways to build freeglut with native tools only, without having to use cmake.
- Fix build on windows with cmake 3.0.0. Explicitly link with gdi32.
- Fix build on MSVC 2005.
- Fix build on MacOS X. Link with all the necessary X libraries.
- Fix build on SGI IRIX.
- Fix build on Android (mismatched function prototypes and missing glutCreateMenuUcall).
- Add support for the ninja multi-config generator.
- Removed spurious dependency on a C++ compiler. One of the demos was being compiled as C++ for no reason.
- Silence unnecessary warnings when VBOs or GLSL are not available.
- New demo programs: 3dview, keyboard, joystick.
- Documentation: added MacOS X build instructions.
- Made it possible to eventually support building freeglut as a single compilation unit, by avoiding name conflicts on static variables.
- Other minor fixes.
- Fix build with gcc >= 10 which no longer supports COMMON section symbols by default.
- Fix netbsd/aarch64 build.
- Fix android build (default to FREEGLUT_GLES).
- Fix crash when calling primitive drawing functions without creating a
window first.
Minor bugfix release
- Fixed failure to install glut.h when the "replace glut" build option is enabled.
- Take into account CMAKE_INSTALL_LIBDIR in the installed cmake module.
- Fixed broken menu drawing when the user requests a core profile context.
- Added new callback registration functions and corresponding callback types
in the extended API, which take an extra user pointer, and pass it through
to the callbacks (ucall API).
- Initial wayland support.
- Fixed mousewheel callbacks on X11.
- Fallback to non-sRGB context, instead of crashing, if the user requested
sRGB but failed to get one.
- Added GLUT_WINDOW_SRGB query to check if the context supports sRGB or the
fallback was triggered.
- Added missing spaceball support for windows.
- Added init error handler demo.
- Added cmake package.
- Added GLUT_ALLOW_NEGATIVE_WINDOW_POSITION option.
- Added spaceball button definitions in the extended API header.
- Added checking for the XInput dependency in cmake.
- Fixed netbsd build (joystick code).
- Fixed android build with clang.
- Fixed GLUT_STEREO on nvidia windows drivers, which don't play well
with fullscreen windows with frames.
- And a number of other bugfixes ...
Switched the freeglut build system for autotools plus a number of arbitrary
project files, to cmake. See README.cmake for build instructions.
A new bugfix release of "freeglut" is now available. Here is a
incomplete list of fixes and enhancements:
- Visual Studio 2012 project files, and a fix for the disappearing
windows with this toolset.
- X11 menu regression fixed, menu behavior improved on Windows.
- Now using monotonic clock on X11.
- GameMode now doesn't attempt to change unspecified display params to
arbitrary defaults, and not changing display mode when unnecessary to
avoid flicker.
- On Windows, windows no longer attain focus as soon as the mouse
enters them
- Various demo enhancements.
- Many bugs have been fixed.
After two years of quiet maintenance, a new version of "freeglut" has been released. Here are some of the major changes:
- There are now callbacks to support multitouch capability.
- Solaris and OSX support have improved.
- Fullscreen mode and Game mode behave better.
- Addition of Visual Studio 2010 projects & solutions.
- Many bugs have been fixed.
Visit the downloads section to get your hands on the latest release.
The long awaited 2.6.0 release has arrived! This release features:
- Truly full screen windows under X11 when calling
glutFullScreen()
.
- Spaceball support on Linux.
- Addition of the "atexit" hack, making the freeglut Windows DLL binary compatible with GLUT.
- Addition of Visual Studio 2008 projects & solutions.
- Many other fixes.
The Application Programming Interface documentation is now online, in addition to being distributed with the tarball. There have been a few changes to freeglut since the last update to the API documentation, and if anyone would like to make the appropriate updates, the whole project would appreciate it. Despite that, it's nearly wholly up-to-date. Please make good use of it.
The freeglut Project proudly announces freeglut 2.2.0. This version contains:
- Mousewheel Support for Win32 & X11
- More unified Win32/*nix behavior and code
- Code style cleanups
- Visibility support in Win32
- Many other Good Bug Fixes™
[Read the full ChangeLog.]
Click the Downloads link on the left and enjoy!
2.0.1 fixes a number of bugs with menus, especially in the UNIX_X11.
A cake one of our developers
(John Fay) received in honor
of his freeglut work.
freeglut 2.0.0 marks the first true departure from Mark Kilgard's original GLUT library, adding much-requested features while still retaining not only high backward compatibility with older implementations of GLUT, but all the polish of the original -- and more!
This isn't the GLUT you remember.
This is an incomplete list -- there are simply too many improvements to write!
General Improvements:
- You can now control program behavior when a GLUT window is closed by the user, rather than simply exiting. Options include:
- Immediate exit() (old GLUT behavior)
- glutMainLoop() returns to you
- continue execution
- Option to share a rendering context for each new window
- Interruptable glutMainLoop (glutMainLoopEvent, glutLeaveMainLoop)
- Window-specific callback functions (Close, WindowManager Close, Menu destruction)
- User-specified data in Windows and Menus
- Additional font statistics (stroke and bitmap heights...)
- New font functions to allow the user to print strings instead of one character at a time
- New primitives (RhombicDodecahedron, SierpinskiSponge)
- Good-looking menus
XFree86 GameMode improvements:
- force re-establishment of the original video mode by the X server even if the application exits immediately after leaving game mode
- make sure that the X server has finished game mode preparations before continuing; fixes window sliding(missed mouse grab) and application exits.
- fix support for game mode resolution equal to maximum screen resolution
- restore original view port and Pointer position when leaving game mode
Win32 GameMode improvements:
- if desired display frequency for entering game mode is not found, a display mode without matching display frequency is tried.
If you like freeglut, think about helping out with the project. There's always more to be done to enhance the library!
Documentation, example programs, suggestions for improvement -- they're all needed.
Look at the "How You Can Help" section on the left for ideas on how you can do your part!