Введение

FreeGLUT - это альтернатива библиотеке OpenGL Utility Toolkit (GLUT) с открытым исходным кодом. GLUT (и, следовательно, FreeGLUT) позволяет пользователю создавать и управлять окнами, содержащими контексты OpenGL на широком спектре платформ, а также читать функции мыши, клавиатуры и джойстика. FreeGLUT предназначен для полной замены GLUT и имеет лишь несколько отличий. Поскольку GLUT зашла в стагнацию, FreeGLUT находится в разработке для улучшения инструментария. Он выпущен под лицензией MIT.

История

FreeGLUT был первоначально написан Павлом В. Олшта с вкладом Андреаса Умбаха и Стива Бейкера. Поскольку Павел перестал работать в 3D-графике, он передал эстафету Стива Бейкера. Нынешние организаторы FreeGLUT - Джон Фэй, Джон Циомбикас и Дидерик Нихорстер. 1 декабря 1999 года Павел начал разработку FreeGLUT. Проект теперь практически на 100% заменяет оригинальный GLUT с несколькими отходами (например, отказ от специфических функций SGI, таких как коробка Dials&Buttons и динамическое разрешение видео) и сокращающимся набором ошибок. FreeGLUT содержит несколько улучшений по сравнению с оригинальным GLUT, но в качестве политики, никакие другие значительные функции не будут добавлены. В апреле 2015 года FreeGLUT получил первоначальную поддержку нового протокола сервера отображения Wayland.

Открытый

Некоторые члены команды FreeGLUT, которые хотели добавить функции, разделили код, чтобы создать OpenGLUT. Разработка OpenGLUT прекратилась в мае 2005 года; последний релиз OpenGLUT 0.6.3 был в марте 2005 года.

Статус

FreeGLUT теперь очень стабилен и имеет меньше ошибок, чем оригинальный GLUT. Однако есть места, где оригинальная спецификация GLUT не дает четкого определения того, в каком порядке происходят такие вещи, как обратные вызовы, и возможно, что приложения, работающие под GLUT, потерпят неудачу под FreeGLUT, потому что они предполагают то, что GLUT никогда не гарантировал, что это правда. Новые изменения появляются периодически; однако, поскольку он теперь довольно стабилен и не планируется никаких новых функций, эти обновления требуются все реже и реже. Это изменится, если когда-нибудь будет выпущен новый GLUT. FreeGLUT распространяется вместо GLUT в некоторых дистрибутивах Linux. Поскольку он совместим с версиями выше на двоичном уровне, программы, скомпилированные для GLUT, могут быть связаны с FreeGLUT без проблем.