Ist der Schattenstrahl in einem Whitted Ray Tracer von transparenten Objekten verdeckt?

10

In einem Whitted Ray Tracer erzeugt jeder Strahl-Objekt-Schnittpunkt einen durchgelassenen Strahl (wenn das Objekt durchscheinend war), einen reflektierten Strahl und einen Schattenstrahl. Der Schattenstrahl trägt zur direkten Beleuchtungskomponente bei.

Aber was passiert, wenn der Schattenstrahl ein transparentes Objekt schneidet? Wird die direkte Beleuchtungskomponente ignoriert? Wie werden diffuse Objekte, die in Wasser getaucht sind, beleuchtet, wenn sie keine direkten Lichtbeiträge vom Schattenstrahl erhalten?

user11171
quelle

Antworten:

2

Sie sollten sich zuerst auf die Rendering-Gleichung beziehen . Es ist die allgemeine Gleichung, die physikalische Übertragung von Licht aus Sicht der Informatik zu beschreiben.

Das Whitted-Modell ist nur eine Annäherung an die Oberflächenintegration der Rendering-Gleichung. Es werden nur drei Lichtstrahlen berechnet (Schattenstrahl, reflektierter Strahl und gebrochener Strahl). In einem anspruchsvolleren Raytracer sollten Sie Monte-Carlo-Raytracing verwenden, bei dem Sie an jedem Schnittpunkt des Objekts Tausende von Strahlen abtasten, die gemäß BRDF abgetastet wurden. Solche Rückwärtsalgorithmen funktionieren in der ätzenden Szene, die Sie sagen, eigentlich nicht gut. Sie können Photon Mapping plus Monte-Carlo Ray Tracing verwenden, um eine bessere Visualisierung zu erhalten.

Wenn Sie nur das Whitted-Modell verwenden möchten, können Sie die Beleuchtung des Schattenstrahls mit einem Faktor multiplizieren, der durch das verdeckte transparente Objekt definiert wird.

cc
quelle