Raymarching
← Raycasting Varianten | ● | Signed Distance Functions →
Raymarching ist eine Spielart des Raycasting:
Beim Raymarching wird der Augstrahl gesampled bzw abgetastet, bis ein Treffer erfolgt.
Dabei wird natürlich versucht eine möglichst hohe Schrittweite zu nutzen. Ist die Abtastrate jedoch zu hoch, kann Geometrie übersehen werden.
Außerdem bekommt man Artefakte, wenn man die Beleuchtungsberechnung zu weit entfernt von dem “echten” Schnittpunkt durchführt.
Eine Möglichkeit, die Abtastung zu beschleunigen bzw. den Treffer mit höherer Genauigkeit zu ermitteln, ist die binäre Suche. Dafür tastet man den Augstrahl mit einem Abstand $a$ ab, sobald man eine Geometrie trifft, geht man einen Schritt zurück und überprüft erneut. Dabei reduziert man die Schrittweite bei jeder Überprüfung auf die Hälfte.
Eine weitere Möglichkeit ist das Raymarching mit SDFs = Signed Distance Functions. Diese geben die Mindest-Entfernung bis zur nächsten Geometrie an. Der nächste Abtastpunkt wird also durch das Minimum aller SDFs aller Geometrien bestimmt.