3D hangzás a Medal Of Honor AA akciójáték alatt -- semmi sem lehetetlen
A hazánkban is nemsokára kapható Medal Of Honor Allied Assault második világháborús FPS akciójáték hangja hagy némi kívánnivalót maga után. Persze nem az effektek minőségére gondolok, abban hiba nincs, hanem a támogatott API-k listája sikeredett túl szerényre. Egyetlen tételből áll, de szerencsére ezen lehet változtatni.
A játékról készült előzetes videók óriási port kavartak, az általuk sugárzott hangulatra már nagyon régen vártunk. A Medal Of Honor Allied Assault játékot nem kisebb cég jegyzi, mint az Electronic Arts, készítésében ugyanazok a szakértők vettek részt -- többek között --, mint a Ryan közlegény megmentése és Az elit alakulat című filmek tudorai. A játék hangjai is a fenti filmekből valók, ennél többet talán nem is kell mondani. A demót mindenképpen érdemes megnézni.
Az EA által kiadott játék hangja minden képzeletet felülmúl, mind a hangeffekteket, mind a fegyverek hangját tekintve. Érdekes módon a játék alapból csak a Miles szoftveres hangpozícionáló motorját tartalmazza, mely ráadásul csak 2D-s, sztereó és Dolby Surround hanzást támogat, melyhez ilyen erősítő (és megfelelő hangfalkészlet) kell.
A hangkártyák által támogatott EAX 1-2, A3D 1-2 és DirectSound3D API-k, programozási felületek támogatása -- egyelőre -- nem került bele a játékba, és az amerikai verzióhoz napokban kiadott 1.1-es javítás sem hoz változást ezen a téren. Így tehát hiába a hiperszuper, mindenféle szabványt, API-t támogató kitűnő hangkártyánk, a játék nagyszerű hangjait térben nem igazán élvezhetjük.
A térbeli hangzás multiplayer játszmák alatt tapasztalt előnyeiről a Vortex2 kártyák tulajdonosai tudnának mesélni, és is játszottam bizony CounterStrike-ot A3D 2.0 támogatással. A Half-Life engine az A3D 2.0 tökéletes támogatásának egyik mintadarabja.
A játék alatt a pozícionálásnak köszönhetően fejhallgatón pontosan lehet(ett) hallani a másik játékos helyzetét, akár mellettünk vagy mögöttünk van, a távolságról nem is szólva. Persze egyesek ezt szkeptikusan fogadják (hogyan is lehet a 2-hangszórós fejhallgatón teljes, 360 fokos 3D-hangzást létrehozni?), de aki használta és próbálta az tudja, hogy ez tény. Működik.
Éppen ezért különösen bosszantó a támogatás hiánya a Medal Of Honor Allied Assault alatt, főleg annak tudatában, hogy a hangok pozíciója és ennek kezelése a játékfejlesztők által tökéletesen modellezésre került, megfelelő file-ok birtokában előcsalható a 3D-s hang a játékból.
Szerencsére nem is kell megvárnunk, amíg az EA lép ebben az ügyben.
[oldal:...de van megoldás!]
Házilag is tehetünk valamit, hogy minél teljesebb, szuperebb, 3D-pozicionált hangot kapjunk a Medal Of Honor Allied Assault motorjából. Mivel a játék a Miles könyvtárjait használja a hangzás előállításához, nincs más dolgunk, mint keresni egy másik játékot, mely szintén ezt a hang-motort használja, s rendelkezik az egyéb API-k támogatásával is.Mi mást, mint az internetet használhatjuk fel legjobban céljaink érdekében: némi keresés a Google-n és a Rad Tools (a Miles driver fejlesztője) honlapján, s rögtön elénktárul a kánaán.
Összegyűjtöttem és egy zip fileban letölthetővé tettem a fellelt m3d állományokat, melyek segítségével bárki kiválaszthatja a hangkártyájának és lelkivilágának legmegfelelőbb 3D-hangzást nyújtó API-t. A telepítéshez is nyújtok némi segédletet természetesen, most következzék ennek menete:
A játék a telepítéskor létrejött könyvtár snddrivers alkönyvtárában tárolja az engine által használható, támogatást nyújtó fileokat. A zip tartalmát ide kell kicsomagolni, ezután már nagyon egyszerű dolgunk lesz. A könyvtárban lévő fileokat nyugodtan írjuk felül, a zip a legfrissebb meghajtókat tartalmazza, némelyik ugyanaz, mint a MOHAA eredeti drivere.
Figyelem, a Qmixmss.dll állományt ki kell másolni a MOHAA főkönyvtárába, különben hibaüzenetet kapunk a játék indításakor!
Ezután el kell indítanunk a Medal Of Honor Allied Assault játékot (vagy demóját) és le kell hívnunk a konzolt (általában magyar billentyűzeten a nullás gomb). Amennyiben nincs konzol, a beállítások között pipáljuk be, Apply, és máris van.
A konzolban gépeljük be: snd_restart és egy enter természetesen. Erre a parancsra újrainicializálódik a játék hangot kezelő része, innen lényegében bármelyik API-t kiválaszthatjuk a MOHAA újraindítása nélkül.
Az Available Sound Providers alatt egy felsorolást találunk, melynek valahogyan így kell kinézni a zip bepakolása után:
- Miles Fast 2D Positional Audio (szoftveres)
- DirectSound3D Hardware Support (hardveres)
- Aureal A3D Interactive (TM) (hangkártyafüggő)
- Aureal A3D 2.0 (TM) (hangkártyafüggő)
- Dolby Surround (szoftveres)
- DirectSound3D Software Emulation (szoftveres)
- Creative Labs EAX (TM) (hangkártyafüggő)
- Creative Labs EAX 2 (TM) (hangkártyafüggő)
- RAD Game Tools RSX 3D Audio (szoftveres)
- QSound QMixer for Miles (Evaluation) (szoftveres)
Ezek közül kell kiválasztanunk a nekünk és hangkártyánknak megfelelőt. Értelemszerűen csak azt az API-t tudjuk használni, amelyet a hangkártyánk is támogat. A kiválasztott támogatást az s_milesdriver "API neve" paranccsal tudjuk a konfigurációs fileba írni, melyet ezután az snd_restart paranccsal tudunk aktiválni, azonnal. Az aktiválás után a konzolban a sikerességet is le tudjuk ellenőrizni, a ... provider opened mellett az új API-nak kell szerepelni.
Az API nevét halálpontosan kell megadni, tehát ha a DirectSound3D Hardware Support-ot akarjuk kiválasztani, az s_milesdriver "DirectSound3D Hardware Support" parancsot kell megadnunk, idézőjelekkel együtt.
Az API-t játék közben is változtathatjuk, így rögtön hallhatjuk is a hangmiőség, pozicionálás változásait. Érdemes eljátszani a dologgal, multi partikban óriási előnyt jelenthet a lövések irányának hallása, az ellenséges játékos pozíciójának ismerete hallás által! A hangkártyák különbözőképpen támogatják a különböző szabványokat, az egyiken az EAX 2.0 fog tökéletes hangot biztosítani, a másikon a DirectSound3D.
Az engine lehetőséget ad a reverb, a hangvisszaverődések bekapcsolására is, melynek szobákban, zárt helyeken hallhatjuk hatását. A bekapcsolás parancsa az s_reverb 1, a kikapcsolásé az s_reverb 0, és szintén egy snd_restart kövesse.
Semmiképpen se felejtsük el az audio beállítási részben kiválasztani a hangszórórendszerünk típusát, főleg 4-hangszórós felállás esetén!
A fentiekért természetesen semmilyen felesősséget nem vállalok, de jó kísérletezést, és eredményes játékot kívánok minden MOHAA rajongónak.
Végül, mielőtt elfelejtem: a QSound QMixer for Miles (Evaluation) API-t csak óvatosan használjuk, regisztrált, kifogástalanul működő .m3d és .dll állományt sajnos nem találtam, hiába kerestem. Így a szoftver ezzel az API-val állandóan üzeneteket küldözget a regisztrálatlan mivoltáról, mely lényegében használhatatlanná teszi. A telepítés itt annyiban módosul, hogy a Qmixmss.dll állományt ki kell másolni a játék főkönyvtárjába is. A sors iróniája, hogy SonicFury-s tapasztalataimra alapozva -- és szoftveres létére -- ez az API nyújtja a legjobb hangminőséget. Ha valaki esetleg összefutna valamelyik játékában Qmixmss.dll és Mssqsnd.m3d állományokkal, ne türtőztesse magát, és küldje el a fenti e-mail címre. Előre is köszönet érte.
Update: a tesztek azt mutatják, hogy a multiplayer pályák betöltődésekor, egyes Miles driverek használatakor kiléphet a játék a Windows desktopra. Single alatt és az alap Miles drivernél, valamint a DirectSound3D szoftveres emulációjánál ez nem tapasztalható, de például a Creative Sound Blaster Live, és az EAX 2.0 Miles driver is tökéletes, problémamentes párt alkot. Ebből feltételezhető, hogy a hangkártyák driverének is lehet köze a hibához. Ha valakinek problémája adódna az online játékban emiatt, állítsa vissza az alap drivert...