Hoe werkt een 3D grafische kaart? - Deel 1

0 reacties
Inhoudsopgave
  1. 1. Alle termen uitgelegd
  2. 2. De zes stappen van het 3D rendering proces
  3. 3. De zes stappen van het 3D rendering proces (vervolg)
  4. 4. Wie doet wat?
  5. 5. Dieper de 3D chip in
  6. 0 reacties

Alle termen uitgelegd

Hoe werkt een 3D grafische kaart: Alle termen uitgelegd!

De grafische kaarten hype is nog nooit zo groot geweest als nu: nieuwe kaarten worden steeds sneller en productcycli worden steeds korter. Ieder half jaar verzinnen de verschillende fabrikanten weer nieuwe zaken die de 3D belevenis nog mooier en realistischer maken. Bij de huidige 3D spellen is het dan ook voornamelijk de grafische kaart die er voor zorgt dat een spel al dan niet vloeiend loopt, de kracht van de CPU wordt steeds minder belangrijk. Als consument wordt u dood gegooid met termen als Bump Mapping, Hardware Transformation & Lightning, Anti-Aliasing, etc. Voor allen die in 3D land door de bomen het bos niet meer zien, zullen we in twee artikelen uitleggen hoe een 3D grafische kaart precies werkt. In dit eerste artikel zullen we voornamelijk naar de basis kijken: we zullen precies analyseren wat er allemaal bij komt kijken om een 3D afbeelding op het scherm te toveren. In het tweede artikel zullen we nader in de chip duiken en meer informatie geven over verschillende 3D technieken en effecten.

Driehoeken, driehoeken en nog eens driehoeken

Hoewel het soms moeilijk is voor te stellen, bestaat een gehele 3D scène uit niets anders dan driehoeken (triangles in het Engels). Deze driehoeken worden zo aan elkaar gelegd dat uiteindelijk het bouwsel van driehoeken zo goed mogelijk lijkt op het gewenste object. De keuze voor driehoeken is erg makkelijk te verklaren: een driehoek is de meest simpele 2D figuur die er bestaat en vrijwel alle andere figuren zijn probleemloos op te bouwen uit driehoeken. Ook het beschrijven van een driehoek is zeer makkelijk: het opgeven van de posities van de drie hoekpunten is genoeg om precies te weten waar een driehoek zich bevindt in een 3D omgeving. Hoewel de meeste 3D objecten perfect uit driehoeken op te bouwen zijn (bij een kubus ben je met 12 driehoeken klaar), zijn andere objecten een stuk moeilijker met driehoeken te modelleren. Een bol zal bijvoorbeeld nooit een echte bol kunnen worden. Hoe meer driehoeken je echter gebruikt, hoe mooier het resultaat. Als voorbeeld zie je in de twee afbeeldingen hieronder twee 3D modellen van een theepot. De eerste afbeelding bestaat al uit enkele honderden driehoeken, maar je ziet nog steeds duidelijk dat de theepot uit standaard vlakken is opgebouwd. De tweede theepot is gemodelleerd met vijf maal zoveel driehoeken. 

Het is wel duidelijk dat deze theepot er al stukken beter uitziet. Vijf maal zoveel driehoeken vraagt echter natuurlijk minimaal vijf maal zoveel rekenkracht.

Zodra ons object uit driehoeken is opgebouwd moet het nog op de een of andere manier worden ingekleurd. De makkelijkste manier van inkleuren is de hele driehoek dezelfde kleur geven. In vaktermen heet dit "flat shading". Een andere mogelijkheid is een kleurverloopje vanuit de drie hoekpunten. Ieder hoekpunt (vertex in het Engels) krijgt dan een bepaalde kleur toegewezen en de kleur van ieder punt binnen de driehoek wordt berekend d.m.v. een kleurverloop. Dit systeem heet "Gouraud shading" of "smooth shading". Het meest gebruikt in 3D games is echter het "texturing" systeem. Bij dit systeem wordt een afbeelding (een bitmap) op een driehoek geplaatst. In spellen als Quake wordt op de muren een texture (een afbeelding dus) van een muur geplaatst, op de vloeren een texture van een vloer, en zo verder.

Na het inkleuren van de 3D objecten kunnen er nog verschillende effecten worden toegevoegd. Zo bieden vrijwel alle videokaarten mogelijkheden tot licht-, mist-, reliëf- en andere effecten.

In een notendop is dat de gehele gedachte achter 3D afbeeldingen. Met deze zeer geringe voorkennis is het mogelijk het gehele proces van 3D rendering nader te analyseren.

0
*