Vyhlazení obrazovky

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 20. prosince 2015; kontroly vyžadují 88 úprav .

Anti - aliasing  je technologie používaná při zpracování obrazu k  vyhlazení hranic zakřivených čar a odstranění „zuby“ , které se objevují na okrajích objektů . Anti-aliasing byl poprvé aplikován v roce 1972 na Massachusetts Institute of Technology skupinou Architecture Machine Group , která se později stala hlavní součástí MIT Media Lab .

Základní princip vyhlazování

Základním principem vyhlazování je využití schopností výstupního zařízení pro zobrazení odstínů barev , kterými je křivka vykreslena. V tomto případě pixely sousedící s pixelem okraje obrázku nabývají střední hodnoty mezi barvou obrázku a barvou pozadí, vytvářejí přechod a rozmazávají hranice.

Existují dvě možnosti vyhlazení:

Je třeba poznamenat, že anti-aliasing závisí na gama monitoru. Zejména průměr mezi 0,2 a 0,8 není nutně 0,5, ale . To je patrné zejména na jemných vzorech a textu . Nejkvalitnější anti-aliasing je proto získán pouze tehdy, když je znám.

Typy vyhlazování

Poznámka: Anti-aliasing ovlivňuje snímkovou frekvenci (snímky za sekundu) v závislosti na šířce pásma (šířce pásma paměti) grafické karty.

SSAA

Super sample A nti - A liasing - oversampling anti-aliasing [1] , nazývaný také high-grade nebo full-screen anti-aliasing [2] , se používá k opravě "zubatých" aliasingů v celoobrazovkových obrázcích [3] . SSAA byl k dispozici na prvních grafických kartách, až po DirectX 7 . Je zahrnuta jako funkce v řadě AMD HD6XXX (pouze pro hry DirectX 9 ) a byla zahrnuta do ovladačů NVIDIA Fermi pro všechny hry od her s rozhraním DirectX 9 po hry s rozhraním DirectX 11 pomocí jakékoli grafické karty NVIDIA , která podporuje DirectX 10 a vyšší. .

Výsledkem je, že obraz SSAA vypadá měkčí a realističtější. Fotografické obrázky s jednoduchým vyhlazováním (jako je supervzorkování a následné zprůměrování) však mohou zhoršit vzhled některých typů čar nebo grafů (obrázek bude vypadat rozmazaně), zejména tam, kde jsou čáry nejvíce vodorovné nebo svislé. V těchto případech lze použít hinting .

Vyhlazování na celé obrazovce umožňuje eliminovat charakteristické "zuby" na hranicích polygonů . Je však třeba vzít v úvahu, že vyhlazování na celé obrazovce silně zatěžuje grafickou kartu, což vede k poklesu snímkové frekvence .

Kvalita vyhlazování je omezena šířkou pásma video paměti , takže grafická karta s rychlou pamětí bude schopna vypočítat vyhlazování na celé obrazovce s menším dopadem na výkon než slabá grafická karta . Anti-aliasing lze povolit v různých režimech. Například x4 anti-aliasing vytvoří lepší obraz než x2 anti-aliasing, ale výrazně sníží výkon. Anti-aliasing SSAAx2 zdvojnásobuje rozlišení , zatímco SSAAx4 jej zčtyřnásobuje [4] .

MSAA

M ulti sample A nti-A liasing je algoritmus pouze pro nahrazení geometrie , který nahrazuje SSAA, čímž poskytuje podobný antialiasingový efekt jako SSAA, ale při nižší zátěži.

CSAA

C overage Sampling A nti-A liasing je pokračováním „evoluce“ SSAA➔MSAA➔CSAA . Zlepšení je dosaženo díky tomu, že se do framebufferu přenáší více informací o dílčím vzorku ze sousedního pixelu. Což v konečném důsledku pomáhá vypočítat přesnější vyhlazování. Při stejných úrovních (x2, x4, x8...) CSAA a MSAA bude kvalita u CSAA vždy vyšší a jsou si rovny z hlediska zatížení.

QCSAA

Kvalita C Sampling Anti- A liasing je vylepšená verze CSAA díky použití dvojnásobného množství vzorků pro analýzu.

AAA

Adaptivní A nti-A liasing - MSAA má problém s vyhlazováním hran na průhledných objektech. Tento algoritmus je navržen tak, aby tento problém odstranil. Jedná se o sloučení MSAA a SSAA . Tento typ se doporučuje pro majitele výkonných grafických karet. Používá pouze AMD .

TrAA

Transparency A nti-A liasing je podobný AAA, ale od Nvidie .

CFAA

Vlastní filtr A nti -A liasing je algoritmus, který obsahuje 4 filtry: box, úzký-stan, široký-stan a okraj-detekce. Každý filtr představuje jiný přístup k implementaci MSAA. Používá pouze AMD .

TXAA

