The OpenGL Utility Toolkit ( GLUT ) is a library of utilities for OpenGL programs, which primarily perform system-level I/O with the host operating system . Functions performed include window definition, window control, and monitoring of keyboard and mouse input. Routines for drawing a number of geometric primitives (both in solid and wireframe mode) are also provided, including cubes , spheres and the Utah teapot . GLUT also has some limited support for creating pop-up menus.
7-458: GLUT was written by Mark J. Kilgard , author of OpenGL Programming for the X Window System and The Cg Tutorial: The Definitive Guide to Programmable Real-Time Graphics , while he was working for Silicon Graphics Inc. The two aims of GLUT are to allow the creation of rather portable code between operating systems (GLUT is cross-platform ) and to make learning OpenGL easier. Getting started with OpenGL programming while using GLUT often takes only
14-513: A fork of FreeGLUT, adds a number of new features to the original API, but work on it ceased in May 2005. Mark Kilgard has a GitHub repository for GLUT. The glut.h header file contains the following license: Some of GLUT's original design decisions made it hard for programmers to perform desired tasks. This led many to create non-canon patches and extensions to GLUT. [1] Some free software or open source reimplementations also include fixes. Some of
21-518: A GLUT framework that supports its own NSGL/ CGL . Kilgard's GLUT library is no longer maintained, and its license did not permit the redistribution of modified versions of the library. This spurred the need for free software or open source reimplementations of the API from scratch. The first such library was FreeGLUT , which aims to be a reasonably close reproduction, though introducing a small number of new functions to deal with GLUT's limitations. OpenGLUT,
28-417: A few lines of code and does not require knowledge of operating system–specific windowing APIs . All GLUT functions start with the glut prefix (for example, glutPostRedisplay marks the current window as needing to be redrawn). The original GLUT library by Mark Kilgard supports the X Window System ( GLX ) and was ported to Microsoft Windows ( WGL ) by Nate Robins . Additionally, macOS ships with
35-483: Is the lead author of the NV path rendering extension—a GPU-accelerated method for rendering vector graphics . Kilgard graduated from Rice University . He has written two books: OpenGL for the X Window System (1996), and The Cg Tutorial (2003), co-authored with Randima Fernando. This biographical article relating to a computer specialist is a stub . You can help Misplaced Pages by expanding it . This article about
42-775: The OpenGL Utility Toolkit , better known as GLUT, to make it easy to write OpenGL-based 3D examples and demos. The primary reason for this was the lack of a windowing and input API with OpenGL using GLX. Mark Kilgard wrote and released many OpenGL technical sample programs during the pushback against Microsoft's competitive FUD against the API, and his GLUT toolkit (ported to Windows by Nate Robins ) allowed these examples to run cross platform on Windows PC systems as well as SGI workstations. At Nvidia, Mark Kilgard has helped design important parts of 3D graphics APIs. He has written key whitepapers, including " Cg in Two Pages". He
49-446: The more notable limitations of the original GLUT library include: Since it is no longer maintained (essentially replaced by the open source FreeGLUT ) the above design issues are still not resolved in the original GLUT. Mark Kilgard Mark J. Kilgard is a graphics software engineer working at Nvidia . Prior to joining Nvidia, Mark Kilgard worked at Compaq and Silicon Graphics . While at Silicon Graphics, he authored
#352647