Z-buffer
![]() | Den här artikeln behöver källhänvisningar för att kunna verifieras. (2016-10) Åtgärda genom att lägga till pålitliga källor (gärna som fotnoter). Uppgifter utan källhänvisning kan ifrågasättas och tas bort utan att det behöver diskuteras på diskussionssidan. |
En Z-buffer eller Z-tabell är en tabell som används vid visning av tredimensionell datorgrafik.
Beskrivning
Storleken på tabellen är lika med storleken på den aktuella bildytan, en cell i tabellen för var pixel i bildytan. Tabellens uppgift är att hålla reda på vilka punkter i den tredimensionella vyn som befinner sig närmast betraktaren. Fördelen med en sådan tabell är att de objekt grafiken består av kan renderas utan att i förhand behöva beräkna vilka objekt som skymmer de andra, (om så är fallet).
Funktion
Det hela fungerar på sådant sätt att när en punkt som tillhör ett objekt skall skrivas till bilden så jämförs punktens avstånd till betraktaren med det aktuella värdet i tabellen. Om punkten befinner sig närmare betraktaren än den som finns i tabellen, vilket innebär att den skymmer den tidigare pixeln, så kommer punktens z-värde att skrivas in i tabellen och pixeln skrivas till bildytan. Om den däremot befinner sig längre bort än den tidigare pixeln så skrivs inte heller z-värdet in i tabellen. Punkten är då skymd av den tidigare pixeln och därför inte synlig och kommer därför inte heller att skrivas till bildytan. En tom Z-tabell innehåller det största möjliga avståndet som används vid det aktuella tillfället.
Tekniska detaljer
Z-Tabeller är (oftast) av heltalstyp och kan ha 8 eller 16 bitars "djup". 8-bit ger snabbare hantering men sämre upplösning. Grafikkort som har stöd för 3D-rendering har vanligtvis en Z-tabell inbyggd i hårdvaran och denna brukar gå att ställa in så att den använder önskat bitdjup.