Vad är DirectX och varför är det viktigt?

DirectX är ett API eller Application Programming Interface . Det fungerar som mellanhand mellan mjukvarukoden för videospel och hårdvaran som används för att spela dem. Utan DirectX skulle det inte vara så smärtfritt att spela videospel som det är idag, men vad är DirectX och varför är det så viktigt?

DirectX är ett API , men vad är det?

Vi har sagt att ett API är mjukvara som låter spel kommunicera med hårdvara, men det är en stor förenkling. Hårdvarudrivrutiner som talar till operativsystemet kan trots allt också beskrivas på samma sätt.

Vad ett API gör är att standardisera katalogen med kommandon och funktioner som spelutvecklare kan be datorhårdvara att tillhandahålla. Det är ett lager av mjukvara mellan spelet och hårdvaran som översätter de två "språken" som spelet och hårdvaran talar.

För att vara mer exakt talar API :t till hårdvarudrivrutinerna på uppdrag av spelet och eftersom både spel- och hårdvarudrivrutinerna har skrivits för att vara kompatibla med DirectX , snarare än varandra direkt, betyder det att konversationen är sömlös. 

Om du vill gräva djupare i API(APIs) :er förklarar HDG: Vad är ett API? (HDG Explains: What Is An API?)är ett bra ställe att börja.

De dåliga gamla dagarna före DirectX

Så vi har konstaterat att DirectX är ett API som står mellan ett spel och den hårdvara som det behöver för att köra, men varför kan inte tv-spelet bara prata direkt till grafikkortet, ljudkortet och så vidare?

Det är precis vad som hände. Under MS-DOS och (MS-DOS)Windows tidiga dagar kommunicerade videospel direkt med hårdvarudrivrutiner.

Problemet med detta tillvägagångssätt är att spelutvecklaren var tvungen att skriva kod för varje enskild produkt eller produktfamilj. Om du spelar ett klassiskt MS-DOS-spel idag, kommer du att se ljudkortsposter för märken som Creative SoundBlaster eller AdLib .

Dessa var de mest populära ljudkortsmärkena, så spelutvecklare kunde täcka de flesta kunder genom att stödja dem, men inte alla. Så småningom skulle mindre kända hårdvarutillverkare skapa produkter som var kompatibla med samma drivrutiner som de stora namnen. Det(Which) är därför vi fick så många " Sound Blaster-kompatibla(Sound Blaster Compatible) "-kort förr i tiden.

Resultatet var att även om du fick den hårdvara som stöds mest så fanns det ingen garanti för att ett givet spel skulle fungera med din dator. DirectX löste detta problem.

DirectX gör saker enklare(DirectX Makes Things Easier) för utvecklare(Developers) och maskinvarutillverkare(Hardware Makers)

Varje version av DirectX (och vi är upp till DirectX 12 ) fastställer den uppsättning hårdvaru- och mjukvarufunktioner som kompatibel hårdvara måste ha. Med andra ord, om du vill att ditt grafikkort ska vara certifierat för den senaste versionen av DirectX måste det ha ett minimum av funktioner inbyggda i det.

Utvecklare skriver sedan sina spel för att inte vara kompatibla med ett specifikt grafikkort, utan för att vara kompatibla med själva DirectX . Med andra ord, både hårdvarutillverkare och spelutvecklare standardiserar sina produkter till DirectX och som sådan kommer alla spel och hårdvarukomponenter som är designade för att fungera med en specifik version av DirectX garanterat att spela bra med varandra.

DirectX är "X" i Xbox

Alla vet att de två största namnen i spelkonsolutrymmet är PlayStation och Xbox , men vad du kanske inte vet är att det ursprungliga namnet på den senare först var "DirectX Box".

Det är förmodligen det bästa som Microsoft bestämde sig för att förkorta namnet, men det är också en mycket exakt beskrivning av konsolen. Den första Xboxen var kullerstensbelagd med PC-hårdvara och körde en nedskuren version av Windows och DirectX . Det är fortfarande sant idag med de senaste Xbox Series X- och S-konsolerna(Xbox Series X and S consoles)

