PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Raytracing


Früchtemüsli
2013-09-18, 22:04:42
Hi :)

Ich habe 3 Fragen zum Raytracing. 2 beziehen sich direkt auf http://video.lernfunk.de/watch?seminar=cg10&lecture=cg10_2010_6_28_10_13&scale=60# Kapitel 24 (Effizienzsteigerung). Das Video muss sich aber keiner angucken :)

Der Prof empfiehlt 2 Maßnahmen, damit das Raytracing performanter abläuft. Und dazu die ersten beiden Fragen.

1) Der Prof empfiehlt, dass der Sehstrahl entlang der z-Achse läuft (erwähnt aber nicht, ob in positiver oder negativer z-Richtung).
Das bedeutet ja dann wohl, dass man eine Transformation vom world-space in den view-space vornimmt, richtig?
Inwieweit gibt es hier dann eine Effizienzsteigerung, wenn man das macht?

2) Er empfiehlt auch, dass man Begrenzungsvolumina (Anmerkung: z. B. Boundingspheres) zur Effizienzsteigerung verwenden kann.
Das gilt dann aber nur für den primären Sehstrahl, oder? Also nur für jenen, den die Kamera in die Szene wirft.
Weil die sekundären Sehstrahlen (aufgrund von Spiegelung oder Transparenz) müssen dann grundsätzlich alle Objekte treffen können, oder?

3) Und ist es dann auch richtig, dass ich grundsätzlich kein clipping oder culling machen darf bei Raytracern?

Nighthawk13
2013-09-24, 10:36:33
zu 2.) Nein für alle Rays. Typischerweise nimmt man eine Baumstruktur, BVH(Objektunterteilung) oder kdTrees(Raumunterteilung), mit den Dreiecken in den Blättern. Funkioniert von jedem Punkt aus in jede Richtung.

zu 3.) wenn man nur Primärstrahlen hat(keine Spiegelung/Brechung/Streuung) geht das. Aber dann kann man auch gleich rastern;)