A játékélmény csak rosszabb lesz a Vistával Bevezetés
A Vista jön és ha a technológiai hullám éllovasai vagytok, jobb ha tudjátok mit tartogat a tarsolyában. "A Release to manufacturing (RTM) azt mutatja, hogy befejeztük a fejlesztési munkálatokat és lekezdtük a Windows Vista következő fázisát," mondta Sven Hallauer, a Microsoft program és kiadási menedzsment elnöke. A Vista életének következő fázisa 2006. november 8-án indult el és a hivatalos megjelenési időpontban fog véget érni. Az RTM verzió elhagyta a Microsoftot és megérkezett a független hardver (IHV) és szoftver gyártók (ISV) kezébe, hogy felkészítsék a termékeiket a január 30-i indulásra. Egy hónap telt mióta az ISV-k és IHV-k megkapták az RTM verziót, ideje hát megnézni, hogy a grafikus szakma mennyire készült fel az indulásra. Azt fogjuk megvizsgálni, hogy a mai állapotában mire is képes a Vista. Bemutatjuk a grafikus interfészt, illetve az új operációs rendszer (OS) mai állapotával kapcsolatos történeteket is. Végül megvizsgáljuk a Windows XP Professional és a Vista Ultimate közötti teljesítménybeli különbségeket. RTM: Mi is ez és mire jó ez nekem? Ha egy régebbi verziót leváltani hivatott új termék érkezik, akkor a cég érdekében áll, hogy kiegészítse különböző funkciókkal, értéknövelt szolgáltatásokkal és az előző verzióhoz képesti fejlesztésekkel. Néha jobb a változtatásokat minimális szinten tartani, mivel a felhasználók szeretik az eredetit, mint például a Coca-Colanál és a Ford Mustangnál. A technológiai arénában a vásárlók fejlesztésekre vágynak, amik azért ismerősen működnek. A Vista sok tekintetben egy ráncfelvarrott XP bővítésekkel és új eszközökkel.
A sidebar menüben a különböző gadgetek használatával például a legfrissebb híreket is olvashatjuk... még ha csak egy szalagcímről legyen is szó, mint a "Kígyók a fedélzeten."
Akik jobb termelékenységre vagy több programocskára számítanak, a sidebaron van egy külön hely, ahol újabb dolgokat tudtok letölteni, például árfolyam jelzőket, címlista programot, kalkulátorokat és még a ponghoz hasonló játékokat is. Az asztal kivételével az ablakok lehetnek átlátszóak, simák, vagy amilyenek csak akarjuk, hogy legyenek. A 3D-s környezetben a felhasználó olyanra alakítja az OS kinézetét, amilyenre csak szeretné. A legjobb asztali funkció szerintem, hogy egy fülecske tartalmát anélkül is megnézhetjük, hogy át kellene rá válltani. Ha rámegyünk az egérrel, akkor az ablak kicsinyített mása fog megjelenni. A másik funkció, ami tetszett, hogy egymás fellett helyezhetjük el az ablakokat a 3D térben és így mindegyikből látszik egy kicsi.
A Vista grafikus interfészének áttekintése Vagy a Weben, vagy pedig egy rövid összefoglalóban már biztos találkoztatok a Vista új kinézetével. Az előző verziókhoz képest a változás nem csak a felszínt érinti. A grafikus interfész sokkal többet változott. Egészen a magot is érinti. A korábbi Windows verziók a graphical device interface-t (GDI) használták, mint fő programozási interfészt (API) a különböző 2D kimeneti
eszközök kezelésére. Míg a GDI volt az alapja a 2D-s és a főbb felhasználói interfész élményeknek, a 3D-s játékok és alkalmazások a DirectDraw és a Direct3D segítségével működtek. A Windows 2000-től kezdődően a meghajtó programoknak teljesíteniük kellett a Windows Driver Models WDM követelményeket. Tehát minden kernel módú meghajtónak szabványosnak kellett lennie. Az újabb verziók általában elérhetővé tették a régebbi WDM funkciókat, kivéve ha nem volt szükség nagyobb változtatásokra. Lejjebb a Windows XP meghajtó modell (XPDM) és ennek a kapcsolata látható más API-kkal.
Microsoft Corp. tulajdona
Az összes korábbi Windows verzió 2D-s interfészt használt. A Vista felhasználók már választhatnak 3D-s asztalt is. A megemelkedett grafikai teljesítménynek köszönhetően a Microsoft teljesen más megközelítést alkalmazott az új Windows Vista Display Driver Model (WDDM) megalkotásánál.
Microsoft Corp. tulajdona
A régi rendszer alatt, nem volt ritka, hogy az egész rendszer összeomlott, ha a grafikus alrendszer bedöglött. Ez már nem fordulhat elő a Vistánál. A Windows NT-től kezdve az XP-ig, a meghajtó modell a kernel része volt. Ez gyorsabb grafikus teljesítményt eredményezett, de a rendszer instabilitása volt az ára, mivel egy hibás meghajtó lerombolhatta a Per Brinch Hansen által "rendszer nukleusznak" hívott részt. Kernel módban egy folyamat átírhat olyan memóriaterültet, ami más folyamathoz tartozik vagy bármi mást. Ennek megvoltak a veszélyei és a Microsoft lépett is ez ügyben, mivel a modern grafikus processzorok legalább olyan bonyolultakká, ha nem bonyolultabbá váltak, mint egy CPU. Ez a
bonyolultság robosztus meghajtót igényel, mint amilyen a 34.6 MB-os Catalyst 6.12 driver Windows XP alá, ami az AMD/ATI's honlapról tölthető le. A meghajtó egyes részeinek a felhasználói térbe történő helyezése (WDDM User) enyhíti a rossz meghajtóból adódó problémákat. Egy kernel módú driver (KDM) is működik a megfelelő helyen, de a főbb részei a meghajtónak az értékes magon kívül tevékenykednek. Nem csak a grafika az egyetlen terület ahol ez a váltás megtörtént: USB, nyomtatók, hang és egyéb eszközöknél is hasonló tapasztalható. A felhasználói térbe helyezése a meghajtóknak, olyan új lehetőséget kínál, amire még nem volt példa: egy új meghajtó telepítése után NEM KELL újraindítani a gépet. Grafikus API-k a Vistában
OpenGL Eredetileg a Microsoft saját OpenGL implementációt készített volna. Végül arra jutottak, hogy a támogatás és ISV szempontból sem lenne értelme, így a hardver gyártókra bízták a saját verziójuk elkészítését. Ha nincs IHV meghajtó telepítve, a Vista visszatér a gyárilag csomagolt verzióra. Chuck Walbourn szoftver mérnök cikke szerint, melyet a Microsoft Developer Network-ön publikált, 3 dolgot tehet a Vista az OpenGL gyorsítással kapcsolatban. #1 MS OpenGL Szoftveres Renderelés (Ez OpenGL 1.1) "Ha nincs ICD telepítve, a rendszer visszaáll az OpenGl v1.1 szoftveres rétegére." #2 Gyártó OpenGL meghajtója "A Windows Vista hasonló támogatást nyújt az OpenGL-hez, mint a Windows XP, vagyis a videó kártya gyártók elkészíthetik a telepíthető kliens meghajtóikat (ICD), melyek hardveres gyorsítást kínálnak; a Vista teljes támogatásához az újabb verziójú ICD-kre lesz szükség." #3 Vista veszi a régebbi API-t és becsomagolja D3D-be "A Windows Vista grafikus rendszerét úgy tervezték, hogy a hardverek és felhasználási esetek többségét támogassa, ezzel új technoplógiákat lehet alkalmazni a régiek megtartása mellett. A már létező grafikus interfészek, mint a GDI, GDI+, és a Direct3D régebbi verziói továbbra is működnek a Vistán, de ahol lehet, ott a rendszeren belül átalakítják őket. Ez azt jelenti, hogy a legtöbb Windowsos alkalmazás továbbra is működőképes marad. A Windows Vista továbbra is támogatja a Windows XP által használt Direct3D és DirectDraw interfészeket, egészen a DirectX 3-as verziójáig (kivéve a Direct3D Retained Mode-ot, amit kivettek belőle). Ugyanúgy, mint a Windows XP Professional x64 Edition-nél, a 64-bites natív alkalmazások a Windows Vistán limitálva vannak a Direct3D9-re, DirectDraw7-re, vagy az újabb interfészek használatára. A nagy teljesítményű alkalmazásoknak érdemes Direct3D 9-t vagy újabbat használni, hogy a hardver teljes képességeit ki tudják használni." Volt alkalmam beszélni Barthold Lictenbelttel, aki az OpenGL architektúra felügyeleti testületének elnöke. Azt mondta, hogyha nincs ICD meghajtó telepítve, akkor a D3D-be csomagolás fog működni. Ez azt jelenti, hogy az OpenGL 1.4 szoftveres fog futni D3D-ben. A legjobb implementáció pedig a hardver gyártó OpenGL meghajtóját fogja használni. Megkérdeztem Barthold véleményét az OpenGl jövőjéről a Vistán és más fejlesztésekről. Míg a beszélgetés veleje nem tartozik ebbe a cikkbe, leszögezte, hogy az openGL-nek igenis van keresnivalója a Vistán és azt jósolta, hogy az openGL-nek nagyobb lesz a teljesítménye, mint a most érkező új D3D szabványnak. Mivel az OpenGL 14 éves, mondta Lichtenbelt, az idei évben két
új specifikáció várható. "Kipofozzuk az OpenGL-t," mondta, hogy a fejlesztők "gyorsabban írhassanak stabilabb alkalmazásokat, kevesebbe hiba legyen, ami nagyon nagy haszon." "[Az ARB] nagyon agresszív az OpenGL idei kiadásával kapcsolatban," mondta Lichtenbelt. A Longs Peak lesz az első kiadás. Ez a specifikáció a legtöbb létező hardver számára jó lesz. A következő specifikáció a Mt. Evans lesz (mindkettő Coloradóban található hegységekről nevezték el), ami már támogatja a geometriai shadereket és a D3D10-es hardverek egyéb újdonságait is. Miért van a DX10 a Vistában?
Tavaly már írtam a DX10-ről és a köré épített hardverek lehetőségeiről Miről is szól a Direct3D címmel. Ebben beszéltem a DirectX10 API grafikus részéről. Összeségében öt nagyobb változáson esett át az API: 1. 2. 3. 4. 5.
Fejlesztett programozói kifejezőkészség (Shader Modell 4.0 és Geometriai Shaderek) Szoros hardver specifikációk Növelt teljesítmény (kevesebb parancs ciklus képenként) Egységes utasítás készlet (High Level Shader Language 10) Stream I/O (A geometriai shaderek írhatnak a memóriába)
Bár a kódolás megkönnyítése és a hardver specifikációk szorosabbra fűzése jól hangzik a szoftver és hardver gyártók számára, a profi felhasználók vére az utolsó háromtól fog lázba jönni, mely a D3D10 egységesített shader architektúrájából ered. Nem maga a hardver, hanem amire ezzel képes az igazán lenyűgöző. Ha csak az architektúrát nézzük, egy egységes rendszer tűnik a leglogikusabb megoldásnak a dolgok kezelésére. Miért legyen külön fix számú pixel és vertex shader, amikor a terhelés tekintetében ezeknek a számát változtatni is lehet. Az egységes utasításkészlet segítségével a streaming vagy lebegőpontos processzorok menet közben állíthatják a funkciókat. Ez a funkció segíti az Nvidia G80 processzorát (GeForce 8800 sorozat), hogy a régebbi generáció munkájának kétszeresét el tudja végezni. Míg a tranzisztorszám a kétszeresére nőtt a G70-hez képest, a nyereségi arány közel sem 1:1-hez. Ahelyett, hogy bizonyos esetekben szűk keresztmetszet lenne az egyik feldolgozó egység, a mag át tudja magát konfigurálni, hogy alkalmazkodjon az adott kihíváshoz.
David Blythe "The Direct3D 10 System"
Egy erőteljes Input Assembler (IA) látja a processzor komponenseit megfelelő mennyiségű munkával, hogy mindig 100%-kos legyen a kihasználtság. Az IA meg is címzi az adatokat, így azokat a többi szállal együtt lehet kezelni, ezen felül meg is duplázza az adatokat, hogy a befejezett munkák újrarendezését minimalizálja. Ezt hívják instancing-nak. Az IA így százas vagy akár ezres nagyságrendben képes teljes objektumokat létrehozni és megcímkézni, majd ezekkel elárasztani a képernyőt. Ez egyszerűen lehetetlen a régebbi architektúra generációkkal. Ezek a változások a processzor nagyobb hatékonyságához vezettek. Emellett örvendetes tény, hogy az óriási meghajtókkal való bajlódást is megpróbálták a minimálisra csökkenteni. Ahogy már említettük, a meghajtók nagy részét kiemelték a kernel módból a Vista alatt. A kisebb többletköltség azt jelenti, hogy a CPU és más komponensek még több munkát tudnak végezni. Emiatt többnek
tudnak a ti dolgaitokkal foglalkozni. A játékok esetében, ez nagyobb fps-t vagy jobb grafikai minőséget vagy fizikai szimulációt jelent a jelenlegi frame rate mellett. Végül pedig itt vannak a Geometriai shaderek (GS). Míg a jelenlegi játékok nem tudják kihasználni az általa kínált funkciókat, a jövő alkalmazásai már biztosan alkalmazni fogják. A GS ereje abból fakad, hogy képes a memóriába írni. Ezt egy Stream Output (SO) segítségével teszi meg. Az SO segítségével a geometriai shader a folyamat bármely részéből tud adatokat beolvasni saját magába. Ez azt jelenti, hogy az IA és a vertex shaderek felöl akár meg is szűnhet az adatáramlás. A jeleneteket úgy is fent lehet tartani, hogy csak a kimeneti adatokat manipuláljuk. Csak képzeljétek el, hogy milyen játékokat lehetne így valós időben generálni (kérem a vertikálisan és horizontálisan scrollozó játékaimat 3D-ben). Teszt beállítások Rendszer hardver Processzor(s) Intel Core 2 Extreme X6800 Conroe 2.93 GHz, 1,066 MHz FSB, 32 kB + 32 kB L1 , 4 MB L2 Platform eVGA 122-CK-NF68-AR, LGA 775 Nvidia nForce 680i SLI, BIOS version 2.053.57 RAM Corsair CM2X1024-9136C5D 2x 1024 MB DDR2 @ 800 MHz (CL5-5-5-15) Merevlemez Western Digital Raptor, WD1500ADFD 150 GB, 10,000 rpm, 16 MB cache, SATA150 Hálózat Alaplapi nForce4 Gigabit Ethernet Grafikus kártyák ATI Radeon X1950XTX 512 MB GDDR4 650 MHz mag 1,000 MHz memória (2.00 GHz DDR) Nvidia GeForce 7900GTX 512 MB GDDR3 675 MHz mag 820 MHz memória (1.64 GHz DDR) Tápegység PC Power & Cooling Turbo-Cool 1,000W CPU hűtő Zalman CNPS9700 LED Rendszer Szoftver & meghajtó programok OS Microsoft Windows XP Professional 5.10.2600, Service Pack 2 Microsoft Windows Vista RTM - Ultimate DirectX Verzió Windows XP - 9.0c (4.09.0000.0904) Windows Vista-Ultimate - 10 Grafikus meghajtók ATI - Catalyst 8.31.100.3.2.1 Vista 32 RTM Nvidia - Forceware 97.46 International
Teszteredmények 3DMark05 Mint általában mindig, most is teszteltük a 3DMark05 programot minden felbontáson és első körben az antialiasing és az anisotropic filtering kikapcsolásával. A második körben a képminőséget 4xAA-ra és 8xAF-ra állítottuk.
Jól látszik, hogy az AMD (korábban ATI) olyan Vista meghajtóval rendelkezik, ami azonos teljesítményre képes, mint az XP-s vetélytársa. A Microsoft szerint nem lenne meglepő, ha a grafikus teljesítmény akár 5%-10% is elmaradna az XP-hez képest. Ha ki vannak kapcsolva a képminőség javítók, akkor ez igaz is az Nvidia megoldására, de ha bekapcsoljuk őket, akkor már más a helyzet. Többször is leteszteltük az Nvidia GeForce 7900GTX-et Vista alatt, hogy lássuk
valóban 50%-os a teljesítmény csökkenés 2048x1536-as felbontás és 4xAA, 8xAF mellett. Mind az 1600x1200-as és a 2560x1600-as felbontás 37%-os csökkenést ért el.
Doom 3 Az alap Doom 3 teszteknél a magas minőségi szintet állítjuk be a játékon belül. Ez 8x AF-et jelent.
Először az antialiasing kikapcsolásával tettünk egy tesztkört, majd 4x AA mellett még egyet. A Doom 3 teljesen más képet mutat a teljesítmény viszonylatában. Világos, hogy az AMD/ATI jelenleg nem rak OpenGl meghajtót a Vista RTM Catalystba. A meghjatóért felelős csapat is elismerte, hogy valóban nics OpenGL komponens a mostani driverben. Már látjuk a káoszt, ami az okoz majd ha a felhasználók nem töltik le valamilyen hardver gyártó OpenGL meghajtóját. Az AMD megoldását még a Vista beépített meghajtója is elveri. Az AMD szerint a hivatalos Vista startra már lesz OpenGL komponens.
Sajnos a Vista driver alatt, a Radeon X1950XTX még csak nem is tudta futtatni a Doom 3-at 2560x1600 felbontáson. Ez látszik is a grafikonon megjelenő 100%-os teljesítmény csökkenésből... Aúú! Ezek a korlátok megkövetelik, hogy az indulásra kijavítsák a meghajtó programot. Bár ez rossznak tűnik, egyelőre nem sokan érhetik el a Vistát, de majd amikor már kikerül a piacra, akkora azt várjuk, hogy az OpenGl a lehető legsimábban fog működni. Azért az Nvidia sem teljesen tiszta ezekben a tesztekben. Bár sokszor belül maradtunk a 10%-os határon, előfordult akár 27%-os teljesítmény csökkenés is. Ezt is ki kell javítani a Vista indulásáig.
F.E.A.R. A F.E.A.R. teszteket is hasonlóan végeztük el, mint az előző két szoftvernél. Az első körben minden beállítás maxon van, kivéve az AA-t és AF-t, illetve a soft shadows is ki van kapcsolva. A második körben 4x AA-t és 8x AF-t állítottunk be. A F.E.A.R. általában az Nvidia hardvereket szereti.
Viszont az eredmények szánalomra méltóak mindkét oldalon. Úgy néz ki problémák vannak az AA és AF-vel. Nem tudjuk, hogy kiakpcsolt állapotban is engedélyezi -e őket a driver, de a teljesítményből erre következtetünk. Az első három felbontáson a ki- és bekapcsolt állapotban elért eredmények szinte teljesen megegyeznek az Nvidia kártyákon. Az AMD viszont ROSSZABBUL teljesített, ha ki voltak kapcsolva a képminőség javítók. Ez teljesen érthetelen és remélem ezt a hibát ki fogják javítani.
Tisztán látszik, hogy mindkét cégnek fejleszteni kell a F.E.A.R. alacsony minőségű teljesítményét. Az AMD-nek sikerült a magas minőségű tesztekben jó teljesítményt elérni, kivéve az 2560x1600 felbontást, ahol is 33%-os esést tapasztaltunk. Ebben a tesztben az Nvidia teljesítménye közel 70%os csökkenést szenvedett. Ezt is mindenképpen orvosolni kell az indulás előtt.
Oblivion Végül, de nem utolsó sorban itt van a DX9 kín teszt, az Elder Scrolls IV: Oblivion. Ebben a tesztben egyedül a HDR és soft shadows beállítást nem maximalizáltuk. Kikapcsoltuk a HDR-t mivel az Nvidia GeForce 7900GTX nem képes egyszerre HDR-t és AA-t is, és a Radeon sem képes erre speciális meghajtók nélkül. A soft shadowst is kikapcsoltuk, mivel ezt egyszerűen rosszul jeleníti meg a program. Árnyékok jelenhetnek meg a karakterek arcán, ha mögöttük van egy fényforrás, így úgy tűnik mintha mindenkinek szakálla lenne (még a nőknek is). A kültéri jelenetünk hosszú látósugarakat tartalmaz; a nappalból éjszaka lesz és a növényzet lengedezik a szellőben. Ez nagy hatással van a teljesítményre. Itt a puszta izomerőre van szükség a teszten való túljutáshoz. A beltéri jelenet ennek épp az ellenkezője. Ez egy nagy szoba textúrázott felületekkel, egy jól kidolgozott karddal a főhős kezében és periodikus villám effekttel. Ez a jelenet kevesebbet kíván és nagyobb teljesítmény érhető el, mint a masszív kültéri jelenetnél. A kettő együtt jó közelítést ad arról, hogy a játékos mire számíthat.
Az eredmények alapján az AMD-nek előnye van a Vistán az XP-vel szemben a kültéri jelenetekben. Ez az a teszt, amiben a teljesítményekkel kapcsolatos limitek egyértelműen a grafikus processzorból adódnak. Az eredmény azt mutatja, hogy a Vista meghajtó azt teszi, ami a dolga ha a rendszert óriási terhelésnek vetjük alá. A beltéri teszt ennek épp az ellenkezőjét mutatja. Az AMD általában még a várható 10%-os veszteségen belül marad, de az Nvidiának már két számjegyűek a negatív
értékei, kivéve egyetlen teszt beállítást. Megint csak óriási teljesítmény veszteséget látunk 2048x1536 felbontáson.
Konklúzió: Maradjak inkább az XP-nél?
Kép a Crytek-ből - Eddig soha nem látott interakció a környezettel, és mellette olyan élethűnek tűnik... ezt hívom én teljes elmerülésnek.
A Vista érdekes platformnak tűnik a multimédiás, hasznos és játék programok számára is. A Microsoft sok erőforrást ölt abba, hogy a Vista jól nézzen ki. Ez persze sokat követel a hardver gyártóktól. A Microsoft csak alap hardveres meghajtókat rakott a rendszerbe, amikkel a desktop jól néz ki minden, de egy igazán robusztus meghajtó programra van szükség, hogy a játékok is jól menjenek. Az AMD-nek még dolgoznia kell az OpenGL teljesítményen és a korábban említett csomók kibogozásán. A sziget másik végén, az Nvidiának el kell tüntetnie a bugokat, mint amilyet a meghajtó telepítőjében is találtunk, illetve ahol a teljesítmény a legnagyobb csapást szenvedi el. Mindkettőnek lesz min dolgoznia az indulásig. A Vista jelenlegi állapotában túlságosan is instabil és kényelmetlen a cseréhez. Nem igazán tetszett a hálózatos megoldások egy része sem, amiket a teszt rendszer felállításához kellett igénybe vennem, hogy átmásoljam az eltárolt teljesítmény adatokat. Az asztali kiegészítők egy része jól nézett ki, de 30 perccel egy új telepítése után már nem volt olyan érdekes. A Pong és a Tic-Tac-Toe egy idő után unalmassá válik, míg a többi herkentyű többsége megtalálható azokban a programokban, amiket most is használok. Azért van egy-két játék az idénre tervezettek közül, amiket várok, mint például a Supreme Commandert, ami majd megdolgoztatja a geometriai shadereket, és a 2007-es csillagot is, a Crysist. Emiatt nem igazán hiszem, hogy a profi felhasználók hamar áttérnének a Vistára, kivéve, ha nem érkezik nyomás, hogy jelentős fejlesztésekbe kezdjenek. Mint a többi platformnál, a Vistának is kell egy év mire megveti a lábát és még egy év mire az infrastruktúra kritikus környezetekben is elkezdenek átállni rá.