Wat is Path Tracing en Ray Tracing? En waarom verbeteren ze de graphics?

Als je de laatste tijd ook maar de geringste blik hebt geworpen op gaming- en grafisch nieuws, dan heb je het nieuwste en beste modewoord gehoord: ray tracing. Je hebt misschien ook een soortgelijk klinkend woord gehoord dat padtracering wordt genoemd. En het zou je volledig vergeven kunnen worden dat je niet volledig begrijpt wat een van de processen is.

Een eenvoudige verklaring is dat zowel path tracing als ray tracing grafische technieken zijn die resulteren in realistischer ogende beelden ten koste van aanzienlijk meer rekenkracht. Er is een Minecraft -video op YouTube die de specifieke aspecten van ray tracing op een duidelijke manier laat zien, maar ook de stress illustreert die het op een systeem legt.

Als dat de enige uitleg is die je nodig hebt, prima! Maar als je diep wilt graven en wilt weten hoe elke techniek werkt en waarom GPU -hardwarebedrijven een klein fortuin vragen voor kaarten die geschikt zijn voor raytracing, lees dan verder.

Rasteren en computergraphics

Elke afbeelding die u op een computerscherm ziet, begon niet als die afbeelding. Het begint als een raster- of vectorafbeelding. Een rasterafbeelding is samengesteld uit een verzameling gearceerde pixels.

Een vectorafbeelding is gebaseerd op wiskundige formules die betekenen dat de afbeelding bijna onbeperkt kan worden vergroot. Het nadeel van vectorafbeeldingen is dat nauwkeurigere details moeilijk te bereiken zijn. Vectorafbeeldingen(Vector) kunnen het beste worden gebruikt als er maar een paar kleuren nodig zijn.

De belangrijkste kracht van rastering is de snelheid, vooral in vergelijking met technieken zoals ray tracing. Je GPU , of grafische verwerkingseenheid, zal het spel vertellen om een ​​3D-afbeelding te maken van kleine vormen, meestal driehoeken. Deze driehoeken worden omgezet in afzonderlijke pixels en vervolgens door een arcering gehaald om het beeld te creëren dat u op het scherm ziet.

Rasterisatie is lange tijd de beste optie geweest voor grafische afbeeldingen van videogames vanwege de snelheid waarmee het kan worden verwerkt, maar naarmate de huidige technologie tegen zijn limieten begint te botsen, zijn er meer geavanceerde technieken nodig om door te breken naar het volgende niveau. Dat is waar raytracing om de hoek komt kijken.

Raytracing(Ray) ziet er veel realistischer uit dan rasteren, zoals de onderstaande afbeelding illustreert. Kijk naar de reflecties op de theepot en de lepel.

Wat is raytracing?

Op oppervlakteniveau is ray tracing een overkoepelende term die alles betekent, van een enkele kruising van licht en object tot volledig fotorealisme. In de meest gebruikelijke context die tegenwoordig wordt gebruikt, verwijst raytracing echter naar een weergavetechniek die een lichtstraal (in pixels) vanaf een instelpunt volgt en simuleert hoe deze reageert wanneer deze objecten tegenkomt.

Neem even de tijd en kijk naar de muur van de kamer waarin je je bevindt. Is er een lichtbron op de muur, of wordt het licht door een andere bron van de muur gereflecteerd? Ray -trace-afbeeldingen beginnen bij je oog en volgen je gezichtslijn naar de muur, en volgen dan het pad van het licht van de muur terug naar de lichtbron.

Bovenstaand schema laat zien hoe dit werkt. De reden voor de gesimuleerde "ogen" (de camera in dit diagram) is om de GPU te ontlasten .

Waarom? Nou, ray tracing is niet gloednieuw. Het bestaat eigenlijk al een hele tijd. Pixar gebruikt raytracing-technieken om veel van zijn films te maken, maar high-fidelity, frame-by-frame graphics met de resoluties die Pixar bereikt, nemen tijd in beslag.

Veel(A lot) tijd. Sommige frames in Monsters University duurden elk 29 uur. Toy Story 3 duurde gemiddeld 7 uur per frame, waarbij sommige frames 39 uur in beslag namen volgens een verhaal uit 2010 van Wired.

