3D-Analyze: DirectX9 na DirectX7 kartě? | Kapitola 4
Seznam kapitol
Možná jste už o této utilitce slyšeli, možná ji už používáte, ale možná o ní slyšíte poprvé a to by při její užitečnosti byla určitě škoda! V článku se pokusím tak trochu spojit recenzi s návodem, takže i ti z vás, kteří program znají, ale nenaučili se ho ještě používat, zde jistě najdou mnoho zajímavého. Hlavně pro vlastníky karet ze série Voodoo či KYRO je tento program doslova nutností, chtějí-li alespoň spustit moderní hry. Stejně tak i vlastníkům starších GeForce anebo Radeonů bez podpory Pixel Shaderů se bude jistě hodit, ale má i mnoho zajímavých funkcí pro majitele těch nejmodernějších 3D akcelerátorů anebo pro ty, co je hlouběji zajímá dnešní počítačová 3D grafika anebo chtějí ladit a měřit výkon.
Již jsme si řekli, které volby je třeba zatrhnout, aby nám i na DX7 kartě proběhly v 3Dmarku testy vyžadující pixel shadery. Pixel shadery nejsou však emulovány (to zatím zůstává jedním z budoucích cílů vývoje 3DA), nejsou prostě renderovány. Takže například Nature může na DX7 kartě vypadat takto:
Na prvním obrázku můžete vidět část krajiny, kde nejsou použity pixel shadery (jen vertex shader, který je i bez použití 3DA na DX7 kartě spočítán softwarově, Nature používá vertex shader 1.1 a pixel shader 1.0). Kvalita obrazu není tedy nikterak horší než na DX8 akcelerátoru. Na druhém je pak snímek vodní hladiny, která jediná využívá 4 instrukcí z pixel shaderu 1.0. Výsledkem je šedá plocha vypovídající o tom, že na objekt nebyla vůbec nanesena textura (což je výsledek podle očekávání). Co je však důležitější, Nature jsme mohli vůbec spustit, což může být důležité při analogickém postupu hlavně u her, které bychom si třeba jen kvůli vodní hladině nemohli jinak zahrát.
Ukažme si tedy jiný příklad. Hru vyžadující pixel shadery jsem bohužel k dispozici žádnou neměl, postup jsem tedy vyzkoušel na náročném benchmarku Codecreatures Benchmark Pro, jehož engine vyžaduje pixel shadery verze, alespoň 1.1, jak je patrno z chybové hlášky kterou mě program odměnil po pokusu spustit test na mé grafice (DX7):
Spustil jsem tedy 3DA, jako EXE zvolil "Codecreatures Benchmark Pro.exe" a jako cestu k DLL podadresář "\content" (vyberte jakýkoliv soubor z podadresáře). Z voleb jsem zatrhl emulovat pixel shader a benchmark tentokrát již dokázal spustit. Benchmark proběhl, ale opět se nevykreslila vodní hladina, na jejím místě byla viditelná chyba a rybičky visely ve vzduchu :-) :