freeglutotwarta implementacja biblioteki GLUT. GLUT (a więc również freeglut) pozwala użytkownikowi tworzyć i zarządzać oknami używającymi OpenGL na wielu platformach. Pozwala również obsługiwać mysz, klawiaturę i dżojstik. freeglut jest w zamierzeniu dokładnym zastępnikiem GLUT i różni się w zaledwie kilku punktach.

freeglut
ilustracja
Autor Pawel W. Olszta, Andreas Umbach, Steve Baker[1]
Aktualna wersja stabilna 3.6.0
(11 czerwca 2024) [±]
System operacyjny wieloplatformowy
Rodzaj API
Licencja MIT
Strona internetowa

Ponieważ GLUT popadł w stagnację, freeglut jest rozwijany by usprawnić to narzędzie. Oprogramowanie jest dostępne na licencji MIT.

Historia

edytuj

Pierwotnie napisany przez Pawła W. Olsztę z pomocą Andreasa Umbacha i Steve'a Bakera. Ponieważ Paweł przestał zajmować się grafiką 3D, przekazał pałeczkę Bakerowi. Steve jest obecnie oficjalnym opiekunem biblioteki freeglut, chociaż większość codziennej pracy wykonuje John Fay.

Paweł zaczął rozwijać freeglut pierwszego grudnia 1999 roku. Projekt jest obecnie praktycznie stuprocentowym zamiennikiem oryginalnego GLUT, z kilkoma zaledwie odstępstwami (takimi jak porzucenie cech specyficznych dla SGI, takich jak obsługa "Dynamic Video Resolution" czy urządzeń "Dials&Buttons") i stale zmniejszającym się zestawem błędów.

freeglut zawiera kilka rozszerzeń w stosunku do GLUT, ale zgodnie z założeniami, nie pojawią się w nim już żadne więcej znaczące funkcje.

Na skutek tych założeń, kilku członków zespołu freeglut stworzyło fork, który nazwali Open GLUT. W planach mieli wiele znaczących rozszerzeń, jednak od maja 2005 projekt nie jest rozwijany.

Status

edytuj

freeglut jest obecnie bardzo stabilny i ma mniej błędów niż oryginalny GLUT. Jednak ponieważ specyfikacja GLUT nie rozstrzyga w jakiej kolejności wywołań zwrotnych, jest możliwe, że programy działające prawidłowo z GLUT zawiodą przy użyciu freeglut, bo przyjmują założenia nigdy nie gwarantowane przez GLUT.

Nowe wersje pojawiają się regularnie, jednak z powodu stabilności i braku nowych funkcjonalności, są coraz rzadziej niezbędne. Może się to zmienić w razie wydania nowej wersji GLUT. Obecnie trwają prace nad wersją 3.0 biblioteki.

freeglut zastępuje GLUT w niektórych dystrybucjach Linuksa. Ponieważ jest zgodny na poziomie binarnym, może być linkowany bez kłopotu z programami skompilowanymi dla GLUT.

Przypisy

edytuj
  1. The freeglut Project :: About. [dostęp 2012-01-31]. (ang.).

Linki zewnętrzne

edytuj