Omdat de film de weerkaatsing van licht van elk oppervlak illustreert om de grafische stijl te creëren die iedereen heeft leren kennen en waarderen, is de werklast bijna onvoorstelbaar. Door raytracing-technieken te beperken tot alleen wat het oog kan zien, kunnen games de techniek gebruiken zonder dat uw grafische processor (letterlijk) instort.

Kijk eens naar de afbeelding hieronder.

Dat is geen foto, hoe echt het er ook uitziet. Het is een ray-traced afbeelding. Probeer je voor te stellen hoeveel kracht er nodig is om een ​​afbeelding te maken die er zo uitziet. Eén straal kan zonder veel moeite worden opgespoord en verwerkt, maar hoe zit het als die straal weerkaatst op een object?

Een enkele straal kan 10 stralen worden, en die 10 kunnen 100 worden, enzovoort. De stijging is exponentieel. Na een punt, stuiteren en reflecties voorbij het tertiaire en quartaire tonen afnemende meeropbrengsten. Met andere woorden, ze hebben veel meer kracht nodig om te berekenen en weer te geven dan ze waard zijn. Om een ​​afbeelding weer te geven, moet ergens een grens worden getrokken.  

Stel je nu voor dat je dat 30 tot 60 keer per seconde doet. Dat is de hoeveelheid stroom die nodig is om raytracing-technieken in games te gebruiken. Het is zeker indrukwekkend, toch?

De haalbaarheid van grafische kaarten die in staat zijn tot ray tracing zal met de tijd toenemen en uiteindelijk zal deze techniek net zo gemakkelijk beschikbaar worden als 3D-graphics. Voorlopig wordt ray tracing echter nog steeds beschouwd als de allernieuwste computergraphics. Dus hoe komt padtracering in het spel?

Wat is padtracering?

Pathtracing(Path) is een vorm van raytracing. Het valt onder die paraplu, maar waar ray tracing oorspronkelijk in 1968 werd getheoretiseerd, kwam path tracing pas in 1986 op het toneel (en de resultaten waren niet zo dramatisch als die nu.)

Herinner je je de eerder genoemde exponentiële toename van stralen? Path tracing biedt daar een oplossing voor. Wanneer padtracering wordt gebruikt voor weergave, produceren de stralen slechts één enkele straal per bounce. De stralen volgen geen vaste lijn per bounce, maar schieten in een willekeurige richting weg.

Het padtraceringsalgoritme neemt vervolgens een willekeurige steekproef van alle stralen om het uiteindelijke beeld te creëren. Dit resulteert in het bemonsteren van een verscheidenheid aan verschillende soorten verlichting, maar vooral globale verlichting.

Een interessant aspect van path tracing is dat het effect kan worden nagebootst door het gebruik van shaders. Onlangs verscheen er een shader-patch voor een Nintendo Switch -emulator waarmee spelers de door het pad getraceerde globale verlichting kunnen emuleren in titels als The Legend of Zelda: Breath of the Wild en Super Mario Odyssey. Hoewel de effecten er mooi uitzien, zijn ze niet zo compleet als echte padtracering.

Path tracing is slechts één vorm van ray tracing. Hoewel het werd geprezen als de beste manier om afbeeldingen weer te geven, heeft padtracering zijn eigen gebreken.

Maar uiteindelijk resulteren zowel path tracing als ray tracing in absoluut prachtige beelden. Nu de hardware in consumentenmachines een punt heeft bereikt waarop raytracing in realtime mogelijk is in videogames, staat de industrie klaar om een ​​doorbraak te maken die bijna net zo indrukwekkend is als de stap van 2D naar 3D-graphics.

Het zal echter nog enige tijd duren - in ieder geval enkele jaren - voordat de benodigde hardware als 'betaalbaar' wordt beschouwd. Vanaf nu kosten zelfs de benodigde grafische kaarten meer dan $ 1.000.



About the author

Ik ben een computerprofessional met meer dan 10 jaar ervaring. In mijn vrije tijd help ik graag aan een bureau en leer ik kinderen internetten. Mijn vaardigheden omvatten veel dingen, maar het belangrijkste is dat ik weet hoe ik mensen kan helpen bij het oplossen van problemen. Als je iemand nodig hebt die je kan helpen met iets dringends of gewoon wat basistips wilt, neem dan contact met me op!



Related posts