GLUT ( Open GL Utility T oolkit ) je knihovna nástrojů chráněná autorskými právy Marka J. Kilgarda , která nabízí sadu rutin pro správu oken OpenGL a interakce s operačním systémem (správa klávesnice, myši atd.) Nezávisle na něm a správce oken. Používá se hlavně k vytváření demonstračních programů.
Knihovnu GLUT napsal Mark J. Kilgard , autor OpenGL Programming for the X Window System a The CG Tutorial: The Definitive Guide to Programmable Real-Time Graphics , while working for Silicon Graphics .
GLUT byl napsán za účelem výroby přenosného kódu mezi různými operačními systémy a pro vzdělávací účely. Jeho jednoduchost vám umožňuje nestarat se o systémovou část, která je poměrně složitá, a soustředit se na podstatu samotného programu OpenGL. Vytvoření programu s GLUT trvá jen několik řádků kódu. Kromě toho respektuje konvence a syntaxi OpenGL; názvy funkcí začínají předponou „glut“ a makra „GLUT“ (OpenGL používá předpony „gl“ a „GL“).
Kromě zapouzdření základních funkcí správce oken nabízí GLUT rutiny pro kreslení několika jednoduchých trojrozměrných objektů, jako je koule, krychle, kužel, torus nebo dokonce Newellova známá čajová konvice .
Knihovna GLUT již není ve vývoji a zastavila se ve verzi 3.7 v květnu 1998 . Knihovny open source freeglut a OpenGLUT (které jsou odvozeny z freeglut) nyní nahrazují GLUT. Reimplementují GLUT API a přinášejí do něj nějaké změny. Vytvoření těchto dalších knihoven je způsobeno vágností ohledně licence GLUT, která podle některých neumožňuje redistribuci upraveného kódu.
Zde je příklad programu používajícího GLUT a OpenGL (kompatibilní s freeglut a OpenGLUT). Výsledkem je jednoduché okno s vícebarevným trojúhelníkem uprostřed.
Poté můžeme tento program vyvinout definováním zpětných volání pro akce klávesnice ( glutKeyboardFunc ) nebo myši ( glutMouseFunc ), nebo dokonce s jednoduchým pohybem myši ( glutMotionFunc ), abychom například interaktivně změnili polohu bodů trojúhelníku nebo výběr barev. Viz také jednoduchý interaktivní příklad uvedený v článku OpenGL .