Windows - DirectX áttekintés

Főleg játékok kapcsán manapság már nélkülözhetetlen a DirectX feltelepítése. Programok milliói használják ki az általa nyújtott előnyöket, már alapértelmezésben megtalálható az operációs rendszerben, hogy a felhasználóknak minél kevesebb dolguk legyen vele. Cikkünkben betekintést nyújtunk ennek a népszerű szolgáltatásnak a felépítéséről, főbb jellemzőiről.
A DirectX technológiák egy csoportjának összefoglaló neve, melyet a Microsoft fejlesztett, elterjedését még az sem gátolta, hogy csak Windows alapú operációs rendszeren fut. Ideális platformot teremt valós idejű, full color, 3D-s grafikákat használó programok fejlesztéséhez. Ezenkívül támogatja a különböző mozgókép megjelenítési, zene (surround is) részek készítését. Windows 98-tól kezdve beépült a Microsoft operációs rendszereibe, de külön is letölthető az Internetről a Microsoft honlapjáról. Mivel nem az operációs rendszerrel együtt történik a fejlesztése, ezért külön letöltve, javítócsomagokban vagy egyéb szoftver összeállításokban is elérhető. Minden egyes kiadás rendelkezik verziószámmal, melyet az adott alkalmazások ellenőriznek és közlik a felhasználóval, ha a frissebb DirectX verzióra van szükség.
Elsősorban szoftverfejlesztőknek szánt termékről van szó, mely nem más, mint egy API (Application Programming Interface) gyűjtemény. Maximálisan kihasználja a videokártyák és hangkártyák beépített gyorsítási és effektus előállító funkcióit. Megkíméli a programozót alacsony szintű függvényhívások készítésétől, mint amilyen például a grafikus kártya memóriakezelése. Ezenkívül támogatja a különféle beviteli eszközök - botkormányok, billentyűzet, kormány, egér, gamepad, stb. - programból való lekezelését. Ezáltal kialakul egy egységes interfész a hardver és az alkalmazás között, nem kell a programozónak a hardverrel foglalkoznia, elegendő meghívni a DirectX függvényeit. A DirecX előtt a programozók kénytelenek voltak figyelembe venni, hogy milyen eszközök lehetnek a gépben és külön konfigurálni kellett őket. A hardverhez támogatást kellett beépíteni a programokba. Ezáltal nem csak a szoftverfejlesztés gyorsult fel drámai mértékben, hanem a hibák száma is jelentősen csökkent.
Nézzük milyen összetevőkből áll a DirectX szoftvercsomag:
Direct3D
A Microsoft Direct3D alkalmazásfejlesztői felület összeköttetést jelent a legtöbb új videokártyába beépített 3D leképzési funkciókhoz. A Direct3D alacsony szintű háromdimenziós alkalmazásfejlesztői felület a szoftverprogramok számára eszközfüggetlen módszert biztosít a gyorsítóhardverrel folytatott hatékony kommunikációhoz. A Direct3D támogatja a speciális CPU-utasításkészlet használatát is, ezzel az új számítógépeken további gyorsítás érhető el.
DirectInput
Az eszközmeghajtókon túl a Windows Win32 API gyűjteménye nem tartalmaz támogatást a beviteli eszközök (billentyűzet, kormány, egér, gamepad, stb.) használatához. Hiánypótló tehát a DirectInput szolgáltatás, lehetővé teszi az alkalmazások számára, hogy a háttérben fogadják az eszközök be- és kimeneti adatait. Egyszerűen programozhatóvá tesz olyan funkciókat, mint a kormányok force feed back hatása, ahol a program visszahat a kormányra, valószerűbbé téve a hatást. A billentyűzet és egérkezeléshez azonban nem nyújt az operációs rendszer lehetőségeinél többet, mert olyan egyszerű eszközökről van szó, melyeket maximálisan kihasznál a Windows is.
DirectAudio
Kicsit többről van szó, mint egyszerű hang lejátszásról, kihasználva a hardver lehetőségeit 3D-s hangzások, hangletöltések (downloadable sounds - DSL), effektusok építhetők be a lejátszásba, kihasználva az elérhető maximális sebességet. Lehetővé teszi, hogy több forrásból, egyszerre szólaltassunk meg hangokat. Képes időzített lejátszásra, mikrofon kezelésre, szintetizálásra, sorrendvezérlésre.
DirectMusic
A Microsoft DirectMusic alkalmazásfejlesztői felület a DirectX interaktív hangösszetevője. A DirectSound alkalmazásfejlesztői felülettől elérően, amely digitális hangmintákat rögzít és játszik le, a DirectMusic digitális és üzenet alapú zenei adatokat is tud kezelni, amelyeket a hangkártya vagy az alkalmazás saját beépített szoftveres szintetizátora alakít digitális hanggá. A DirectMusic alkalmazásfejlesztői felület a Musical Instrument Digital Interface (MIDI) formátumú bevitel, illetve a tömörített és tömörítetlen digitális hangformátumok használatát is támogatja. A DirectMusic segítségével a szoftverfejlesztők hatásos és dinamikus zeneszámokat hozhatnak létre, amelyek megfelelnek a szoftverkörnyezet változó követelményeinek, amelyekben nem elhanyagolható szerepet játszanak a közvetlenül a felhasználó által bevitt adatok.
DirectPlay
Az alkalmazások hálózatban való használatát segíti elő, fel van szerelve egy média függő API gyűjteménnyel. TCP/IP és IPX protokollal kommunikál, többféle megoldásban: kliens - szerver és peer-to-peer. A kapcsolat eszköze lehet modem, közvetlen kábelkapcsolat, hálózati kártya, stb. A minél nagyobb sebesség elérése érdekében közvetlen hardverhívásokat alkalmaz, ezért nem eszköz független, de támogatott hardverek listája jelentős.
DirectShow
Mozgóképek lejátszását és felvételét támogatja Microsoft Windows Media Format-ban. Különböző szűrők alkalmazásával megváltoztathatjuk mind a bemeneten, mind a kimeneten áthaladó jelet. Beépített DVD támogatást tartalmaz, MJPEG tömörítő és kicsomagoló algoritmust, kezeli az MPEG-2 formátumot és tartalmazza a Microsoft TV Technologies szolgáltatást.