Hvad er en OpenGL® Framebuffer?
Open Graphics Library® (OpenGL®) framebuffer er et kodende objekt, der forenkler bufferkodning til gengivelse. En primær anvendelse til OpenGL® framebuffer er at tilføje grafiske effekter til et billede, som normalt er en funktion, der er forbundet med grafiske designprogrammer. En anden anvendelse af OpenGL® framebuffer er at tilføje tekstur til et billede, såsom statisk eller sløring. Mens effekter og teksturer kan se godt ud på egen hånd, er framebufferen relativt ubrugelig, medmindre der er et billede, som man kan binde effekterne eller teksturer til; ellers vises intet. Når rammebufferen bruges, kombinerer den flere andre buffere, hvilket gør pooling af de grafiske ressourcer mere effektiv end hvis bufferne blev brugt separat.
Almindelige grafiske designprogrammer har en liste over specialeffekter, der kan føjes til et billede, men at udføre den samme procedure i OpenGL® er temmelig kompliceret. Når OpenGL® framebuffer bruges, placeres det et billede gennem mange lysskyere, der er i stand til at skabe per-pixel-effekter. Dette betyder, at der kan anvendes komplekse effekter på OpenGL®-billedet, hvilket gør det lettere at tilføje effekter og for at disse effekter skal være visuelt konsistente.
Der er mange strukturer i den fysiske verden - næsten ethvert objekt har en visuelt adskilt struktur. Hvis et OpenGL®-projekt skal efterligne virkeligheden, er det vigtigt at kunne anvende en struktur. Der er nogle få metoder til at tilføje en struktur i dette program, men OpenGL® framebuffer er en af de lettere metoder. Ved at bruge dette objekt kan en tekstur påføres et område eller et grafisk objekt via en lille mængde kode.
Et problem med OpenGL® framebuffer er, at det ikke kan fungere af sig selv; der skal være et andet billede, der ledsager effekterne, eller der vises intet på skærmen. Effekter og teksturer anvendes på et billede, så denne begrænsning sjældent præsenterer sig selv. Når en bruger opretter et framebuffer-objekt, er det vigtigt, at framebufferen og billedet har samme størrelse, eller der vil være områder uden effekter eller teksturer. De to skal også være bundet sammen, ellers er billedet muligvis ikke korrekt under betjening.
En anden grund til at bruge OpenGL® framebuffer er, at den bruger flere andre buffere samtidig. Ikke kun gør det meget lettere at koordinere buffere, men det er nødvendigt med færre ressourcer til at køre framebuffer sammenlignet med at bruge de andre buffere separat. De anvendte buffere er farver, indeks, dybde, stencil og render buffere.