Anti-aliasointianalyysi, Osa I: Asetuksia ja yllätyksiä

Artikkelin kirjoittaja: Panu Roivas | 1 kommentti

Radeon AA-moodit ja ajuriasetukset



Vanhentuneet Radeon AA-moodit:

Temporal Anti-Aliasing

Kun Radeon X800 –sarja julkaistiin, sen mukana tuli uusi temporal anti-aliasing. Se käytti kahta erilaista pikselisamplauskaavaa, vuorotellen niitä jokaisen kuvan välillä. Kun ruudunpäivitys oli tarpeeksi korkea ettei silmällä pystynyt arvioimaan kuvien eroja (fps ainakin 60), molempien AA-efektien hyödyt oli nähtävissä, tuplaten aa-tason ilman suorituskykypudotusta. Esimerksiksi 2xAA vaikutti 4xAA:lta jne.



Temporal AA:ssa oli kuitenkin pari ongelmaa. V-sync piti olla päällä, ja jos ruudunpäivitysnopeus tippui alle 60 fps:n temporal AA disabloitiin.

AMD:n edustajien mukaan tämä tekniikka oli vaikea saada toimimaan uusissa peleissä, ja sen rajoitukset tekivät siitä hankalamman kuin uudemmat anti-aliasointikeinot. Tämän takia se poistettiin Radeonin ajureista ennen pitkää.

Nykyiset Radeon AA-moodit

Custom-Filter Anti-Aliasing (mukaanlukien Edge-Detect Anti-Aliasing)

Radeon HD 2900 XT:n mukana julkaistu custom-filter AA (CFAA) on ohjelmoitava metodi, joka kerää arvoja myös pikselin ulkopuolelta. Arvot pystytään keräämään ympyräalueen sisältä, joka saattaa ulottua pikselin ulkopuolelle. Arvon painotusta voidaan myös säätää sen etäisyydellä ympyrän keskikohdasta. Julkaisuaikaan AMD tarjosi kolme CFAA-asetusta: narrow tent, wide tent ja edge-detect.

Tent-nimet viittaavat samplausalueen kokoon, mutta edge-detect on hieman monimutkaisempi. Se käyttää edge-detect-algoritmia kehyspuskuriin ja painottaa aa-laskennan näihin alueisiin luodakseen pehmeämpiä gradientteja.

Edge-detect on selvästi paras CFAA-suodatin, mutta vaatii enemmän laskentaa, joten AMD on optimoinut edge-detect-suodattimen toimimaan nopeammin. Tent-suodattimet eivät tuo paljoa eroa MSAA:n, joten yritys on jättänyt ne pois Radeon HD 6000 –sarjan myötä.




Koska EQAA on rajoitettu Radeon HD 6900 –sarjaan, edge-detect on hyvä vaihtoehto vanhemmille korteille. Joissain tapauksissa kuitenkin edge-detect ei tuo juuri mitään havaittavissa olevaa parannusta, CSAA:n ja EQAA:n tapaan.

Morphological AA

Morphological AA (MLAA) on täysin uusi anti-aliasointimoodi joka julkaistiin Radeon HD 6800 –sarjan myötä. Se käyttää hieman erilaista lähestymistapaa aliasointiongelmaan, sillä se ei juuri tarvitse mitään tietoa kuvan geometriasta. MLAA on jälkiprosessointitekniikka joka toimii kaikkien DX9/10/11 –pelien kanssa. Kun kehys on renderöity, se välitetään MLAA-varjostimen läpi, joka etsii korkeakontrastisia reunoja ja kuvioita joissa aliasointia esiintyy. Vierekkäisten pikselien värit sulautetaan minkä pitäisi johtaa sulavaan linjaan aliasoinnin sijaan. Tasoitusfekti ei ole siis rajoitettu geometrian reunoihin tai alpha-tekstuureihin, vaan koko kuvaan. Tämä metodi vaikuttaisi siis samankaltaiselta kuin supersamplaus, suorituskyvyn ollessa edge-detectin luokkaa.



Käytännössä jotkin tilanteet näyttävät paremmilta kuin toiset, mutta loppupeleissä tulos on yllättävän hyvä. MLAA:n akilleen kantapää on se, että se voi myös anti-aliasoida kuvaa, jota ei haluta muuttaa. Esimerkiksi teksti saattaa näyttää huonolta MLAA päällä, erityisesti pienemmillä kooilla.

MLAA:ta tuki alunperin vain Radeon HD 6000 –sarja, mutta Catalys 11.2 –ajurin myötä se toimii myös Radeon HD 5000 –sarjan korteilla.

