Crysis 3 - SoH Klán: Mesterségesen kreált a Crysis 2 óriási gépigénye 
http://crysis.com/
A program ugyanolyan grafikai minőség mellett sokkal gyorsabban is futhatna.
Rejtett geometriák
Sokan emlékezhetnek még a régebben szebb napokat is megélt The Way It's Meant To Be Played partnerprogramra, mellyel az NVIDIA a fejlesztők munkáját segítette a PC-s játékok elkészítésében, illetve optimalizálásában. Sajnos mára a partnerprogram alaposan vesztett értékéből, amit az is jelez, hogy a zöldek csupán öt darab DirectX 11-es játékot kínáltak eddig a piacnak, miközben a konkurens AMD Gaming Evolved berkein belül már 13 játék készült, és ősszel további kettő fog megjelenni. Túlzás lenne azt feltételezni, hogy az NVIDIA pénzhiányban szenved, így csak kevesebb projektet tudnak finanszírozni, de valami egyértelműen nem úgy működik, mint régen.

Biztos sokan tudják, hogy a Crysis 2 DirectX 11-es módja a The Way It's Meant To Be Played partnerprogramon belül készült, és a Metro 2033-hoz hasonlóan (szintén a The Way It's Meant To Be Played cím) elsősorban az óriási gépigényével hívja fel magára a figyelmet. Damien Triolet, a Hardware.fr szakértőjének feltűnt, hogy a Crysis 2 a látványvilághoz képest túlságosan is sok erőforrást követelt, így utánajárt, hogy miért is kell a program maximális grafikán történő futtatásához minimum egy GeForce GTX 570-es VGA. A teljes cikk az alábbi oldalon olvasható végig. Sajnos franciául van, de bizonyos, hogy később megjelenik az angol fordítás is a magazinhoz tartozó BeHardware oldalon.

A cikkben szereplő teszteredményekből kitűnik, hogy a GeForce-ok és a Radeonok erősorrendje nem követi a többi játékban megszokott normákat. A Radeonok nagyjából 15-20%-kal teljesítenek rosszabbul a GeForce-okhoz képest. Az AMD-t már megkérdeztük, hogy ennek mi az oka. A vállalat azt válaszolta, hogy a rajzolási parancsok többszálú feldolgozását kell optimalizálni, mivel az aktuális Catalyst meghajtók ezt csak egy processzorszálon képesek abszolválni, emellett rengeteg rejtett geometria van a játékban, amit valamilyen okból kiszámoltat a DirectX 11-es motor, de később egy geometry shader megkeresi azokat, majd a raszterizálás előtt kivonja a jelenetből. Utóbbi felfedezés első hallásra borzalmasan viccesen hangzik, hiszen mi értelme kiszámolni valamit, ha annak semmi látszata nincs a végső képen. Ez az erőforrás nagyfokú pazarlása lenne, ami egy olyan rutinos stúdiótól, mint a Crytek nem megszokott. Éppen ezért nagyon szkeptikusak voltunk ezzel kapcsolatban, de Damien Triolet bizonyítékot talált minderre.

A fentebb linkelt tesztben látható, hogy a Crysis 2 DirectX 11-es módja állandóan kiszámolja a város alatti virtuális óceán geometriáját, holott az sokszor nem is látszik. Erre a DirectX 9-es módon belül létezik egy kivágó algoritmus, ami a nem látszódó vízfelületet eltünteti még a vertex shader fázis előtt, de ez a DirectX 11-es módba valamiért nem került bele. Érdekes azonban, hogy a rendszer van olyan intelligens, hogy a raszterlizálás előtt eltüntesse azt, így a szintén nem kevés erőforrásigénnyel rendelkező pixel shaderek már nem futnak le rajta. A tesszellált vízfelületet tehát szimplán a geometry shader fázisig él, és nagymértékben terheli a GPU-k primitív futószalagját hozzávetőleg 10-30%-os (az adott GPU képességeitől függően) lassulást eredményezve a képkocka teljes számításának idejében. Természetesen hangsúlyozzuk, hogy erre nem lenne szükség, mivel a végső képen semmilyen formában nem jelenik meg ez a számítás, de a DirectX 11-es módban valamiért megtörténik.
Itt a rejtett geometria:
Itt pedig a tényleges képkocka:


Damien Triolet, szintén elemezte a ténylegesen látható tesszellált felületeket, és arra a következtetésre jutott, hogy a Crytek úgymond túltesszellálta ezeket. A CryEngine 3 a maximális 64-szeres tesszellálást használja mindenhova, és ez a paraméter a játékon belül felülbírálhatatlan, sőt a tesszelláció külön ki sem kapcsolható, amit sokan kifogásolnak. Az alábbi képeken látható egy útpadka, ami Extreme beállítás mellett nincs tesszellálva, míg Ultra opció esetén az eredeti objektum háromszögei 64-szer lesznek felbontva kisebbekre.

Itt látható a tesszalálatlan útpadka:

Itt pedig a tesszalált:


