Kifejezetten jól sikerült az Intel CMAA

Az Intel korábban már többször is említette, hogy dolgoznak egy új élsimító eljáráson, mely az utófeldolgozáson alapuló szűrők sorát gyarapítaná, de eddig nem lehetett bővebb információt tudni róla. Eredetileg az effekt a Grid 2 című játékban mutatkozott volna be, de a fejlesztés némileg csúszott, így a vállalat csak most döntött a leleplezés mellett. A CMAA-nak (Conservative Morphological Anti-Aliasing) keresztelt élsimításra végül megérte várni, mivel a post-process megoldások körében abszolút van helye.

Az élsimításra vonatkozó post-process megoldások az elmúlt években sok irányba mentek el, és ez nem csak a fejlesztőkre, hanem a gyártókra is jellemző volt. Az NVIDIA az FXAA-val abszolút a sebességet célozta meg, de ez az algoritmus már jó ideje nem esett át komoly frissítésen, mivel a nagy reményekkel fejlesztett 4.0-s verzió zátonyra futott, így a GeForce driverben továbbra is egy 3-as főverzióra épülő implementáció van. Az AMD első körtől kezdve az MLAA-ra épített, aminek egy ideje már van 2.0-s verziója is a Catalyst driverben. A vállalat az NVIDIA-val ellentétben a sebességet háttérbe, a minőséget pedig előtérbe helyezte, ezért az AMD MLAA implementációja nem éppen gyors, de kevés temporális zavart okoz, és a képet is csak minimális mértékben homályosítja. Működéséhez viszont elengedhetetlen a DirectCompute 5.0-s felület, ami miatt a fejlesztők nem szoktak implementálni a játékokba, de páran a hasonlóan működő SMAA-ra azért építenek.

Az Intel a gondot megpróbálta a saját érdekei szerint megközelíteni, de ez nem rossz, mivel pont egy olyan alternatíva hiányzik a piacról, ami az FXAA sebességét kínálja, csak éppen jobb minőség mellett. A CMAA tipikusan egy kis erőforrásigénnyel rendelkező eljárás, és a kiindulási pontja a kész képkocka biztosítva a megfelelő kompatibilitást az alkalmazásokkal. A működés szempontjából természetesen az első lépés az élek kijelölése, ami alapvető fontosságú ezeknél a post-process szűrőknél, hiszen tudni kell, hogy a kép mely részein kell alkalmazni az élsimítást. A második lépésben a kontrasztvizsgálat történik, ami szintén nem egyedi dolog önmagában, de a CMAA az ismert technikákhoz képest eltérően végzi, mivel a detektálás tartománya meglehetősen kicsi. Ennek vannak előnyei és hátrányai is. Előnye, hogy a CMAA kevésbé mossa el a képet, illetve a kis alakzatokat (például a betűket), ugyanakkor hátránya, hogy a hosszabb élekkel már nem bánik elég jól.

Kis alakzatok kezelése CMAA-val
Kis alakzatok kezelése CMAA-val

A harmadik lépés során a meghatározott alakzatok és a környező pixelek adatai alapján az algoritmus korrigálja a vizsgált alakzathoz tartozó pixel színét, annak megfelelően, hogy a szomszédos képpontok mennyire eltérőek. A negyedik és egyben utolsó lépés pedig a hosszabb élek kezeléséért felel nagyjából úgy, ahogy az Intel eredeti MLAA algoritmusa. Ez enyhén homályosíthatja a képet, de ezt a problémát nem lehet teljesen leküzdeni.

Az Intel mérései szerint a CMAA alig igényel több erőforrást az aktuális legjobb FXAA-nál, miközben kevésbé homályos, temporálisan stabilabb képet eredményez, illetve kiemelten jól kezeli a kis alakzatokat. Az SMAA, illetve az ilyen elven működő a post-process megoldások, mint az MLAA 2.0 már jóval több erőforrást igényelhet, de cserébe nagyon jól bánnak a hosszabb élekkel.

Különbségek az eltérő post-process élsimítások között
Különbségek az eltérő post-process élsimítások között [+]

A CMAA egyértelmű előnyét az adja, hogy a detektálási tartomány igen kicsi, míg a többi megoldás esetében ez igen nagy. Ez jól látszik az ennek mérésére kialakított rácsterületen, ahol az FXAA gyengébben, míg az SMAA-hoz hasonló megoldások nagyon rosszul vizsgáznak. Ennek tipikusan a nagy detektálási tartomány az oka, ami sajnos szükséges a hosszabb élek kedvezőbb kezeléséhez.

Továbbra sincs egyértelműen előnyös post-process élsimító eljárás, de a CMAA jobbnak tűnik az FXAA-nál, ráadásul szabványos kódban íródott, így gyorsan implementálható a DirectX és az OpenGL API-t használó játékokba. Az SMAA-hoz hasonló megoldások minőségileg más ligában játszanak, de ezek aktiválása lényegesen nagyobb teher a hardverek számára, tehát a CMAA nem akar konkurenciát állítani nekik.

Az Intel a CMAA-ra készített egy technikai mintát is, ami az alábbi linkről tölthető le. Arról nincs adat, hogy a CMAA bekerül-e az Intel grafikus drivereibe, de remélhetőleg lát benne fantáziát a cég, mivel egy ilyen megoldás már nagyon hiányzik a meghajtókból.

  • Kapcsolódó cégek:
  • Intel

Azóta történt

Előzmények

Hirdetés