¿Qué es una pantalla OpenGL?

En la programación de gráficos por computadora, una pantalla Open Graphics Library® (OpenGL®) es un área de un monitor u otro dispositivo de visualización visual que es administrada total o parcialmente por las bibliotecas y controladores OpenGL®. Una pantalla OpenGL® puede ser una pantalla completa, lo que se conoce como modo de pantalla completa, o puede ser solo el área dentro de una ventana dentro de una interfaz gráfica de usuario (GUI) o un pequeño panel incrustado en un diseño más grande, cuando el más grande OpenGL® no gestiona el diseño. Algunos sistemas operativos y configuraciones de computadora usan OpenGL® como el método predeterminado para dibujar en una pantalla, lo que significa que, técnicamente, todo lo que se muestra en el monitor está contenido en una pantalla OpenGL®.

La mayoría de los usuarios finales no distinguen entre lo que es y lo que no es una pantalla OpenGL®, porque este tipo de aspecto técnico suele ser transparente en la mayoría del software. Sin embargo, desde una perspectiva de programación de gráficos por computadora, una pantalla OpenGL® debe ser una cantidad conocida que se crea con atributos específicos como dimensiones, profundidad de color y otras propiedades. La pantalla en sí es básicamente una cuadrícula cartesiana rectangular que se relaciona con el área rectangular de la pantalla física en la que aparecerá. El hardware de gráficos y los controladores OpenGL® utilizan los atributos de la pantalla OpenGL® durante el proceso de rasterización, que implica convertir objetos tridimensionales (3D) definidos matemáticamente en píxeles bidimensionales (2D) que se colocan en la pantalla. superficie.

En general, una pantalla OpenGL® generalmente no se dibuja directamente en una pantalla visible, principalmente porque crea artefactos visuales y desgarro en la pantalla. En su lugar, la pantalla se adjunta a una ubicación específica en la memoria, llamada búfer, que es atraída por los comandos de dibujo de OpenGL®. Una vez que se renderiza la imagen que se va a mostrar, se copia en la pantalla para que aparezca en la pantalla lo más rápido posible.

Hasta cierto punto, el uso de la pantalla OpenGL® se abstrae para los programadores. Al igual que con muchos aspectos de OpenGL®, hay funciones que pueden definir, dibujar y manipular la pantalla, pero pueden producir resultados variados en diferentes tipos de hardware. Algunas configuraciones, por ejemplo, intentarán escalar automáticamente una pantalla para que se ajuste a un área determinada, independientemente de cuántos píxeles estén contenidos dentro del rectángulo de destino, reduciendo potencialmente la calidad del fotograma renderizado. Sin embargo, incluso con el problema de la calidad variable, en la mayoría de los casos sigue siendo beneficioso tener la capacidad de enviar la salida a cualquier tipo de dispositivo de visualización, independientemente de si se trata de un teléfono móvil, un proyector digital o un casco de realidad virtual.