Časové přiblížení A nti-A liasing je algoritmus od Nvidie , který používá rámec MSAA. Výpočtový vzorec používá čas, data pixelů z předchozích snímků a data ze zpracované scény. Poté se provede průměrování barev. To vám umožní zbavit se blikání a škubání předmětů ve hře. Na dálku podává kvalitní obraz, ale blízké předměty jsou trochu namydlené a zátěž je skoro jako u MSAA, i když kvalita je při stejných hodnotách lepší. Podle vývojáře: TXAAx2 je kvalitou srovnatelný s MSAAx8, ale z hlediska zatížení je srovnatelný s MSAAx2 a TXAAx4 je kvalitnější než MSAAx8, ale z hlediska zatížení je srovnatelný s MSAAx4. Vynikající pro vyhlazení dynamiky.

TAA

Temporal A nti - A liasing je analog TXAA, ale ne od Nvidie .

TSSAA

Temporal Super Sampling Liasing nti-A je analogem TXAA , ale není vázán na grafické karty Nvidia a je založen na supersamplingu .

FXAA

Rychlý přibližně X imate Anti - A liasing je algoritmus od Nvidie [5] , což je jednoprůchodový pixel shader , který vypočítává výsledný snímek v následném zpracování. Jde o produktivnější řešení oproti tradičnímu MSAA, které však ovlivňuje přesnost práce a kvalitu obrazu.

MLAA

M orfo lo gické Anti-A spojení je analogem FXAA od Intelu . Hledá „zubaté“ okraje na každém snímku, podobné písmenům Z, L nebo U, a míchá barvy sousedních pixelů obsažených v každé takové části. Algoritmus byl přeložen tak, aby používal procesor , nikoli grafickou kartu. Lze jej tedy doporučit majitelům slabých grafických karet s více či méně produktivním procesorem. Díky složitějšímu algoritmu je obraz kvalitnější než FXAA. AMD implementaci má , ale technicky by ji mohla využít i Nvidia . Má problém: anti-aliasing nefunguje na průhledných texturách. Kromě tohoto následného zpracování je tedy potřeba pro vylepšení obrazu připojit i TrAA nebo AAA. Doba zpracování trvá 0,9 ms . Na grafických kartách jsou implementovány také algoritmy MLAA .

MFAA

M ulti frame Sample A nti-A liasing je algoritmus od Nvidie , exkluzivně pro grafické karty generace Maxwell . Díky prokládání pozic vzorků má MFAAx4 stejný dopad na výkon jako MSAAx2, ale poskytuje kvalitu obrazu na stejné úrovni jako MSAAx4. [6]

SRAA

Rekonstrukce subpixelů A nti-A liasing je dvouprůchodový algoritmus od Nvidie . Velmi podobný MLAA, ale pracuje s hloubkovými buffery a normálními mapami , proto lépe definuje hranice pro vyhlazování a stínované okraje. Doba provádění je obecně velmi krátká, většinu času v algoritmu stráví zpracováním stínování. Ve výstupu se mohou objevit artefakty. Pro srovnání, vyhlazování obrazu s rozlišením 1280x720 (HDV 720p) trvá asi ~5-10 ms pomocí SSAA a 1,8 ms pro SRAA .

SMAA

S ubpixel M orphological A nti- A liasing je kombinací MSAA, SSAA a MLAA. V podstatě vylepšená MLAA s přidáním místního kontrastu, hledáním vzorů a použitím více vzorků. Někdy může být přidáno dočasné převzorkování. Spotřebovává více zdrojů než MLAA, ale používá grafickou kartu , nikoli procesor .

Najdete odrůdy:

CMAA

Konzervativní M orfologický A nti- A liasing je kombinací FXAA a SMAAx1 . Ideální pro slabé a střední grafické karty . Rozdíl oproti FXAA je způsoben zpracováním okrajových čar dlouhých až 64 pixelů . Je použit algoritmus, který zpracovává pouze symetrické zlomy barev, aby se zabránilo zbytečnému rozmazání. Rozdíl oproti SMAAx1 je způsoben méně úplným vyhlazováním objektů, protože se zpracovává méně typů tvarů a má zvýšenou časovou stabilitu, tedy méně blikání objektů.

Viz také

Poznámky

  1. AnandTech – Radeon HD 5870 od AMD: Přináší novou generaci GPU
  2. Jason Gregory a Jeff Lander. Architektura herního enginu (neurčeno) . A. K. Peters, Ltd.  , 2009. - S. 39. - ISBN 9781568814131 .
  3. M. Carmen Juan Lizandra. Grafické knihovny pro programování Windows (neopr.)  // Crossroads, the ACM Student Magazine. - ACM, 2000. - Červen ( vol. 6 , č. 4 ). - doi : 10.1145/333424.333433 .  
  4. Rayce185. Anti-aliasing: Základy . přetaktování (leden 2009).
  5. http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf
  6. NVIDIA. TECHNOLOGIE MFAA . nvidia.com.ua _ nvidia.com.ua Datum přístupu: 17. dubna 2020.

Literatura

Odkazy