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 digitale situatie met virtuele driedimensionale objecten "gefotografeerd" wordt, met als doel een (tweedimensionale) afbeelding te verkrijgen. Daarbij kunnen aan alle afzonderlijke objecten 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's.

Bij een digitale camera in de echte wereld valt het licht vanuit de lichtbron op de camerasensor en wordt dan geregistreerd. Bij raytracing gebeurt het omgekeerde: de kleur, intensiteit en dergelijken worden voor iedere pixel bepaald door de (licht)straal vanaf het virtuele brandpunt te volgen tot aan de oorspronkelijke lichtbron (dit proces heet tracing). Onderweg kan de straal weerkaatst worden door een of meerdere objecten, met als gevolg de intensiteit en kleur van één pixel. De uiteindelijke afbeelding wordt opgebouwd uit een groot aantal van dit soort 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]