Triplu tamponare

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 21 iunie 2021; verificarea necesită 1 editare .

Triple buffering în grafica computerizată este un tip de tampon dublu ; o metodă de ieșire a imaginii care evită sau reduce artefactele .

Tripla tamponare permite o ieșire mai rapidă a imaginii în comparație cu tamponarea dublă . În aplicațiile din lumea reală, aceasta implică adesea o încercare de a abstrage operațiunile de generare a graficelor de la sincronizarea cu rata de reîmprospătare a monitorului . De obicei, cadrele sunt desenate sub sau deasupra ratei de reîmprospătare a ecranului (frecvența de cadre variabilă) fără efectele obișnuite pe care le-ar putea provoca acest lucru (și anume pâlpâire, deplasare, rupere). Deoarece programul nu trebuie să interogheze hardware-ul pentru a primi evenimente de actualizare a ecranului, algoritmul este liber să ruleze cât mai repede posibil. Aceasta nu este singura metodă de tamponare disponibilă, dar este cea predominantă pe arhitecturile PC , unde vitezele mașinilor pot varia foarte mult.

O altă metodă de triplu buffering implică sincronizarea cu rata de reîmprospătare a ecranului, folosind un al treilea buffer pur și simplu ca o modalitate de a oferi spațiu liber pentru cererile de modificare în cantitatea totală de grafică redată. Aici tamponul este folosit în adevăratul sens atunci când acționează ca stocare. O astfel de metodă impune cerințe hardware minime crescute , dar oferă o rată de cadre consistentă (față de variabilă).

Triple buffering implică utilizarea a trei buffere, dar metoda poate fi extinsă la orice număr de buffere de care are nevoie aplicația. De obicei, nu există niciun beneficiu în utilizarea a patru sau mai multe tampoane.

Dezavantajele tamponării duble

Dacă sistemul are două buffer-uri, A și B, poate afișa buffer-ul B în timp ce generează o nouă imagine în buffer-ul A. Când imaginea din buffer-ul A este gata, sistemul trebuie să aștepte ca fasciculul de monitor să revină la schimbul de tampon. Această perioadă de așteptare poate fi de câteva milisecunde în care niciunul dintre bufferele nu este atins. În momentul în care scanarea verticală este finalizată, puteți fie să schimbați bufferele A și B, pentru a începe apoi redarea în bufferul B (schimbare de pagină), fie să copiați tamponul A în tamponul B și să desenați în tamponul A.

Beneficiile triple buffering

Dacă sistemul are trei tampoane, A, B și C, nu trebuie să aștepte ca tampoanele să se schimbe. Poate reda bufferul B, redarea tamponului A. Când tamponul A este gata, începe imediat redarea tamponului C. Când există o pauză verticală, tamponul A este afișat și tamponul B este eliberat pentru reutilizare.

Limitările triple buffering

Dacă sistemul umple întotdeauna tamponurile în mai puțin timp decât este necesar pentru afișarea tamponului pe ecran, singurul beneficiu al tamponării triple față de tamponarea dublă este o latență medie de ieșire mai mică.