"DirectX 12 maakt AMD + Nvidia combi mogelijk"

Tegelijk met Windows 10 lanceert Microsoft later dit jaar DirectX 12. Voor degenen die niet weten wat DirectX is, volgt hier een korte uitleg.

DirectX 12
Om iets te programmeren voor een pc is het vermoeiend om steeds weer duidelijk te moeten maken aan de pc wat je nu eigenlijk met ‘geluidskaart’ bedoeld en waar de pc moet zoeken om een toetsenbord te lokaliseren. Hiervoor zijn kleine programmaatjes ontwikkeld, genaamd application programming interfaces (API’s), zodat je niet steeds opnieuw het wiel hoeft uit te vinden. Een specifieke verzameling van zulke API’s speciaal voor game-programmeurs is bijvoorbeeld OpenGL, Mantle of DirectX. Microsoft is degene die DirectX ontwikkelt en uitgeeft. Regelmatig komen zij met een nieuwe versie met meer mogelijkheden en verbeteringen. DirectX 12 belooft veel verbeteringen, zoals zuiniger met stroom omgaan en verbeterd geluid.

AMD

Videokaart
Om de zwaardere games te kunnen spelen op een pc, heb je een grafische kaart (videokaart) nodig van AMD of Nvidia. Deze twee producenten zijn concurrenten die elkaar telkens weer de loef willen afsteken. Daar profiteert de consument doorgaans alleen maar van. Nvidia kwam bijvoorbeeld met een innovatie genaamd G-Sync, waardoor bepaalde monitoren met deze technologie beter gingen samenwerken met de videokaart. Deze techniek is duur en AMD ontwikkelde daarop een gratis variant genaamd FreeSync. Leuk voor de consument, want die heeft meer keus.

Nvidia

Videokaarten
Er zijn moederborden die in plaats van één ook twee videokaarten kunnen herbergen. Om deze goed met elkaar te laten samenwerken is het wel nodig dat je moederbord én je videokaarten dat ook ondersteunen. Twee (of meer) videokaarten van Nvidia die samenwerken gebruiken een techniek genaamd SLI. Daarbij is het nodig dat beide videokaarten dezelfde chip hebben.

SLI

Twee (of meer) videokaarten van AMD die samenwerken gebruiken een techniek genaamd Crossfire. Daarbij kunnen de videokaarten ook verschillende chips hebben.
Deze technieken (SLI en Crossfire) kun je niet combineren. Het is mogelijk (en gelukt) om een pc te bouwen met daarin twee Nvidia-kaarten in SLI en daarnaast twee AMD-kaarten in Crossfire, maar ze werken niet tegelijkertijd. Je moet steeds kiezen welke twee kaarten gaan werken.

Crossfire en SLI gebruiken de kracht van beide kaarten om samen hetzelfde werk te doen. Allebei de kaarten laden het volledige beeld in hun geheugen en renderen ieder één frame. Dat betekent in de praktijk dat als je twee videokaarten hebt van 3Gb, je in totaal gebruik maakt van 3Gb. Het werk is alleen vlotter klaar. Het voordeel van twee (of meer) videokaarten is, dat je makkelijker een 4K-resolutie kunt berekenen of met meerdere monitoren aan de slag kunt. Maar je benut dus niet alle potentiële kracht van je investering.

Daarnaast gaat het ook weleens fout. Programmeurs moeten rekening houden met de mogelijkheid dat consumenten meerdere videokaarten gebruiken. Doen ze dat te weinig of helemaal niet, dan kan het zijn dat je een spel helemaal niet kunt spelen. Dat gebeurde onder andere bij Watch_Dogs, Dying Light en Battlefield 3. In de meeste gevallen wordt dit uiteindelijk gepatcht door de ontwikkelaar, maar het is niet fijn om daarop te moeten wachten.

BSoD

DirectX 12 wil de aanstuurprogramma’s voor je hardware (drivers) efficiënter laten samenwerken. Microsoft claimt dat DirectX 12 50 tot 70% efficiënter plaatjes kan weergeven en zuiniger werkt met stroomverbruik. Microsoft wil de hardware zo goed laten samenwerken als de consoles dat kunnen.

Een anonieme bron heeft verklaart dat DirectX 12 nog veel verdergaat. Het laat de computerchip (CPU) veel meer en beter samenwerken met de grafische chip(s) (GPU). Al deze ideeën lijken heel sterk op hetgeen AMD eerder al voor elkaar kreeg met Mantle. Mantle is een verzameling API’s die (de meeste) AMD videokaarten beter laat werken met onder andere een hogere kwaliteit geluid (TrueAudio) en hogere framerates dan voorheen. DirectX neemt veel van deze innovaties over, maar laat het ook werken voor grafische kaarten van Nvidia. Daarnaast kan DirectX alle eisen die er worden gesteld aan de grafische kaarten op een grote hoop gooien en vervolgens verdelen.

AMD Mantle

Dit betekent dat je in theorie een AMD videokaart kan laten samenwerken met een Nvidia videokaart. Dat niet alleen, je kan nu dus het volledige geheugen van iedere kaart benutten. Dus als jij twee videokaarten hebt van ieder 3Gb, dan gebruik je dus in totaal niet meer 3Gb maar 6Gb. De truc die DirectX 12 gebruikt is om iedere videokaart een deel van een frame te laten berekenen. Dat gaat sneller dan het ‘ieder voor zich’-systeem dat nu wordt gebruikt.

Je kan uiteindelijk gebruik maken van de innovaties van beide fabrikanten  met dezelfde pc. Dus je gebruikt Nvidia’s G-Sync én AMD’s TrueAudio zonder problemen. In theorie.

DirectX 12

Zijn nu ook de problemen met SLI en Crossfire opgelost? Dat valt te bezien. Als de programmeurs foutjes maken of de technieken niet goed toepassen, dan crasht de boel alsnog. Maar de toekomst ziet er heel mooi uit, indien deze bron het bij het rechte eind heeft. De smartphone’s van Microsoft draaien ook Windows 10 en dus ook DirectX 12. De verwachting is dat ze daarmee nog zuiniger worden.

Volgende week woensdag geeft Microsoft een presentatie op de Game Developers Conference in San Francisco. Daarna weten we hopelijk meer.