A-nárazník - A-buffer

v počítačová grafika, A-nárazník, také známý jako vyhlazený, průměrná plocha nebo akumulační pufr, je obecný mechanismus skrytého povrchu vhodný pro střední virtuální počítače s pamětí. Řeší viditelnost mezi libovolnou kolekcí neprůhledných, průhledných a protínajících se objektů. Pomocí snadno vypočítatelného Fourierova okna (rámečkový filtr) zvyšuje mnohokrát efektivní rozlišení obrazu přes Z-buffer, s mírným zvýšením nákladů.[1]

Metoda A-bufferu je potomkem dobře známého Z-bufferu, který poskytuje dobré výsledky za mírný čas.

Použití

V systému 3D syntézy obrazu byla vždy nutná rovnováha mezi kvalitou a náklady na výpočet. Použití algoritmu viditelného povrchu s plnou přesností objektu u každého pixelu je nákladné. Metoda A-bufferu poskytuje výsledky střední kvality při mírných nákladech na výpočet.

Pomocník A-bufferu při používání technik viditelnosti a podpora všech myslitelných primitiv geometrického modelování: polygony, patche, kvadrics, fraktály atd. Pomáhá také zpracovávat průhlednost a protínající se povrchy (a průhledné protínající se povrchy).

Strategie

Carpenterův algoritmus A-bufferu[1] řeší tento problém aproximací Catmull vzorkování oblasti přesnosti objektu na pixel[2] s operací přesnosti obrazu na pixel na mřížce subpixelů. Polygony jsou nejprve zpracovány v pořadí řádků skenováním oříznutím na každý čtvercový pixel, který zakrývají. Výsledkem je seznam oříznutých fragmentů polygonů odpovídající každému čtvercovému pixelu. Každý fragment má 4 x 8 bitovou masku částí pixelu, který pokrývá.[3]

Bitovou masku pro fragment vypočítal uživatel xoring společně masky představující každý z okrajů fragmentu. Když byly zpracovány všechny polygony protínající pixel, je získán plošně vážený průměr barev viditelných povrchů pixelu výběrem fragmentů v hloubkovém pořadí a jejich bitovými maskami k oříznutí fragmentů vzdálenějších fragmentů.

S bitovými maskami lze efektivně manipulovat Booleovské operace. Například lze přidat dvě masky fragmentových bitů, aby se určilo jejich překrytí. Algoritmus vyrovnávací paměti A uloží s každým fragmentem jen malé množství dalších informací. Například. Zahrnuje rozsah z fragmentu, ale žádné informace o tom, která část fragmentu je spojena s těmito hodnotami z. Algoritmus tedy musí předpokládat geometrii subpixelů v případech, kdy se bitové masky fragmentů překrývají v z.

Reference

  1. ^ A b Tesař, Loren (Červenec 1984). "A-buffer, vyhlazená metoda skrytého povrchu". Počítačová grafika. 18 (3): 103–108. CiteSeerX  10.1.1.210.5497. doi:10.1145/964965.808585.
  2. ^ Catmull, Edwin (Srpen 1978). „Algoritmus se skrytým povrchem s vyhlazováním“ (PDF). Počítačová grafika. 12 (3): 6–11. doi:10.1145/965139.807360. Archivovány od originál (PDF) dne 04.03.2016. Citováno 2015-06-19.
  3. ^ Foley, James D.; Feiner, Steven K .; van Dam, Andries; Hughes, John F. (1995). Počítačová grafika: Principy a praxe v C (2. vyd.). Addison-Wesley. ISBN  978-0-201-84840-3.