Velmi dobré vyhlazování
Kapitoly článků
Pokud jste se někdy zajímali o vyhlazování grafických scén, tak jste si jistě všimli velmi negativního důsledku na rychlost. nVidia i ATI sice přišli se zlepšeními, ale stále jde jen o přemýlání stejného principu, který na to jde metodou hrubé síly. Matrox se pokusil tento problém vyřešit mnohem elegantněji a na velmi slušné úrovni se mu to povedlo. Svůj způsob nazval "Fragment AntiAliasing" (FAA) a podíváme se na něj trochu podrobněji.
Metodami, které používá jak nVidia, tak ATI se docílí efektu, kdy jsou vyhlazovány jak hrany, které vyhladit potřebují, tak i místa u kterých je to k ničemu (a naopak, někdy dojde i k rozostření toho, co vyhlazeno být němělo - například textu). Jestliže tedy hrany většinou pokrývají jen 5 až 20 % povrchu, velmi výrazně by se ušetřilo, kdyby se vyhlazovaly opravdu jen hrany. Kupříkladu na následující scéně je jen 3,2 % pixelů (9850 z 307200), které je nutné vyhladit:
Na následujícím obrázku je vidět proces, který Parhelia provádí, aby dosáhla kýženého výskedku:
Nejprve Parhelia odhalí (4b), které body není zapotřebí vyhlazovat a ty rovnou odešle do frame bufferu. Fragmentované pixely (ty, co potřebují vyhladit) jsou uloženy do fragment bufferu (4c). Fragmentované pixely jsou rozděleny - každý do 16cti subpixelů (4d). Subpixely jsou následně obarveny bez jakéhokoliv vyhlazování (4e). A nakonec se z každých šestnácti subpixelů spočte barva jednoho pixelu a uloží se do fragment bufferu (4f). Tím je dílo dokončeno a je jasně vidět, že obrázek 4f je mnohem lepší, nežli 4a.
Že je 16×FAA lepší nežli 4×FSAA (Full Screen AntiAliasing - celá scéna se vyrenderuje 2× větší v každém směru a výsledek se přepočítá na nižší) snad nikdo nepochybuje. Matrox se rozhodl to dokázat na zcela evidentních obrázcích:
Zatím to vypadá, že 16×FAA jednoznačně vede. Poskytuje lepší výsledky nežli 4×FSAA (nebo dokonce 2×FSAA) a má menší nároky na hardware. Jenže má i nějaká ta negativa. Tak předně, ne na všechny hry a programy lze tato metoda napasovat. Podle vyjádření lidí od Matroxu v současné době u 80 % aplikací to možné je. Toto číslo se navíc prý může zvyšovat s tím, jak se Matroxu podaří optimalizovat drivery. Pokud nebude s danou aplikací možné FAA použít, Matrox implementoval i 4×FSAA, ovšem se všemi jeho neduhy.
Další nevýhodou FAA je, že nejsou vyhlazovány přechody mezi texturami. Na druhou stranu je nutné přiznat, že FSAA pro změnu vyhlazuje i tam kde by bylo lepší nevyhlazovat, takže například v Dungeon Siege s 4×FSAA jsou nápisy notně rozmazané. Rozhodně ještě bude zajímavé a potřebné v nějakém testu srovnat kvalitu FAA s FSAA.
Diskuse ke článku Matrox Parhelia 512