En stor fördel med detta är att portering av spel mellan Xbox och Windows PC är väldigt enkelt. Eftersom de i praktiken är samma plattform. PlayStation och Nintendo Switch använder dock sina egna API(APIs) :er , vilket för oss till nästa viktiga fakta om DirectX .

DirectX är inte det enda spelet(Game) i stan(Town)

Även om DirectX har blivit en av de viktigaste och mest utbredda API(APIs) :erna , är det långt ifrån den enda. Många olika organisationer insåg att det fanns ett behov av standardisering. Medan DirectX är ett API som omfattar allt från grafik till spelkontroller, finns det också API:er(APIs) som bara fokuserar på en aspekt, som grafik.

När det första 3D-grafikkortet började bli populärt i mitten av 90-talet blev behovet av grafiska API(APIs) :er akut. 3dFX Voodoo - korten använde det proprietära Glide API . OpenGL ( Open Graphics Library ) är en öppen standard som fortfarande är populär idag och som finns i sin moderna form som Vulkan . Dessutom har Apple sitt Metal API för sina egna enheter och det finns många fler i andra enhetskategorier som mobiltelefoner och surfplattor.

Även om DirectX(DirectX) inte har fullständig marknadsdominans, påverkas andra API :er av vad (APIs)Microsoft beslutat att föreskriva i varje version av DirectX . Som sagt, de dikterar inte till alla andra. Varje version av DirectX skapas i samråd med alla intressenter, så relationen verkar vara mer ömsesidig än man kan anta.

DirectX är inget du behöver oroa dig för

Den stora frågan är i vilken utsträckning du som användare behöver oroa dig för DirectX . Tidigare, med tidigare versioner av DirectX på äldre Windows -system, måste du installera DirectX manuellt. För det mesta skulle ett givet spel paketera den minsta versionen av DirectX som behövs. Om det installationsprogrammet upptäckte en nyare version av den DirectX- generationen på systemet skulle det helt enkelt inte installera något.

Varje DirectX- version (t.ex. 9c,11 &12) är sin egen grej, men Windows 10 kommer med kopior av dem förinstallerade. Dina äldre spel kommer att fungera bra på din glänsande nya Windows 10 -dator.

Vad som är mycket viktigare är ditt val av hårdvara. Du kan alltid uppdatera programvaran eller ladda ner rätt programvara för att få retrospel att fungera, men hårdvaran du har kan inte ändras utan en uppgradering eller en ny dator.

Hårdvarukompatibilitet med DirectX

Varje hårdvara som är relevant för videospel eller andra program som använder liknande teknik, är i allmänhet kompatibel med den senaste versionen av DirectX vid tidpunkten för dess release.

Men skulle en ny version av DirectX släppas, finns det en chans att din befintliga hårdvara kanske inte är kompatibel om den saknar en hårdvarufunktion som en ny version av DirectX behöver för att fungera. Detta är dock inte en anledning att omedelbart byta hårdvara! 

Det finns alltid en övergångsperiod där spel stöder flera versioner av DirectX . Till exempel är det för närvarande typiskt för spel att stödja både DirectX 11 och DirectX 12 . Men om du letar efter en ny hårdvara (särskilt GPU(GPUs) : er ) så är det en bra idé att köpa något som är kompatibelt med den senaste större versionen av DirectX . Eftersom du vill att ditt nya köp ska vara relevant i minst några år.

Medan du håller på kan du lika gärna kontrollera om din nya hårdvara är kompatibel med de senaste versionerna av andra stora konkurrerande API(APIs) :er , som Vulcan , också.



About the author

Med en stor erfarenhet av Windows 10 och smartphones är jag en stark förespråkare av Microsoft Edge och de förmågor det ger. Förutom att vara expert på fel och wifi vet jag hur man använder verktyg som OneDrive och Cortana för att göra ditt arbete enklare.



Related posts