¿Qué es una cadena de intercambio?

Una cadena de intercambio es una serie de FrameBuffers, o ubicaciones en la memoria de la computadora, que se utilizan para representar una imagen antes de que se muestre en un monitor real u otro dispositivo. Siempre hay al menos dos FrameBuffers en una cadena de intercambio porque el primero o activo, el búfer generalmente se identifica como el que se muestra actualmente en la pantalla. Mientras se muestra un FrameBuffer, el siguiente búfer se puede representar y prepararse para la visualización y luego cambiar al dispositivo según sea necesario. El uso de una cadena de intercambio puede eliminar algunos de los problemas que ocurren debido a los conflictos entre el hardware y el tiempo de software, así como los artefactos gráficos que pueden aparecer debido a la representación directamente al dispositivo de visualización.

La forma en que una imagen se muestra en un monitor es realmente solo una cuestión de colocar la secuencia correcta de números en un área especificada de la memoria. Lo que sea en esta área de memoria se dibuja en la pantalla varias veces cada segundo. Se dibuja una pantalla en líneas horizontales desde la esquina superior izquierdaa la esquina inferior derecha. El momento en que la pantalla comienza el siguiente cuadro, cuando se mueve desde la esquina inferior derecha de la pantalla hasta la esquina superior izquierda, se conoce como retrato vertical.

Implementaciones de un búfer de intercambio solo dibujan a la pantalla durante el retroceso vertical. Si este tiempo está apagado, o si un programa intenta dibujar a una pantalla durante los períodos en que se está representando un marco, entonces puede aparecer una anomalía gráfica conocida como lágrima. Esto ocurre cuando la imagen en la memoria del dispositivo de visualización se cambia repentinamente en el medio de la representación, lo que hace que un lado de la pantalla muestre el último cuadro y el resto de la pantalla para mostrar el nuevo.

Al presentar una escena con anticipación en un FrameBuffer, el siguiente cuadro que se muestra ya está preparado y se puede empujar rápidamente a la memoria de visualización para que se muestre. Mientras se muestra una imagen, la siguiente se está dibujando en elFrameBuffer inactivo, también llamado búfer posterior. Esto crea animaciones suaves y efectos visuales que pueden ser exactamente cronometrados para evitar el desgarro.

El término "cadena de intercambio" se conoce más comúnmente como doble búfer o amortiguación triple, dependiendo de la cantidad de cuadros que se dibujan antes del FrameBuffer activo. El uso de algoritmos de sincronización de nanosegundos o milisegundos es una parte esencial del uso de una cadena de intercambio para garantizar que la velocidad de cuadro máxima del monitor no se exceda y que los programas puedan acelerar su propio procesamiento y recursos en un sistema. Emplear una cadena de intercambio, si se implementa correctamente, puede dar como resultado animaciones suaves, independientemente de las propiedades de un dispositivo de visualización o la cantidad de tiempo que lleva renderizar un solo marco de animación.

OTROS IDIOMAS