Minden, amit az élsimításról tudni kell

Kell az élsimítás, de mégis melyik?

A számítógépes grafika kezdete óta sok idő eltelt, és ma már igen komoly játékok születnek a grafika minőségét tekintve. Vannak azonban örök problémák, amelyeket legyőzni nem lehet, így maximum azért lehet küzdeni, hogy kevésbé legyen látható a gond. A számítógépes grafika egyik legnagyobb problémájának az aliasing jelenség tekinthető. Ez tulajdonképpen egy mintavételezési hiba. Közérthető definícióval fogalmazva a monitoron előállított kép legkisebb egysége a pixel, de a 3D-s világban létezhet a pixelnél is kisebb elem. A monitor ezt nem tudja kirajzolni (mivel a pixelnél kisebb egység nem jeleníthető meg), így létrejön az aliasing nevű probléma. Persze valójában a monitornak ehhez a gondhoz semmi köze, mivel az aliasing a grafikus processzoron belül jön létre, így a mintavételezési hiba a rendszeren belül keletkezik a raszterizálás során. A monitort csak azért vontuk be a definícióba, hogy könnyebb legyen megérteni, miről is van szó.

Természetesen az előbbi bekezdés nem minden elemében tartalmaz pontos részleteket a problémáról, így szakmailag közelebbi megfogalmazás, hogy az aliasing jelenséget a mintavételezés során az eredeti jel és a mintavételi frekvenciák megfelelő eltolás melletti átlapolódása hozza létre. Egy adott mintavételi frekvencia mellett az eredeti jelből olyan komponensek is láthatók lehetnek, amelyek frekvenciája magasabb, és ezzel létre is jön a probléma. Az élsimításnak (anti-aliasing) tulajdonképpen az a célja, hogy a magasabb frekvenciájú mintavételt igénylő komponenseket kiszűrje. A másik lehetőség a mintavételi frekvencia növelése, ami köznyelven fogalmazva a felbontás növelését jelenti, ameddig csak lehetséges, de így is nagy esély van az aliasing jelenség bekövetkezésére.

A megoldás szempontjából jelen cikkünk az élsimítással foglalkozik. Rögtön leszögezzük, hogy tökéletesen átfogó megoldás az alapproblémára nem létezik, így a különböző eljárások csak az aliasing jelenség minimalizálására törekszenek. Ezt egész hatékonyan végzik, bár mindegyik technológiának van negatív oldala is. Szintén fontos megérteni, hogy a különböző élsimítási eljárások összevethetők egymással, de igazából érdemes ezeket kategorizálni, mivel jellemzően más célból születnek. Vizsgálataink során megpróbáltunk objektív támpontokat kialakítani, és ezzel a különböző kategóriákba sorolt élsimítások jól jellemezhetők, de a képminőségre vonatkozó elemzéseknél a szubjektív benyomások nem zárhatók ki teljesen.

Az élsimítások közül elemezzük az MSAA-t, az SSAA-t, a speciális TXAA-t és a különböző utófeldolgozáson alapuló megoldásokat, mint az MLAA és az FXAA. Ezek pontos működéséről a cikk későbbi részében írunk, ahol azt is boncolgatjuk, hogy merre érdemes elindulni az élsimítást érintő kutatások szempontjából.

A grafikus driverek beállításai

A PC piacon az AMD, az Intel és az NVIDIA szállít nagy mennyiségben grafikus processzorokat, így a driverek beállításait ennél a három cégnél vizsgáltuk meg. Az Intel esetében relatíve egyszerűen lehet a helyzetet elemezni. Gyakorlatilag a meghajtó semmilyen élsimításra vonatkozó beállítást nem kínál. Az MSAA kényszerítésének hiányán nagyon meglepődtünk, hiszen igen alapvető szolgáltatásról van szó, amit a felhasználók a régi játékokra előszeretettel alkalmaznak, de az Intel úgy gondolja, hogy erre nincs szükség. Nos, az új programokat figyelembe véve alapvetően igazuk van, de számos, évekkel ezelőtt megjelent program nem tartalmaz alapértelmezett beállítást az élsimításra, és ilyenkor jól jöhet a driver tudása.

Az Intel driver beállításai
Az Intel driver beállításai [+]

Az AMD és az NVIDIA már jóval korszerűbb képességeket kínál a grafikus driver oldaláról. Az Intel igazán tanulhatna konkurenseitől, hogyan kell egy hardverhez hasznos funkciókat biztosítani. A vörös és a zöld oldal szolgáltatásai az MSAA-t tekintve nagyrészt lefedik egymást. Mindkét vállalat kínál alapvető mintavételi profilokat, illetve az átlátszó felületekhez is van aktiválható eljárás. Az NVIDIA esetében rögtön kettő, mivel a szabványos megoldás mellett egy úgynevezett transparency (átlátszóság) opció is elérhető. Utóbbi előnye, hogy akkor is működik, ha előbbi nem, de hátránya, hogy nagymértékben csökkenti a sebességet. Szintén aktiválhatók különböző, úgynevezett fedettségmintákkal dolgozó MSAA módok. Az AMD ezt EQAA-nak, míg az NVIDIA CSAA-nak hívja. Mindezek mellett az AMD egy opcionális élkereső (edge detect) szűrőt is kínál, így az MSAA még jobban paraméterezhető, aminek hála a hardver az élekre kétszer több színmintát vételez.

Az NVIDIA GeForce driver beállításai
Az NVIDIA GeForce driver beállításai [+]

Az utófeldolgozáson alapuló megoldások szempontjából az NVIDIA az FXAA-t kínálja, míg az AMD az MLAA-t, amit a driverben morfológiai szűrőként lehet aktiválni. Nagyjából ezek ugyanarra valók, csak másképp dolgoznak, alapvetően azokban a programokban érdemes aktiválni őket, ahol nincs semmilyen más mód az élsimításra, de a felhasználó mégis szeretne szebb éleket látni.

Az AMD Catalyst driver beállításai
Az AMD Catalyst driver beállításai [+]

Végül az AMD kínál egy úgynevezett SSAA módot, ami régóta ismert alternatíva az aliasing jelenség kezelésére, ám használata igen nagy teljesítményvesztést okoz, ugyanakkor gyakorlatilag minden alkalmazással kompatibilis.

A cikk még nem ért véget, kérlek, lapozz!

Azóta történt

Előzmények

Hirdetés