Ajuriasetukset: Radeon Anti-Aliasointikontrollit

Ennen kuin koskemme mihinkään, asetamme Catalyst Control Centerin advanced view –asentoon, jotta voimme katsoa kaikkia tarvitsemiemme asetuksia samalla sivulla. Advanced view –asetus löytyy Preferences-valikosta oikeasta yläkulmasta.



Seuraavaksi valitsemme Gaming –kategoriasta ”3D Application Settings”. Tässä valikossa on kaikki 3D-asetukset, ja suurin osa anti-aliasointikontrolleista on sopivasti valikon yläosassa.



Tämä näkymä riippuu käyttämästäsi Radeon-kortista. Radeon HD 6900-sarja näyttää Mode-vetovalikon, kun taas muut Radeonit näyttävät yksinkertaisen ”Use application settings” –painikkeen.



On hyvä huomata, että Mode-valikko ja ”Use application settings” –painike eivät vaikut kaikkiin anti-aliasointiasetuksiin tässä osiossa. Ne vaikuttavat vain anti-aliasointitasoon, ja 6900-sarjan tapauksessa siihen, onko EQAA päällä vai ei. Aloitetaan 6900-sarjan Mode-valikosta.



Mode-valikossa on kolme vaihtoehtoa: ”Use application settings”, ”Enhance application settings” ja ”Override application settings”. “Use application settings” jättää AA:n peliasetusten huoleksi.

“Enhance application settings” –asetus ei juuri kuvaile sen todellista toimintaa, mikä tarkoittaa coverage-arvojen (EQAA) lisäämistä MSAA-tasoon pelissä. Esimerkiksi jos pelin asetus on 2xAA, ”Enhance application settings” tuo siihen vielä kaksi coverage-samplea lisää.

”Override application settings” yrittää pakottaa AA:n Mode-valikossa asetetulle tasolle. Vetovivulla voidaan valita useita eri anti-aliasointitasoja, joko pelkkää MSAA:ta tai MSAA yhdistettynä coverage-arvojen kanssa EQAA:n. Kuten Nvidian versiossa, AMD:n Override ei ole kovin toimiva pakottamaan anti-aliasointia kuin muutamissa tapauksissa.

Radeon HD 6800 –sarjalle ja vanhemmille korteille Mode-menu on korvattu ”Use application settings” –painikkeella. Kun tämä on pois päältä, se toimii samaan tapaan kuin ”Override application settings”.

Jos sinulla on Radeon HD 6000- tai 5000 –sarjan näytönohjain ja Catalyst 11.2-ajurit (tai uudemmat), näet myös ”Morphological Filtering” asetusnapin. Tämä enabloi MLAA:n , joka toimi jokaisessa testaamassamme pelissä. Sitä voidaan käyttää muiden AA-moodien ja asetusten kanssa.

Viimeinen valikko on Filter menu, josta löytyy Standard ja Edge Detect –vaihtoehdot. Standard-suodatin tarkoittaa normaalia MSAA:ta, ja Edge-Detect-suodatin enabloi CFAA:n. Edge-Detectiä varten MSAA-tason on kuitenkin oltava vähintään 4x MSAA.



Ensi katsaukselta tässä vaikuttaisi olevan kaikki AA-asetukset mitä CCC tarjoaa. Käyttöliittymä ei kuitenkaan ole erityisen hyvin järjestetty, ja joudut skrollaamaan alas toiseen anti-aliasointiosioon, Anti-Aliasing Mode.





Anti-Aliasing Mode –osasto pitää sisällään vetovivun, jossa on vaihtoehdot Performance ja Quality. Sen alla on tärkeämpää informaatiota kolmesta eri asetuksesta: Multisample AA, Adaptive Multisample AA ja Supersample AA.

Standardi Multi-Sample AA on yksiselitteinen. Toinen asetus, Adaptive Multi-Sample AA, enabloi AMD:n läpinäkyvien tekstuurien anti-aliasoinnin. Super-Sample AA asettaa supersamplauksen koko kuvalle.

Yksinkertaista? Kuten seuraavalla sivulla näemme, monet valinnoista eivät ole niin luotettavia kuin voisi luulla.

kommentti 1

sam49

Kiitokset. On hyvä täydentävä teksti tietokonegrafiikan oppikirjoihinkin nähden. Ainoa muutos, jonka toivoisin näytekuviin olisi, että ne voisi ladata omalle koneelle hiukan isommassa koossa ja vertailla niitä rinnakkain.

Kommentoi artikkelia