Raytracing

Uit Wikipedia, de vrije encyclopedie
Ga naar: navigatie, zoeken
De opmaak van dit artikel is nog niet in overeenstemming met de conventies van Wikipedia. Mogelijk is ook de spelling of het taalgebruik niet in orde. Men wordt uitgenodigd deze pagina aan te passen.

Principe van raytracing.

Ray tracing of raytracing is een methode waarmee een met computerprogramma opgebouwde situatie met virtuele driedimensionale objecten "gefotografeerd" wordt, met als doel een (tweedimensionale) afbeelding te verkrijgen. Daarbij kunnen aan de objecten afzonderlijk specifieke eigenschappen toegekend worden, zoals kleur, textuur, mate van spiegeling (van mat tot glanzend) en doorschijnendheid (transparantie). Afhankelijk van het gebruikte programma kan zonlicht en/of kunstlicht gesimuleerd worden bij het genereren van de gewenste afbeelding, al dan niet in combinatie met weersomstandigheden zoals mist. Daarnaast kan de virtuele camera ingesteld worden, bij een aantal programma´s lijken deze instellingen veel op die van digitale camera.

Bij een digitale camera in het echte wereld wordt het licht wat op de camerasensor valt geregistreerd, bij raytracing gebeurt het omgekeerde: de kleur, intensiteit en dergelijke van iedere pixel als gevolg van de lichtstraal (ray) wordt bepaald door de straal vanaf de virtuele brandpunt te laten lopen (tracing) tot aan de lichtbron. Onderweg kan de straal weerkaatst worden door een of meerdere objecten, wat van invloed is op de intensiteit en kleur van de uiteindelijke pixel. De afbeelding wordt opgebouwd uit een aantal pixels.

Reflectie, refractie en schaduw[bewerken]

Zonder schaduw, refractie of reflectie

Het resultaat benadert de werkelijkheid minder goed indien de mogelijkheid om reflectie, refractie en schaduwen te genereren uitgeschakeld wordt of niet aanwezig is.

Schaduw[bewerken]

Met schaduw

Als bij shading enkel de locatie van het licht en het voorwerp in rekening wordt gebracht zal er geen schaduw optreden. Het is mogelijk dat er een voorwerp tussen het licht en de botsing staat. Hierdoor zal de botsing niet verlicht worden. Door een straal van de lichtbron te starten in de richting van de botsing, kan dit gecontroleerd worden. Die straal moet in hetzelfde punt botsen als de oorspronkelijke straal. Als dat niet het geval is, staat er een voorwerp tussen, dus zal er schaduw optreden. Het is ook mogelijk gebruik te maken van shadowmaps.

Reflectie[bewerken]

Met reflectie

Reflectie is het weerkaatsen van een straal. Dit kan gedaan worden door een nieuwe straal te creëren in de botsing van de eerste straal. Het resultaat van deze straal zal dan opgeteld worden bij de eerste oorspronkelijk straal. Op deze manier kan een raytracer spiegeling of spiegels tekenen.

Refractie[bewerken]

Met refractie

Refractie is het breken van licht aan een grensvlak. Bij transparante materialen, zoals glas en water, is dit nodig. De refractie van een straal kan berekend worden door een nieuwe straal te creëren op de plaats van de botsing met de richting van de gebroken straal. In het voorbeeld is refractie weergegeven met behulp van twee lenzen.

Zachte schaduw[bewerken]

Met zachte schaduw

Normaal gesproken levert raytracing schaduwen met een scherpe rand op, ook wel harde schaduwen genoemd. Dit komt doordat licht uit punten afkomstig is in plaats van oppervlakten. Zachte schaduwen worden gevormd door niet een punt als lichtbron te nemen maar een oppervlakte.

Omgevingslicht[bewerken]

Radiosity[bewerken]

1rightarrow blue.svg Zie Radiosity voor het hoofdartikel over dit onderwerp.

Ambient Occlusion[bewerken]

3D animatie van ambient occlusion, links zonder en rechts met

De term uit het Engels "ambient occlusion" houdt in: de mate van verlichting (of verduistering) door het verstrooide licht in de omgeving. Denk aan het verloop van lichtafname in een buis naarmate je er dieper in komt. Of de bovenhoek van een doorsnee kamer waar twee wanden en het plafond samenkomen. Met een aantal van beschikbare programma's is dit type lichtverstrooiing te berekenen.

Globale verlichting[bewerken]

Globale verlichting

In het Engels Global Illumination. Met deze methode zal elk punt belicht worden door alles in de omgeving. Als er bijvoorbeeld een groot rood oppervlak is, zal dit invloed uitoefenen op ander objecten. Deze zullen dan lichtrood gekleurd worden. Er zijn verschillende methoden om dit te effect te bereiken.

Raytracers[bewerken]

Zie ook[bewerken]

Bronnen[bewerken]