Registered: 528 | Members On: 0 | Guests On: 88 | Today: 1.981 | Month: 57.896 | Total: 3.019.547
eSport-Server
W M D M D F S S
48   1
Geburtstage
Multitalent (34)
49 2 3
Geburtstage
Alien (43)
4 5 6 7 8
Geburtstage
Durban (50)
50 9 10
Geburtstage
Cableguys (46)
11 12
Geburtstage
CopSH (57)
13 14 15
Geburtstage
Lippi (49)
51 16 17 18 19
Geburtstage
YaNa (35)
20
Geburtstage
Rocky (38)
JackWiebers (36)
21
Geburtstage
sasa (42)
22
Geburtstage
M@nu (49)
52 23
Geburtstage
Deafeva (57)
24
Geburtstage
Gesperrter Irrer (39)
[TwD]-Pilgrim- (38)
25
Geburtstage
keule (53)
26
Geburtstage
Kerstin (SEK-elite) (56)
CH_Sniper (38)
27 28 29
Geburtstage
Henker (69)
01 30
Geburtstage
Rot3r_B4Ron (34)
_Stahlhelm_ (30)
31  
Forum - Thema
Neue Themen Aktive Themen Bestenliste Statistik Suche
Forum » 3.0 Allgemeines Forum » Off Topic » Raytracing – die nächste Grafikrevolution?

Antworten: 0
Seite 1
Wolfenstein


Try to beat me




Herkunft: Dübendorf (CH)
Beiträge: 113
# Thema - 18.09.2018 um 17:58 Uhr
Raytracing – die nächste Grafikrevolution?



Nvidia selbst nennt es den grössten Grafiksprung seit Einführung der CUDA-Architektur: Raytracing. Die neue RTX-Grafikkartenserie des Chipherstellers soll erstmals Echtzeit-Raytracing für Otto-Normal-Verbraucher ermöglichen. Was steckt hinter dem schönklingenden Begriff Raytracing und was bedeutet das für dich als Gamer?

Nachdem Nvidia vor kurzem die neue Grafikkarten-Serie für Workstations basierend auf der Turing-Technologie vorgestellt hat, sind nun auch die Consumer-Karten dran. Nvidia verzichtet bei den Modellen 2070 und 2080 auf die Bezeichnung GTX und setzt auf RTX. Mit der Turing-Plattform soll Echtzeit-Raytracing endlich möglich werden, das bisher zu rechenintensiv war. Die neuen RTX-Modelle verbinden Raytracing und Rasterization indem sie CUDA-Cores und neu Raytracing-Cores auf die Karten packen.

Raytracing erzeugt realistische Lichteffekte. Damit sollen Games noch fotorealistischer werden. Microsoft hat eine neue DirectX Raytracing (DXR) API entwickelt und Epic Games wird den Unreal Engine-Entwicklern noch in diesem Jahr Echtzeit Raytracing zur Verfügung stellen. Alles scheint für die neue Grafikrevolution bereit zu sein.

Woher kommt Raytracing?

Raytracing ist alles andere als neu. Der grundlegende Algorithmus wurde bereits 1979 von John Turner Whitted geschrieben. Es dauerte dann einige Zeit, bis du mit Raytracing gerenderte Bilder bestaunen konntest, da es enorm viel Rechenleistung erfordert. Bei einigen Sequenzen von «Shrek» kam die Technik zum Einsatz. Am ehesten aufgefallen dürfte es dir bei «Cars» von 2006 sein. Aber auch hier wurde die Technologie nur sparsam eingesetzt, da das Rendern einzelner Bilder enorm viel Zeit benötigte. Nvidia hat sich 2008 dazu bekannt, an Raytracing fürs Gaming zu arbeiten. Es hat zehn Jahre gedauert, bis die ersten Raytracing fähigen Karten veröffentlicht werden.

Immerhin unterstützen mit «Shadow of the Tomb Raider», «Battlefield V», «We Happy Few», «Hitman 2», «Final Fantasy XV», «PlayerUnknown's Battlegrounds», «Remanant from the Ashes» und «Dauntless» einige vielversprechende Titel Raytracing.

