DirectX

DirectX er et maskinvaregrensesnitt for å muliggjøre programvareutvikling mot maskinvare på en generell måte. Dette grensesnittet består av flere forskjellige deler, som Direct3D eller DirectInput.
Fordelen med DirectX, er at programvareutvikleren ikke trenger å tenke på hvordan hver del av maskinvaren forventer å motta informasjon, dette ordnes av DirectX og driverne. I tillegg har DirectX et omfattende bibliotek med hjelpefunksjoner som programmereren kan trenge. 
X'en i DirectX sitt navn står for alle de forskjellige API'ene som DirectX samlingen har, der X byttes ut med ønsket funksjon.

DirectX og underholdning

DirectX blir gjerne også brukt til utvikling av undervisnings- og underholdningsprogrammer (videospill, simulatorer, osv). I disse tilfellene blir gjerne en subkategori av DirectX brukt til å vise 3D-bilder på en 2D-skjerm. Dette kalles Direct3D.

DirectX API 

DirectX er en samling av flere API-er
Direct3D
Dette er Microsoft sitt proprietære 3D API, som er laget med tanke på maskinvareakselerasjon. Selv om Direct3D støtter programvarerendering, er denne såpass treg at den sjeldent eller aldri er i bruk.
Direct3D ble med i DirectX fra versjon 4
DirectX Audio
DirectX Audio fungerer som bindeleddet mellom programmer og lydkortet. Dette gjør det mulig for programmer å benytte seg av funksjoner på lydkortet som for eksempel avspilling og opptak av lyd.
DirectX Audio ble navnet på denne delen da DirectSound og DirectSound3D ble satt sammen i DirectX 8
DirectDraw 
DirectDraw er ikke lenger i bruk, siste oppdatering var i DirectX 7, selv om det finnes managed versjon i DirectX 8.0 og 9.0
Dermed må man enten bruke GDI, GDI+ eller Direct3D til å tegne grafikk.
Ulempen er at mange eldre spill brukte DirectDraw til å vise et ferdigrendret bilde på skjermen, blant annet Unreal brukte denne teknikken.
DirectShow
DirectShow brukes til å vise lyd og bilde ved bruk av såkalte DirectShow-filtre. Dette er den vanligste formen for dekodere.
Denne delen går også under kodenavnet Quartz
DirectMusic
DirectMusic er et API for å lage MIDI-musikk.
DirectPlay
DirectPlay er nettverksstøtten i DirectX
DirectInput
DirectInput er laget for å gi spill og programmer støtte for joystick, mus, tastatur og joypads. DirectInput begynner å falle bort, og Microsoft anbefaler heller å bruke Windows Messages eller XInput om du bruker Xbox kontrollere.

Alle DirectX API-ene er laget med tanke på maskinvarestøtte, men kan også falle tilbake på programvare, dersom maskinvaren ikke støtter alle nødvendige fasiliteter.
Dette til tross for at denne støtten er fjernet i Direct3D i DirectX 10 under Windows Vista, der skjermkortet enten støtter DirectX 10, eller ikke.

Referanser

Eksterne lenker
 

Microsoft
Grensesnitt for programvare
Proprietær programvare