Weergegeven resultaten: 1 t/m 1 van 1
  1. #1
    Erelid  
    Geregistreerd
    3 May 2005
    Berichten
    6.700
    Bedankjes
    1.651
    Bedankt
    8.252 keer in 3.245 posts

    Goed Vooruitblik DirectX 11

    Vooruitblik op DirectX 11

    Bijna elk computerspel maakt tegenwoordig gebruik van DirectX om de grafische kaart aan het werk te zetten. De laatste jaren ging de technologie zeer snel vooruit en evolueerde naar versie 10 die geïntroduceerd werd met Windows Vista. Nu staat Microsoft dicht bij de geboorte van Windows 7 die gepaard gaat met de nieuwe versie DirectX 11.

    De versies vóór DirectX 10, waren allemaal achter mekaar aaneengebreid en was een groot kluwen geworden. Daarom werd DirectX 10 vanaf scratch gebouwd. Zo was dit nodig om te kunnen samenwerken met het nieuwste driver-model van Vista. Toch zien we tegenwoordig nog dat spellen minder goed onder Vista presteren dan onder XP (met DirectX 9). Dat komt omdat DirectX niet backwards compatibel is. Je zal dus effectief een spel moeten spelen dat ontworpen is voor DirectX 10 om te kunnen genieten van de voordelen.
    Onder Service Pack 1 van Vista kwam dan redelijk snel een upgrade, DirectX 10.1, die enkele nieuwe mogelijkheden bevatte en optimalisaties. Enkel ATi sprong op de kar en implementeerde DirectX 10.1 op zijn nieuwe reeksen, de HD3000 en HD4000. nVidia daarentegen liet dit voor wat het was. Vandaar misschien dat er ook zo weinig DirectX10.1 spellen voorhanden zijn.

    Wanneer DirectX 11 uitkomt, zal je niet nog eens verplicht zijn om van OS te wisselen. Daar versie 10 volledig nieuw was, wordt dit de basis voor de komende versies. Maw, het zal voor Vistagebruikers komen als een download.
    Ook versie 11 kent een handvol vernieuwingen en verbeteringen. De meesten zijn relatief klein, enkelen springen in het oog. Zo is Tesselation een van deze nieuwe, in het oog springende, vernieuwing. Het zorgt ervoor dat spelontwikkelaars zeer gedetailleerde 3D-omgevingen kunnen maken, waardoor je beeld er beter gaat uitzien en er een lagere belasting van het geheugen is. De allerbelangrijkste vernieuwing zal toch wel zijn dat DirectX 11 volledig multithreaded is.

    Zullen we enkele van deze vernieuwingen dichterbij bekijken.

    1)Tesselation is een technologie waarbij de grafische kaart 'zelf' detail kan toevoegen aan een 3D-object. Een 3D-object bestaat eigenlijk uit allemaal driehoeken die aan mekaar zijn geplakt. Daaruit volgt de redenering dat hoe meer driehoeken er gebruikt worden in een object, hoe meer detail er kan zichtbaar worden gemaakt.

    Door Tesselation kan de GPU zelfstandig iedere driehoek 'eigenhandig' opdelen in meerdere driehoeken. Deze technologie in samenwerking met displacement mapping zorgt uiteindelijk voor uitzonderlijk gedetailleerde weergaves. Displacement mapping zorgt ervoor dat je door middel van een height map (een zwart-wit afbeelding) reliëf kunt aanbrengen in 3D-objecten.

    De reden waarom het opbouwen van extra driehoeken moet gebeuren dmv tessellation en niet vooraf al ingebouwd is, is dat deze door de hele pipeline uit moeten en dat zou een grote belasting betekenen voor de PCI-Express en geheugenbus. Dus dankzij tessellation wordt pas binnen de GPU die extra complexiteit toegevoegd. Nog een stap verder is dat de softwarefabrikanten zelf kunnen bepalen wanneer de technologie gebruikt moet worden. Staat een object ver achteraan in beeld zal de softwarefabrikant op dat object maar beperkt tessellaten of zelfs helemaal niet. En nog een stap verder, en misschien wel een stap te ver, is dat de mate van complexiteit zou kunnen bepaald worden door de gebruikte videokaart. Een dure, snelle kaart zou méér detail kunnen tonen dan een budgetkaart. Zo hebben de laatste generaties ATi kaarten (2000,3000,4000) al reeds tessellator-units aan boord en zou die misschien niet of nauwelijks gebruikt gaan worden.

    2)Dual-cores en quad-cores zijn volledig ingeburgerd en dus kan er met multithreaded software een hoop prestatiewinst geboekt worden. Wanneer software een multithreaded engine hebben, kunnen meerdere cores aangestuurd worden voor verschillende taken uit te voeren, zoals beeld, geluid en AI.
    Fabrikanten ATi en nVidia hebben op hun beurt gezorgd dat de drivers multithreaded geworden zijn, enkel DirectX hinkt nu achterop. Tot en met versie 10 is deze software single-threaded. Daar komt dus verandering in.

    Om dit alles waar te maken moest er aan de pipeline een aantal stappen toegevoegd worden.


    (legende blauw=fixed function, rood=programmeerbaar, groen= nieuw in directx11)

    De eerste nieuwe stap is de Hull Shader. dit is een eenheid die alle data klaar maakt voor het tessellatieproces. Achter de tesselator komt de Domain Shader. Dit is een unit die, hetgeen de tesselator gemaakt heeft, terug vertaalt naar hoekpunten (vertices) en driehoeken, waarmee de rest van de pipeline aan de slag kan. Het laatste nieuwe onderdeel zijn de compute shaders. Hierdoor kunnen rekeneenheden ook ingezet worden om andere taken te verrichten dan 3D beelden. Met deze shaders komt Microsoft op het terrein van de GPGPU (General Purpose GPU) en treedt het in strijd met nVidia's cuda of ATi's Stream SDK. Enigste verschil is dat DirectX op de producten van beide fabrikanten draait. Alleen richt Microsoft zich niet enkel naar de gameswereld (read PhysX berekeningen) maar ook naar video-encoding enz... Met de komst van DirectX11 zou dit alles wel eens in een stroomversnelling kunnen geraken.

    3)Dynamic shader Linkage. Nu is het zo dat telkens er een subroutine nodig is op en plek, er de volledige code moet neergeschreven worden. Vandaar dat shaderprogramma's gigantisch groot zijn en voor de meesten ondoorgrondelijk. Met de komst van Dynamic Shader Linkage wordt de code korter, overzichtelijker en makkelijker programmeerbaar.

    4) Als laatste in de rij komen de nieuwe texturecompressietechnieken. Kort gezegd dienen deze technieken (die BC6 en BC7 heten) om 3D beelden er mooier te laten uitzien zonder dat daarvoor extra bandbreedte voor moet opgeofferd worden.


    Verwacht wordt dat voor de nieuwe DirectX versie ook nieuwe grafische kaarten op de markt zullen verschijnen. En laat dat ook het moment zijn dat de verwachte Larrabee-chip zal moeten geïntroduceerd worden. Laat ons duidelijk zijn, voor de nieuwe features van DirectX 11 zal een nieuwe videokaart een absolute MUST zijn.

  2. De volgende 11 gebruikers bedanken g_man voor deze nuttige post:

    Breskuz (21 April 2009), carl (19 February 2009), gotenks ( 1 April 2009), Obsessed (24 August 2009), patje0016 (26 February 2009), roeba123 ( 2 June 2009), Stuntman Phil (19 March 2009), ultddave (23 February 2009), wolfskin ( 1 September 2009), worf (18 February 2009), Y-Ssin ( 9 May 2009)

Discussie informatie

Users Browsing this Thread

Momenteel bekijken 1 gebruikers deze discussie. (0 leden en 1 gasten)

Favorieten/bladwijzers

Favorieten/bladwijzers

Regels voor berichten

  • Je mag geen nieuwe discussies starten
  • Je mag niet reageren op berichten
  • Je mag geen bijlagen versturen
  • Je mag niet je berichten bewerken
  •