Wodurch unterscheidet sich Raytracing von Rasterization?

Raytracing zeichnet sich durch die realistische Modellierung einer physischen Umgebung, erfordert aber eine hohe Rechenleistung. Die Rasterung hingegen ist schneller und damit lassen sich viele verschiedene Algorithmen kombinieren. Die Ergebnisse sehen aber unter Umständen nicht so realistisch aus wie mit Raytracing.


Rasterization (Rasterung von Polygonen)

Eine 3D-Szene besteht aus mehreren Elementen: 3D-Modelle aus mit Texturen und Farben überzogenen Dreiecken (Polygonen), Licht, das die Objekte beleuchtet und dem Sichtpunkt, von dem aus die Szene betrachtet wird. Im Wesentlichen wird bei der Rastergrafik vom Sichtpunkt aus ein Pixelraster hergestellt. Für jedes Dreieck in der Szene wird bei der Rastergrafik bestimmt, ob das Dreieck ein Pixel überlappt. Ist dies der Fall, wird die Farbe des Dreiecks auf das Pixel angewendet. Die Rasterisierungs-Engine arbeitet dabei von den entferntesten Dreiecken aus und rückt näher an die Kamera heran. Wenn ein Dreieck ein anderes verdeckt, wird das Pixel zuerst durch das hintere Dreieck, dann durch das davor liegende gefärbt.

Weitere Algorithmen wie Shading oder Shadowmapping kommen dazu, um die endgültige Farbe eines Pixels zu erzeugen und dieses realer aussehen zu lassen.

Die Rasterung von Polygonen hat ihre Grenzen. Ein ausserhalb des Sichtfeld befindliches Objekt wird beispielsweise nicht berücksichtigt. Dieses Objekt könnte immer noch einen Schatten innerhalb der Szene werfen oder anders sichtbar sein. Einige dieser Effekte können mit zusätzlichen Algorithmen wie Shadowmapping erzeugt werden. Szenen werden aber nie so wie die Realität aussehen.

Das liegt daran, dass Rasterization nicht so funktioniert, wie wir sehen. Raytracing hingegen guckt bei der Natur ab.

Raytracing

Raytracing funktioniert genau umgekehrt wie wir sehen. Beim Sehen empfangen unsere Augen die Lichtstrahlen von Lichtquellen, die von den verschiedenen Objekten, von denen wir umgeben sind, reflektiert werden.

Beim Raytracing wirft die Rendering-Engine einen Lichtstrahl vom Sichtpunkt auf jedes Pixel. Der Sichtpunkt ist deine Perspektive auf das zweidimensionale Bild. Der Strahl dehnt sich in einer Halbgeraden aus, bis er ein dreidimensionales Element des zu rendernden Bilds schneidet. Dieser Schnittpunkt wird verwendet, um die Farbe des Pixels zu bestimmen.

Genaugenommen handelt es sich beim Raytracing-Rendering also um sogenanntes Backward Raytracing, da die Lichtstrahlen vom Sichtpunkt zu ihrer Quelle zurückverfolgt werden. Der ursprüngliche Algorithmus von Whitted basiert übrigens auf Forward Raytracing. Dieser ist für Renderaufgaben nicht geeignet, da zu viele unnötige Berechnungen durchgeführt würden.

Die Bestimmung der Farbe eines Pixels allein ist aber nicht ausreichend, um ein realistisches Rendering zu erreichen. Dazu muss auch die Beleuchtung des Pixels bestimmt werden. Das geschieht durch Sekundärstrahlen (im Gegensatz zu den Primärstrahlen, die die Sichtbarkeit der verschiedenen Objekte der Szene bestimmen). Um die Lichteffekte einer Szene zu berechnen, werden die Sekundärstrahlen auf die verschiedenen Lichtquellen abgegeben. Werden diese Strahlen durch ein Objekt blockiert, so befindet sich das betreffende Objekt im Schatten, den die betrachtete Lichtquelle wirft. Die Summe aller Sekundärstrahlen, die eine Lichtquelle erreichen, bestimmt die Lichtmenge, die auf ein Szenenelement fällt.

