Tutorials

▷ Wat is rasteren en wat is het verschil met ray tracing

Inhoudsopgave:

Anonim

Na de aanstaande release van de nieuwe Nvidia RTX grafische kaarten. We wilden een artikel schrijven over wat rasteren is en wat het verschil is met Ray Tracing. Klaar om alles te weten over deze technologie? Laten we beginnen!

Wat zijn rastering en verschillen in Ray Tracing

Real-time pc-graphics maken al lang gebruik van een techniek die "rasteren" wordt genoemd om driedimensionale objecten op een tweedimensionaal scherm weer te geven. Het is een snelle techniek en de resultaten zijn de afgelopen jaren erg goed geworden, hoewel het niet zo goed is als ray tracing kan doen.

Met de rastertechniek worden de objecten die u op het scherm ziet, gemaakt van een netwerk van virtuele driehoeken of polygonen, die driedimensionale modellen van objecten creëren. In deze virtuele mesh, de hoeken van elke driehoek, bekend als hoekpunten, snijden de hoekpunten van andere driehoeken van verschillende groottes en vormen. Hierdoor wordt veel informatie geassocieerd met elk hoekpunt, inclusief de positie in de ruimte, evenals informatie over kleur, textuur en het "normale", dat wordt gebruikt om te bepalen hoe het oppervlak van een object is gericht..

Computers zetten vervolgens de driehoeken van de 3D-modellen om in pixels of punten op een 2D-scherm. Aan elke pixel kan een initiële kleurwaarde worden toegewezen uit de gegevens die zijn opgeslagen op de hoekpunten van de driehoek. Extra pixelverwerking of "arcering", waaronder het wijzigen van de pixelkleur op basis van hoe lichten in de scène de pixel raken, en het toepassen van een of meer texturen op de pixel, combineren om de uiteindelijke kleur te genereren die wordt toegepast op één pixel.

We vatten de beste hardwaregidsen samen die u zouden moeten interesseren:

  • Beste processors op de markt Beste moederborden op de markt Beste RAM-geheugen op de markt Beste grafische kaarten op de markt Beste SSD's op de markt

Dit is rekenintensief, omdat er mogelijk miljoenen polygonen worden gebruikt voor alle objectmodellen in een scène en ongeveer 8 miljoen pixels op een 4K-scherm. Aan dit alles moeten we toevoegen dat elke afbeelding die op een scherm wordt weergegeven, gewoonlijk 30 tot 90 keer per seconde wordt bijgewerkt. Geheugenbuffers, de tijdelijke ruimte die is gereserveerd om dingen te versnellen, worden ook gebruikt om frames vooraf te renderen voordat ze op het scherm worden weergegeven.

Een diepte of "z-buffer" wordt ook gebruikt om pixeldiepte-informatie op te slaan om ervoor te zorgen dat voorste objecten op de xy-locatie van het scherm van een pixel worden weergegeven en dat de objecten achter het meest voorste object verborgen blijven. Dit is de reden waarom moderne en grafisch rijke computerspellen vertrouwen op krachtige GPU's, die elke seconde vele miljoenen berekeningen kunnen uitvoeren.

Ray Tracing werkt op een totaal andere manier. In de echte wereld worden de 3D-objecten die we zien verlicht door lichtbronnen, en de fotonen waaruit het licht bestaat, kunnen van het ene object naar het andere stuiteren voordat ze de ogen van de kijker bereiken. Ook kan licht door sommige objecten worden geblokkeerd, waardoor schaduwen ontstaan, of kan licht van het ene naar het andere object worden gereflecteerd, zoals wanneer we de afbeeldingen van het ene object op het oppervlak van een ander weerspiegeld zien. We hebben ook refracties, die een verandering in de snelheid en richting van licht veroorzaken wanneer het door transparante of semi-transparante objecten gaat, zoals glas of water.

Ray Tracing reproduceert deze effecten, het is een techniek die voor het eerst werd beschreven door Arthur Appel van IBM in 1969. Deze techniek volgt het lichtpad dat door elke pixel op een 2D-kijkoppervlak gaat en verandert het in een 3D-model van de scène. De volgende grote doorbraak kwam tien jaar later in een paper uit 1979 getiteld "Een verbeterd verlichtingsmodel voor gearceerde schermen". Turner Whitted, nu lid van Nvidia Research, liet zien hoe reflectie, schaduw en refractie met de Ray Tracing.

Met de Whitted-techniek, wanneer bliksem een ​​object in de scène raakt, dragen kleur- en verlichtingsinformatie op het punt van impact op het oppervlak van het object bij aan de pixelkleur en het verlichtingsniveau. Als de straal stuitert of over de oppervlakken van verschillende objecten beweegt voordat hij de lichtbron bereikt, kunnen de kleur- en verlichtingsinformatie van al die objecten bijdragen aan de uiteindelijke kleur van de pixel.

WIJ RADEN U AAN Hoe Ubuntu Tweak te installeren in Ubuntu 16.04

Een ander paar documenten in de jaren tachtig legde de rest van de intellectuele basis voor de revolutie in computergraphics, die de manier waarop films worden gemaakt op zijn kop zette. In 1984 vertelden Robert Cook, Thomas Porter en Loren Carpenter van Lucasfilm hoe Ray Tracing verschillende veelvoorkomende cinematografische technieken zou kunnen integreren, zoals bewegingsonscherpte, scherptediepte, halflicht, doorschijnendheid en wazige reflecties die tot dan toe alleen ze kunnen worden gemaakt met camera's. Twee jaar later voltooide het werk van CalTech-professor Jim Kajiya, "The Rendering Equation", het werk van het in kaart brengen van de manier waarop computergraphics werden gegenereerd voor de natuurkunde om de manier waarop licht verstrooid werd beter weer te geven. in een scène.

Door al dit onderzoek te combineren met moderne GPU's, zijn de resultaten computer-gegenereerde afbeeldingen die schaduwen, reflecties en refracties vastleggen op manieren die niet te onderscheiden zijn van echte foto's of video's. Dat realisme is de reden waarom Ray Tracing de moderne cinema is gaan veroveren. De volgende afbeelding, gegenereerd door Enrico Cerica met OctaneRender, toont een vervorming van glasslagen in de lamp, diffuse verlichting in het raam en matglas in de lantaarn op de vloer, weerspiegeld in het framebeeld.

Ray Tracing is een extreem veeleisende techniek, daarom vertrouwen filmmakers op een groot aantal servers of boerderijen om hun scènes te creëren in een proces dat dagen, zelfs weken kan duren, om complexe speciale effecten te genereren. Ongetwijfeld dragen veel factoren bij aan de algehele kwaliteit van de grafische prestaties en ray tracing-prestaties. Omdat ray tracing zo computationeel intens is, wordt het vaak gebruikt om die gebieden of objecten in een scène weer te geven die het meest profiteren van de visuele kwaliteit en het realisme van de techniek, terwijl de rest van de scène het wordt verwerkt met behulp van rastering.

Wat vond je van ons artikel over wat rasteren is? Vond je het interessant? We kijken uit naar uw opmerkingen!

Tutorials

Bewerkers keuze

Back to top button