A lentebb látható geometriai vázon rögtön látszik, hogy ez mennyire sok, apró háromszöget jelent, amelyek jóval kisebbek az általánosan elfogadott 16 pixelnél. Ezzel a kártyák raszterizálása nem lesz hatékony a felületen, ugyanis rengeteg felesleges munka lesz végrehajtva. Számos keletkező háromszög még egy pixelnél is kisebb, ami azt jelenti, hogy a négyes pixeltömbökön dolgozó rasztermotor a számítások 95%-át is eldobhatja, ami az erőforrás nagyfokú pazarlása ismét. Mindezt úgy, hogy a nem tesszellált útpadka észrevehetetlen minőségi előrelépést jelent a tesszellálthoz viszonyítva. Itt fontos megjegyezni, hogy a talajt nem érdemes figyelembe venni, ugyanis azon Parallax Occlusion Mapping van alkalmazva, ami tesszelláció nélkül is végbemehetne, amennyiben a Crytek nem kötötte volna ezt a két opciót egyetlen beállításhoz. Ennek megfelelően dönteni kell, hogy mindkettő, vagy egyik sem lesz aktiválva, ami szintén nem szerencsés, a 300 dollárnál olcsóbb VGA-val rendelkező felhasználók számára.



A Hardware.fr cikke a rajzolási parancsokat is ellenőrizte, hiszen az AMD ezen szeretne javítani a driverben, és érdemes tudni, hogy itt mennyi sebességet lehet nyerni. Az előbbi jelentetett vizsgálva azonban egy nem várt dolgot sikerült ismét felfedezni, ami szinten a fenti útpadkához kötődik. Nevezetesen arról van szó, hogy a tesszellált felületek kirajzolását valamiért kétszer végzi el a motor, ami természetesen nagyon terheli a grafikus kártyák primitív feldolgozó képességét, de nem elhanyagolható módon a rajzolási parancsok száma is megnő, vagyis a processzornak is több munkát kell végeznie. Természetesen a többi DirectX 11-es motor a tesszellált felületeket csak egyszer rajzolja ki, így nem tudjuk megmagyarázni, hogy a CryEngine 3-nak miért van erre kétszer szüksége.

A Crysis 2 DirectX 11-es módja tehát mesterségesen kreál értelmetlenül nagy gépigényt. Ugyanolyan grafikai minőség mellett a sebesség minden kártyán 30-50%-kal (az adott GPU képességeitől függően) nagyobb is lehetne, ha eltűnnének a láthatatlan, de mégis számításigényes geometriák, és a tesszellálás okosan lenne alkalmazva, ott ahol valóban látható eredményt hoz. Sok fejlesztő jelezte már korábban a tesszellálás kapcsán, hogy óvatosan kell bánni vele, mert nagyon könnyen el lehet érni azt, hogy a játék teljes pompájában csak a felsőkategóriás kártyákon fusson, ami nem jó. Főleg annak fényében nem, hogy a JPR legutóbbi felmérése szerint a teljes VGA-piacot elemezve az emberek alig 2%-a vásárol 300 dollárnál drágább kártyát, és a teljes GPU-piac 80%-a 100 dollárnál olcsóbb dedikált, de főleg integrált megoldásokat keresi. Éppen ezért semmi értelmét nem látjuk annak, amit a Crytek tett. A DirectX 11-es mód óriási – ráadásul mesterségesen kreált – gépigényét meglátva csak még többen fognak, az exkluzív és nem mellesleg minőségi címekben amúgy is bővelkedő konzolok felé fordulni, ami természetesen az úgynevezett hardcore PC-s játékpiacnak nagyon rossz.

Persze bizonyos, hogy az NVIDIA igényelte a magas gépigényt, hiszen számukra a GPU-piac 80% úgyis elérhetetlen, így a maradék részre koncentrálnak. Az NVIDIA elképzelése tehát üzletileg érthető, vagyis teljesen normális, hogy a The Way It's Meant To Be Played partnerprogramon belül manapság megkövetelik a magas gépigényt. Az igazi bűnös ebben a színjátékban a Crytek, akik hajlandók a saját PC-s vásárlóbázisuk és rajongótáboruk érdekeit a háttérbe szorítani némi pénzmagért cserébe. Hiszen abban semmi kétség, hogy a felhasználók érdeke a jó optimalizálás, és a gépigény alacsony szinten tartása, mindenféle mesterséges trükközések nélkül.

Hát ez a Crytek!!! :(

[Beküldte djnomad96]





 Nyomtatóbarát változat  Hír létrehozása pdf formátumban 
Írta:  Shark Tuesday 12 July 2011 - 09:53:54 Hozzászólás: 0
 
Írta: Shark
A grafikai állításnak?
Apr 19: 17:25

Írta: Pecsa
Nem tud, hogy a crysis 2-ben vannak-e már cfg-k, d[tovább ...]
Apr 19: 15:23

Írta: eastady
Érdekes cikk az biztos :)
Apr 06: 14:16

Írta: Pecsa
Én is a Limited Edition-t vettem meg, de nekem nem[tovább ...]
Mar 30: 12:28

Írta: Shark
Hát nekem nem limited ed. van szóval én nem tudok [tovább ...]
Mar 29: 09:52

Írta: milu
Interneten vásároltam egy Crysis 2 Limited Edition[tovább ...]
Mar 28: 23:34

[Hírek] SoH Scar
Beküldte Shark - May 25: 09:53
:P

[Hírek] SoH Scar
Beküldte balint94 - May 23: 15:21
Nem árulom el :P

[Hírek] SoH Scar
Beküldte Shark - May 22: 19:05
Ez a "semmilyen formában nem tölthető le" ez célzá [tovább ...]

[Hírek] CW Outpost C2-ben
Beküldte gizdaONE - Apr 29: 12:08
hello ez nem az első :D melesleg ö is magyar nézdh [tovább ...]

news
comment
download
members
forum
chatbox2_menu