Es geht aber noch weiter. Um eine noch realistischere Darstellung zu erreichen, müssen Reflexion und Brechung berücksichtigt werden. Das heisst; die Menge an Licht, die beim Auftreffen reflektiert wird, und die Menge an Licht, die das Material durchdringt. Auch hier werden Strahlen ausgesendet, um die endgültige Farbe des Pixels zu bestimmen.

Zusammengefasst werden beim Raytracing verschieden Typen von Lichtstrahlen eingesetzt. Die Primärstrahlen bestimmen die Sichtbarkeit. Die Sekundärstrahlen bestehen aus Schatten-, Reflexion- und Refraktionsstrahlen und dienen als Beleuchtungsmodell.


Wie bereits erwähnt, lassen sich auch mit Rastergrafik relativ realistische Lichteffekte erzeugen. Mit Raytracing werden Reflexionen aber perfekt verwaltet, ohne komplizierte zusätzliche Algorithmen. Alles wird direkt vom Rendering-Algorithmus verarbeitet. Dasselbe gilt für Interreflexion, wie z.B. die Reflexion eines Seitenspiegels an der Karosserie eine Autos. Durch Rasterung ist dieser Effekt nur sehr schwer reproduzierbar.

Transparenzeffekte sind ein weiterer Vorteil von Raytracing. Der korrekte Umgang mit Transparenz ist mit Rastern äusserst schwierig, da die Berechnung der Transparenz von der Rendering-Reihenfolge abhängt. Um gute Ergebnisse zu erzielen, müssen transparente Polygone vor der Berechnung des Renderings vom entferntesten von der Kamera zum nahegelegensten sortiert werden.

In der Praxis wäre das aber viel zu rechenintensiv und Transparenzfehler sind immer noch möglich, da die Sortierung nach Polygonen und nicht nach Pixeln erfolgt. Das Raytracing kann Transparenzeffekte elegant verwalten.

Hinzu kommt die Berechnung von Schatten. Beim Rastern wird unter anderem auf Shadowmapping gesetzt. Dieses benötigt aber viel Speicherplatz und Aliasing ist ein Problem. Raytracing löst das ohne zusätzlichen Algorithmus.


------------------
mehr... +-
Inaktiv
Antworten: 0
Seite 1


Sie müssen sich registrieren, um zu antworten.
- 25.05.2015 -
(3)
- 04.05.2015 -
(0)
- 17.02.2015 -
(7)
- 07.02.2015 -
(4)
- 30.08.2011 -
(0)
- 03.04.2011 -
(4)
- 30.03.2011 -
(2)
- 06.01.2011 -
(3)
- 13.03.2011 -
(8)
- 08.03.2011 -
(4)
- 01.03.2011 -
(2)
- 26.02.2011 -
(6)
B!zzy
schicken? Wäre nice!

(12.10.2023 um 21:10 Uhr)
warhead
Grüsse an alle die nach 24 Jahren hier immer noch die HP besuchen

(08.06.2024 um 09:15 Uhr)
Vojnik
Grüße an alle!

(01.09.2024 um 18:53 Uhr)
WildCat
Hällöchen Leutz , hoffe , es ist alles frisch bei euch

(28.09.2024 um 20:09 Uhr)
WildCat
Wir ollen Berlinör leben och noch

(28.09.2024 um 20:10 Uhr)
KHAN
Hallo ihr verrückten Menschen

(25.10.2024 um 21:15 Uhr)
www.GGC-Stream.com
- 18.06.2014 -
- 17.06.2014 -
- 18.04.2014 -
- 01.04.2014 -
- 11.03.2014 -
- 09.01.2014 -
Keine Einträge gefunden.
- 09.07.2011 -
(34)
- 23.07.2011 -
(30)
Keine Umfrage aktiv
Design & Coding - Copyright ©2010, www.Universe-Designs.de
CMS ClanSphere - Copyright ©2003-2010, Scriptinfo
30.12.2024 um 17:25 Uhr nach UTC +1 - Load: 31ms