Wat is een Swap Chain?

Een swap ketting een reeks framebuffers, of locaties in het computergeheugen, die worden gebruikt om een ​​afbeelding te maken voordat het wordt weergegeven op een echt beeldscherm of ander apparaat. Er zijn altijd minstens twee framebuffers in een swap keten omdat de eerste of actieve buffer wordt gewoonlijk aangeduid als de momenteel op het scherm getoond. Terwijl de ene framebuffer wordt weergegeven, kan de volgende buffer worden gemaakt en voorbereid voor weergave en vervolgens omgezet naar het apparaat als dat nodig is. Met een swap keten sommige problemen die optreden als gevolg van conflicten tussen hardware en software timing, evenals grafische artefacten die kunnen worden weergegeven door rechtstreeks waardoor de weergeefinrichting elimineren.

De manier waarop een beeld wordt weergegeven op een monitor is eigenlijk gewoon een kwestie van het plaatsen van de juiste volgorde van de nummers in een bepaald gebied van geheugen. Wat er ook op dit gebied van het geheugen wordt getekend op het scherm een ​​paar keer per seconde. Een scherm wordt getekend in horizontale lijnen van de linkerbovenhoek naar de rechterbenedenhoek. Het moment waarop het scherm is het starten van de volgende frame, wanneer het beweegt uit de rechterbenedenhoek van het scherm om de linkerbovenhoek, staat bekend als de verticale terugslag.

Implementaties van een swap buffer alleen vestigen op het scherm tijdens de verticale terugslag. Als deze timing niet goed is, of wanneer een programma probeert een scherm te tekenen tijdens periodes waarin een frame wordt weergegeven, dan is een grafische anomalie bekend als een traan kan verschijnen. Dit gebeurt wanneer het beeld op het scherm deviceâ € ™ geheugen plotseling wordt omgezet in het midden van het smeltproces, waardoor één zijde van het beeldscherm naar het laatste frame tonen, en de rest van het scherm om de nieuwe vertonen.

Door het verlenen van een scène van tevoren in een framebuffer, het volgende frame wordt weergegeven is al voorbereid en kan snel worden geduwd in het display geheugen, zodat deze wordt getoond. Terwijl een beeld wordt weergegeven, het volgende wordt getrokken in de inactieve framebuffer, ook wel een back buffer. Dit zorgt voor vloeiende animaties en visuele effecten die precies kan worden getimed om scheuren te voorkomen.

De term "swap chain" is beter bekend als dubbele buffering of triple buffering, afhankelijk van het aantal frames worden getrokken voordat de actieve framebuffer. Met nanoseconde of milliseconde timing algoritmen is een essentieel onderdeel van het gebruik van een swap keten dat de maximale beeldfrequentie van het beeldscherm niet wordt overschreden en programma's kunnen hun eigen verwerking en middelen op een systeem tempo. Gebruikmakend van een swap-keten, indien goed uitgevoerd, kan resulteren in een vloeiende animaties, ongeacht de eigenschappen van een weergave-apparaat of de hoeveelheid tijd die het kost om een ​​enkel frame van de animatie te renderen.