Significado | Concepto | Definición:

OpenGL®, el lenguaje gráfico abierto, es un código abiertoInterfaz de programación (API) estándar y abstracta para programar gráficos tridimensionales (3D) en programas de computadora. Para que la API funcione cuando se compila y se ejecuta, la computadora que ejecuta el programa debe tener instalados los controladores OpenGL® correctos. Hay muchos tipos de controladores, pero todos tienen el único propósito de actuar como una interfaz entre el código que se escribe utilizando la API de OpenGL® y el hardware que procesa los gráficos. Los controladores de OpenGL® no son desarrollados ni publicados por las personas que mantienen la API de OpenGL®; en cambio, son lanzados por los fabricantes del hardware dentro de la computadora. La única diferencia, en realidad, entre los diferentes tipos de controladores OpenGL® es el código del hardware con el que se interconecta.

OpenGL es una interfaz de programación abstracta (API) de código abierto para programar gráficos tridimensionales (3D) en programas de computadora.

El estándar para OpenGL® eventualmente se convirtió en una plataforma unificada y simple y en una implementación mayormente independiente del lenguaje de funciones gráficas 3D básicas que podrían usarse como una forma de muy bajo nivel para interactuar con hardware. Progresó en esta dirección debido a una cantidad creciente de API 3D patentadas, cada una de las cuales tenía diferentes filosofías de diseño y firmas de funciones. La API fue adoptada por programadores y fabricantes de hardware por igual, porque era de código abierto y no requería la compra de una licencia para su uso de la forma en que lo hacía algún otro sistema operativo o API específicas del lenguaje.

Los controladores básicos de OpenGL® son producidos por los fabricantes de tarjetas gráficas, tarjetas de expansión y aceleradores de gráficos. Esto significa que cada controlador está escrito de acuerdo con especificaciones exactas y precisas para el hardware de destino, y que el hardware se puede fabricar con optimizaciones dirigidas al controlador para aumentar el rendimiento. La aceptación generalizada de la API y la sobrecarga relativamente baja que la acompaña la ha convertido en una opción valiosa para aplicaciones gráficas de alto rendimiento y, a su vez, ha llevado a los fabricantes de hardware a esforzarse por lograr optimizaciones de bajo nivel para complementar ese rendimiento con sus tarjetas. .

En respuesta a los esfuerzos de los fabricantes de hardware, los desarrolladores de OpenGL® proporcionaron un mecanismo que permitiría a los controladores implementar operaciones personalizadas que podrían codificarse en los controladores OpenGL®. Estas características especiales de diferentes piezas de hardware podrían incluirse en la API de OpenGL®. Esto permitiría a un fabricante tener una tarjeta gráfica que admita funciones aceleradas por hardware, como algoritmos de simulación de tejido, y permitiría que la API de OpenGL® llame e interactúe con esa funcionalidad. Estas extensiones proporcionaron un mecanismo a través del cual los controladores OpenGL® y la API podrían convertirse en un mecanismo fluido y extensible para la programación de gráficos 3D.

A partir de 2011, los controladores OpenGL® son individuales para cada pieza de hardware que admita el estándar. No puede haber un controlador único y unificado, porque cada pieza de hardware es claramente diferente y, a veces, utiliza información patentada. Esto significa que, aunque técnicamente existen muchos tipos de controladores OpenGL®, uno para cada tarjeta de hardware, todos realizan exactamente la misma función desde una perspectiva de programación.