La biblioteca de utilidades OpenGL® (GLU) es una colección de funciones de programación gráfica que proporciona funcionalidad adicional para las rutinas básicas de OpenGL®. La biblioteca básica de OpenGL® proporciona un marco básico para renderizar gráficos tridimensionales (3D), y OpenGL® GLU implementa funciones que funcionan con el marco para brindarle al programador un conjunto ampliado de herramientas para usar en la realización de operaciones más complejas de una manera más simple. manera. También hay varias funciones dentro de OpenGL® GLU que hacen que los tipos primitivos avanzados, como cilindros y esferas, estén fácilmente disponibles. Además de la compatibilidad con sistemas de modelado complejos, la GLU también incluye funciones para realizar operaciones matriciales, traducciones convenientes para la cámara de escena y la ventana gráfica, y más envoltorios de funciones legibles por humanos para el procesamiento de gráficos 3D común.
Las características de OpenGL® GLU intentan ampliar las funciones básicas que se incluyen en la biblioteca estándar de OpenGL®. En lugar de centrarse simplemente en renderizar polígonos individuales, la GLU intenta proporcionar más funciones que ayuden a crear y gestionar escenas completas. Estos incluyen una serie de rutinas que facilitan la traducción de la posición de la cámara alrededor de puntos arbitrarios, así como funciones simplificadas que ayudan a establecer el volumen de visualización.
Otra parte de OpenGL® GLU que no está en la biblioteca básica es la implementación de formas primitivas avanzadas. Mientras que la biblioteca estándar solo proporciona funciones para dibujar triángulos o polígonos, la GLU tiene funciones que pueden construir objetos como esferas, cajas y cilindros. Aunque estas funciones pueden ser escritas fácilmente por un programador de gráficos 3D, puede ahorrar tiempo al usar versiones que ya están probadas y sin errores.
Además de las primitivas de forma, también hay soporte básico para b-splines racionales no uniformes (NURBS). Estas son formas geométricas muy eficientes que pueden doblarse y fluir orgánicamente y usan muy poca memoria. El soporte para NURBS en GLU permite que un programador o artista tenga casi total libertad para diseñar formas y objetos dentro de una escena.
Una capacidad de alto nivel que proporciona OpenGL® GLU es un marco de mapeo mip. Mipmapping es una forma de mapeo de texturas que ayuda a aumentar la velocidad de renderizado de una escena. Esto se logra utilizando más de una imagen para la textura. Cada textura está hecha de varias imágenes similares, cada una más pequeña y menos detallada que la anterior, por lo que los objetos que están a distancia usan texturas menos detalladas y, en consecuencia, se renderizan mucho más rápido.