3DMark05: nový test pro nové grafiky
Kapitoly článků
Když spustíte 3DMark05, tak se vám objeví obrazovka, která vás snad ani příliš nepřekvapí, protože jde o mírně vylepšený vzhled 3DMarku03. Ostatně, když se něco osvědčilo, tak proč to měnit:
Jak si můžete všimnout, oproti předchozím verzím ubyl jeden herní test. Celkem dobře to symbolizuje fakt, že vytváření herních engine je čím dál tím náročnější jak časově, tak finančně. Už příchod 3DMarku 03 vlastně symbolizoval náročnější vytvoření testu, jelikož přišel až dva roky po předchozím, kdežto tomu vydání trvalo pouze rok. Vyvstává otázka, jak to tedy bude s další verzí, ale to bych poněkud předbíhal, právě vyšla verze 05 a shodou okolností je to již pátý 3DMark:
- 3DMark99 navržen pro DirectX 6
- 3DMark 2000 navržen pro DirectX 7
- 3DMark 2001 navržen pro DirectX 8.1
- 3DMark03 navržen pro DirectX 9.0a
- 3DMark05 navržen pro DirectX 9.0c
U každé verze máte i napsáno, pro jakou verzi DirectX je určena. Většinou jsou označené verze jako maximální a testy zvládají testovat i starší generaci karet, i když třeba ne všemi herními testy. V případě nejnovější pětky je situace taková, že jsou vyžadovány Shadery verze alespoň 2.0, což znamená hardware navržený pro DirectX 9. Z karet od nVidie to jsou všechny GeForce FX 5 a GeForce 6, v případě ATI je situace složitější, protože u Radeonů 9 je podpora Shaderů 2.0 až od Radeonu 9500 a výše. Radeony X už jsou samozřejmě všechny navrženy pro DirectX 9, takže jsou novým testem podporovány. Ještě jednou chci zdůraznit, že uvedené Shadery 2.0 jsou opravdu nutností a pokud je vaše karta nezvládá, tak na 3DMark05 zapomeňte.
Když jsem psal, že 3DMark05 jde ve šlépějích 3DMarku03, tak to bylo v tom smyslu, že se spíše snaží ukázat, jak budou rychlé budoucí hry na dané videokartě a nikoliv jak rychlé jsou ty současné. Jeden dramatický rozdíl však nový 3DMark05 přináší: optimalizaci pro hardware. FutureMark chce dělat benchmarky, které co nejvíce budou odpovídat tomu, co využívají vývojáři her, abychom se vlastně prostým otestováním v 3DMarku dozvěděli, jaký výkon od grafické karty asi lze očekávat. Z toho důvodu se nyní rozhodli, že se nebudou za každou cenu snažit u různých karet o co nejstejnější obraz, ale spíše budou optimalizovat dané testy pro grafiky tak, jak to dělají vývojáři her.
V praxi to znamená, že zatímco u 3DMarku 03 byly instrukce pro shadery vždy stejné, jelikož je hoši z FutureMarku napsali přímo v asembleru, tak u 3DMarku 05 už se pro různý hardware mohou lišit. Pro něj totiž byly napsány v High Level Shading Language (HLSL, programovací jazyk ala C). Takto napsané shadery jsou zkompilovány a to pro shadery verze 2.0, 2.0a, 2.0b, nebo 3.0. Při testování 3DMark05 automaticky zvolí nejlepší kompilát, který ještě daná grafická karta zvládá. Veškerý podporovaný hardware zvládá verzi 2.0, GeForce FX zvládají i 2.0a, Radeony X800 a X700 ještě navíc i 2.0b a všechny čtyři verze zvládají pouze GeForce z šestkové řady.
Přitom platí, že čím vyšší shadery, tím kvalitnější obraz může být, protože se grafická karta dokáže rychleji vypořádat s vykonáním složitější scény. Pro ilustraci, ve FarCry se používají až 4 světelné zdroje v jednom průchodu při použití shaderů verze 3.0, kdežto s verzí 2.0b „jen“ maximálně 3 a v případě verze 2.0 pouze jedno světlo na jeden průchod. Je tedy jasné, že buď je nutné použít menší počet světelných zdrojů, nebo utrpí rychlost.
Tento přístup, kdy je nejprve grafická karta ozkoušena, co vlastně zvládne a na základě toho je pro ni vybrán ten nejlepší kód, se patrně bude prosazovat i do budoucna. Ve FutureMarku jsou si toho vědomi a proto na různých kartách mohou výsledky z 3DMarku 05 vypadat různě a to proto, že mohou být použity jiné shaderové instrukce. Pokud však bude mít tester zájem, je samozřejmě možné nastavit, na jaké verzi shaderů má být test proveden (samozřejmě jen podporovaných danou kartou), takže bude možné srovnat dvě karty za identických podmínek.