Vélemény: TressFX kontra HairWorks a gyakorlatban

Jó ideje látni lehet, hogy a hajszimulálására meglehetősen nagy az érdeklődés, így ezek lassan tényleg alapvető funkciókká válnak a játékokban. A GPU-val gyorsított szimulációs rendszerek közül azonban csak kettő létezik, mégpedig az AMD TressFX és az NVIDIA HairWorks. Mivel utóbbi egyelőre a haj tekintetében még nem mutatta meg a tudományát, így összehasonlítási alap nem volt, de a The Witcher 3: Wild Hunt most megadta ezt.

TressFX a Tomb Raiderben
TressFX a Tomb Raiderben [+]

Elő is kaptuk ismét a Tomb Raidert, hogy végre összehasonlíthassuk a TressFX és a HairWorks minőségét. Ezúttal a teljesítményre annyira nem koncentrálnánk, mert az jóval bonyolultabb előkészületeket igényel, de alapvetően elmondhatjuk, hogy a gyártók csúcs GPU-in a TressFX teljesítményvesztése hasonló, de a HairWorks mérhetően jobban terheli a Radeonokat.

HairWorks a The Witcher 3: Wild Huntban
HairWorks a The Witcher 3: Wild Huntban [+]

Mivel négy elemtől függ a haj megfelelő leképzése, így ezt a négy elemet néztük meg Lara Croft és Geralt haján, majd egyenként döntöttünk, hogy melyik a kedvezőbb. Így alapvetően objektív összehasonlításra van lehetőség, hiszen célirányosan koncentrálunk a feldolgozás részleteire.

Szimuláció: Ebben a tekintetben az alapvető szimulációt mindkét rendszer jól kezeli, de a HairWorks esetében jobb az extrém gyorsulások helyzete. Persze a Tomb Raider TressFX verziója még a legelső, amely bevallottan nem szereti a gyors mozgásokat, de a 3.0-s verziót még senki sem használja, így abból kell főzni, ami van. A szimuláció szempontjából a pontot a HairWorks kapja.

Élsimítás: A TressFX és a HairWorks ebből a szempontból sokban különbözik. Előbbi effekt tartalmaz egy beépített célirányos szűrőt, míg utóbbi esetben az élsimítást MSAA-val kell megoldani. Mivel a The Witcher 3: Wild Hunt tökéletesen támogatja ezt az élsimítási módot, így ebből nincs akkora probléma, de ha egy olyan videojáték-motorba kerül beépítésre a HairWorks, amivel az MSAA nem lehetséges, akkor az nyilván nagyon kellemetlen. Az élsimítás minősége szempontjából egyébként a célirányos szűrő láthatóan előnyösebb eredményt ad, mert jobban ki tudja hangsúlyozni a hajszálakat, így a pontot a TressFX kapja.

Önárnyék: Ez az a terület, ahol nem igazán lehet mit vizsgálni. A TressFX-en ez jól néz ki, míg a HairWorks esetében látszatra teljesen hiányzik az eljárás. Mivel nem lehet letölteni a HairWorks forráskódját, így nem tudjuk eldönteni, hogy magát az önárnyékot egyáltalán nem tartalmazza az effekt, vagy nem túl jó implementáció van beépítve és ezért nem látszik az eredményen. A pont így a TressFX-é.

Átlátszóság: Valószínűleg a hajszimuláció leképzésének legfontosabb eleme, hiszen a haj esetében annyira vékony szakaszokról van szó, és annyira sok van egy helyen, hogy meg kell oldani a tökéletes sorrendben történő leképzést. Két alapvető problémát lehet vizsgálni ebből a szempontból. Az egyik a hajszálak átütése, míg a másik az összemosódás. Ezeket a TressFX meglepően jól kezeli, míg a HairWorks mindkét próbán elhasal. Bizonyos tekintetben látszatra olyan a HairWorks, mintha az egész haj vizes lenne, mert a tincsek csoportokba állnak össze, és eközben még át is ütnek egymáson, Egyszerűen a közeli hajtincsek sorrendjének meghatározása nem jó. Ebből a szempontból a TressFX előnye óriási, így a pont sorsa egyértelmű.

Az eredmény 3:1 a TressFX javára, de ezek az effektek fejleszthetők, így később újra elő lehet venni a kérdést.

Véleményünk szerint a HairWorks gondja, hogy rendkívül sok erőforrást költ olyan dolgok számítására, amelyek a végeredmény tekintetében egyáltalán nem fontosak. Egyszerűen ezek nem látszanak majd meg a haj minőségén, viszont az önárnyék és az átlátszóság megfelelő kezelésére nem marad elég erőforrás. Ez csúnyán fogalmazva egy balansz, tehát egyensúly probléma. Az NVIDIA teljesen alábecsülte önárnyék és az átlátszóság fontosságát, ami az efféle effektek minőségét alapvetően meghatározza.

A HairWorks 16x-es tesszellálás mellett és eredeti beállítással A HairWorks 16x-es tesszellálás mellett és eredeti beállítással
A HairWorks 16x-es tesszellálás mellett és eredeti beállítással (forrás: WCCFtech) [+]

Jelentősen túlbecsülték viszont a tesszellálás fontosságát, amelynek egy bizonyos paraméter felett nincs látható eredménye. Ezt a kérdést szerencsére a WCCFtech körbejárta, és a Catayst meghajtón keresztül lekorlátozták a tesszellációs faktort 16x-re. Ennek a korlátozásnak a HairWorks minőségére semmilyen hatása nincs, viszont kétszeresére növeli az elérhető sebességet. Többek között ha az NVIDIA eleve 16x-es tesszellálást használ, akkor hozzávetőleg 2-4 ezredmásodpercnyi extra időbüdzsét lehet nyerni, amibe belefér egy jó minőségű önárnyékra és átlátszóságra vonatkozó eljárás. Ilyen kialakítással a HairWorks nem csak gyorsabb lenne a mostani állapotánál, hanem a minősége is jóval közelebb állnak a TressFX-hez, sőt akár még jobb is lehetne nála.

Azóta történt

Előzmények

Hirdetés