Go to file
Alberto Mardegan c4ca1f8e33 ogc: Use "+" button for middle mouse button 2024-05-11 20:27:24 +03:00
.github/workflows Use /opt/homebrew instead which is the installation directory on ARM mac 2024-05-07 16:44:04 +03:00
altbuild revert accidental altbuild/Makefile changes and expanded the readme slightly 2022-09-05 11:37:18 +03:00
android Unify GLES1 and GLES2 (libraries are compatible and can be co-linked) 2014-06-01 09:24:47 +00:00
include/GL silence annoying GL deprecation warnings on MacOSX 2023-11-13 18:14:30 +02:00
progs resizer demo: silence compile error 2023-04-02 16:12:07 +02:00
src ogc: Use "+" button for middle mouse button 2024-05-11 20:27:24 +03:00
.gitignore minor .gitignore tweaks 2022-05-19 14:37:09 +03:00
AUTHORS preparing for release 3.4.0 2022-10-01 17:21:09 +03:00
CMakeLists.txt OGC: video, joystick, keyboard and mouse support 2024-05-07 17:00:23 +03:00
COPYING Initial revision 2001-07-27 04:35:54 +00:00
ChangeLog changelog update for 3.4.0 2022-10-07 19:12:51 +03:00
FreeGLUTConfig.cmake.in Create cmake package using imported targets. 2015-07-11 21:26:56 +00:00
README.android Move Android docs to the website 2012-05-04 11:19:00 +00:00
README.blackberry Updated BlackBerry references to make note of the change from FREEGLUT_GLES2/1 to FREEGLUT_GLES. 2014-06-24 07:03:16 +00:00
README.cmake Update README.cmake to cover building on recent versions of Visual Studio 2024-05-07 19:21:44 +03:00
README.cygwin_mingw A few fixes in cygwin docs 2012-03-15 20:37:41 +00:00
README.macosx add ARM mac build instructions in README.macosx 2024-05-07 16:57:51 +03:00
README.md readme: minimum cmake version changed to 3.1 2024-04-29 17:55:53 +03:00
README.mingw_cross README.mingw_cross: Clarify + remove autotools instructions since autotools support was removed 2012-06-09 17:23:07 +00:00
README.ogc Update README.ogc 2024-05-07 17:00:23 +03:00
README.win32 note about using near far variable names 2014-01-15 03:22:37 +00:00
android_toolchain.cmake __ANDROID__ is defined in the Android build environment; no need for an extra -DANDROID 2012-04-09 18:35:25 +00:00
blackberry.toolchain.cmake Updated BlackBerry references to make note of the change from FREEGLUT_GLES2/1 to FREEGLUT_GLES. 2014-06-24 07:03:16 +00:00
config.h.in For builds not using cmake, generate fg_version.h to match cmake-specified version number. 2014-08-18 02:00:40 +00:00
freeglut.pc.in Applied Daniel Macks' patch to use ${CMAKE_INSTALL_LIBDIR} instead of 2015-02-18 00:37:05 +00:00
freeglut.rc.in FreeGLUT version number is now only defined in CMake file. All other 2012-03-15 02:30:50 +00:00
mingw_cross_toolchain.cmake mingw_cross: Remove deprecated CMakeForceCompiler 2022-03-30 01:31:09 +02:00

README.md

freeglut

GNU/Linux (X11) build status FreeBSD (X11) build status Windows (MSVC) build status Windows (MSVC 6.0) build status Windows (MinGW) build status MacOS X (X11) build status

OVERVIEW

Freeglut, the Free OpenGL Utility Toolkit, is meant to be a free alternative to Mark Kilgard's GLUT library. Freeglut is free software, distributed under an MIT/X11 style license. You are free to use, modify, and redistribute freeglut with or without modifications (see COPYING for details).

In short, freeglut can be used by OpenGL programs to perform those tasks which would normally require platform-specific code. Tasks like creating a window, creating an OpenGL context and binding it to the window, and processing input events. Freeglut provides a concise and elegant API to handle those tasks, in a platform-independent manner, keeping the application simple and portable.

One of the main goals of freeglut, is maximum compatibility. Freeglut is both source and binary-compatible with the original GLUT, and can be used as a drop-in replacement for it. We take great care to maintain a stable API and ABI, and to introduce any new features and improvements in a way which does not compromise compatibility.

Freeglut can be used with a wide range of OpenGL implementations, from the very early OpenGL 1.0 on SGI computers, to the very latest modern OpenGL versions on current GPUs. It can be used to create a classic OpenGL context, or a versioned core profile or compatibility context. Freeglut can also be used with OpenGL ES, on desktop or mobile devices.

PORTS

Currently supported platforms:

  • UNIX systems with X11 or Wayland (such as GNU/Linux, FreeBSD, IRIX, etc)
  • MS Windows
  • macOS with XQuartz (no native Cocoa support yet)
  • Android (NDK)
  • BlackBerry

Consult the platform-specific readme files for details on the level of support and build instructions.

INSTALLATION

Freeglut relies on cmake (minimum 3.1.0) to generate build files for all the different supported platforms and toolchains.

See README.cmake as a starting point, as well as the other README files for further info.

For those cases where using cmake is inconvenient, we also provide a set of unofficial, unsupported, possibly unmaintained, but potentially useful, alternative build files. See altbuild/README.md for details.

CONTRIBUTING

Patches and pull requests for bugfixes and new features are certainly welcome. Please send patches to the freeglut-developer mailing list (see CONTACT below).

Feel free to report any bugs you encounter, using the github issues system.

Older bug reports and feature requests are still reachable on:

But you are encouraged to use github issues for new ones.

Alternatively you can also send bug reports and feature requests to the freeglut-developer mailing list if you prefer. Extended discussions about new features and design issues for large contributions, are best suited to the mailing list.

CONTACT

FreeGLUT website: http://freeglut.sourceforge.net

FreeGLUT mailing lists:

You need to subscribe before posting to any of our mailing lists. Make sure to avoid selecting "daily digest mode" if you intend to post, so that you can reply properly to specific messages. Also, please do not top-post, and try to send properly formated emails (text, hard-wrapped at 72 columns, no binary or large attachements).