Hello Dear Radiance Users,

I have some questions about the utilization of rtrace to determine radiance & irradiance values within a scene. I greatly appreciate your responses and help. To give some context, I'm working on developing a virtual gonio-photometer in Radiance in order to obtain BRDFs of Radiance primitive materials and then export the BRDF data for analysis with other software. To do this I need a clear understanding of how Radiance measures radiance and irradiance with rtrace. First, I will explain my current methodology and please correct me if I'm wrong at any point.

A BRDF is a ratio of the reflected radiance of a material over the incident irradiance on the material surface, and this value is evaluated over four spherical angle ranges that define the orientation of the incident light and the orientation of the reflected light as captured by a radiance meter.

The units of a BRDF value is (1/steradian), since the units of radiance are (W*m^2/sr.) and the units of irradiance are (W*m^2). Also, radiance is independent of measurement distance unlike irradiance. Due to this the BRDF geometry is constrained to a unit meter hemisphere, with the material sample centered at the origin.

To compute the incident irradiance on the material sample I use rtrace with -I argument. I pass the position (0,0,0), the center of the material sample and the direction (x,y,z) that is a unit vector aligned with the optical axis of the light source that points to the center of the light source (ring surface). I'll call this irradiance value L1.

A second way to compute the incident irradiance is to use rtrace with the -i argument and pass position (x,y,z), the position of the light source, and direction (-x,-y,-z) that points toward the origin, which is the center of the sample. I'll call this irradiance value L2.

After looking at the irradiance values it seems like L2 is the Lambert's cosine corrected irradiance, meaning L2 = L1*cos(theta), where theta is the radial incident angle of the light source. Is this true? If not, can someone please explain the difference between these two irradiance measurements?

Also, in the rtrace help page could someone help explain this statement that concerns the -i argument: "This only affects the final result, substituting a Lambertian surface and multiplying the radiance by pi." I understand that a Lambertian surface is one that is purely diffuse and the radiance and luminance is constant in all directions, but I'm unsure of how this applies to irradiance.

Finally, I need to obtain reflected radiance from the material, and I want to make sure that my radiance measurement doesn't take into account the radiance emanating from the light source itself. To do this, given an arbitrary radiance meter positon along the unit hemisphere (x,y,z). I setup rtrace with no input arguments other than position (x,y,z) and direction (-x,-y,-z), a unit vector that points to the center of the material (0,0,0), from the radiance meter position (x,y,z).

My problem arises when I evaluate the BRDF at various locations. I see a radiance value that is about 3x-4x larger than my measured incident irradiance value, at the position of the specular reflection (mirror-like reflection). Of course, I will see the highest reflected radiance at the specular position, however it seems to be unrealistically large, since somehow more energy is reflected than emanating from the single light source itself. Is this type of behavior common for a metal Radiance primitive that follows the Ward BRDF scattering model? With my current observations, the conservation of energy is not maintained. Do I need to correct the radiance value by a steradian value to be able compare the two as apples to apples? Or am I missing something else.

I apologize for the long message, but I wanted to be as clear as possible with my questions. Thank you in advance for your time and help.

Best Regards,

Andrei Kolomenski