Weighting Paths in Light Tracing back

Board: Home Board index Raytracing General Development

(L) [2014/07/09] [tby Geometrian] [Weighting Paths in Light Tracing] Wayback!

Hi,
I have implemented a light tracer: random light paths are generated, and bounce around until they hit the camera lens, at which point they refract deterministically onto the image plane.
I do not know how to weight these paths properly. I understand that one should divide by the number of light paths traced, but what about the effect of image resolution? Anything else?
I found [LINK http://ompf2.com/viewtopic.php?f=3&t=1953 this recent thread], but there wasn't a complete answer. It looks like SmallVCM implements light tracing, and their light path weighting is done in vertexcm.hxx in the ConnectToCamera method (~line 863). What are they doing here?
-G
(L) [2014/07/11] [tby tarlack] [Weighting Paths in Light Tracing] Wayback!

I'm not really sure about that one, but I'll take it intuitively : consider a sensor, whose total area does not change: if less pixels are present, then each pixel receives more energy. This is what happens naturally with light tracing when you simply divide by the number of samples, so you don't have to take the resolution into account. Only the sensor area should appear to maintain the coherency with the image obtained from the paths that leave from the eye: for each such path, its irradiance should be weighted by the pixel area to obtain energy. This is what is done implicitely when considering that the sensor is a grid located at a distance from the camera's aperture such that its area is 1m^2 large to capture the light field coming from the lens, and thus each pixel as an area = 1/nbpixels m^2.

back