The Ward BRDF model, termed plastic material in Radiance, is probably the standard material in Radiance. It has 5 parameters: R, G, B, specularity, roughness.
void plastic foo 0 0 5 R G B specularity roughness
The name ''plastic'' isn't related to specific physical details of light scattering by plastic materials, rather the model is a catch-all for a
wide variety of reflective materials. It may be used for surfaces made of concrete, wood, white paint, etc, etc.
The difference to metal material is that the non-diffuse part is not coloured by the RGB values.
The functional model behind plastic is a sum of a constant diffuse part and a Gaussian peak around the ideal reflected direction.
This leads to the following categories:
The mathematical model ''plastic'' for fitting the parameters to our measured data uses three parameters:
a1 = R=G=B (grey material), a2 = specularity, a3 = roughness :
void plastic foo 0 0 5 a1 a1 a1 a2 a3
The metal material in Radiance is very similar to plastic, except that the non-diffuse part is multiplied by the RGB values. The direct-hemispherical reflection ρ depends on the RGB value only. Keeping the RGB parameter of metal fixed during fitting thus ensures that ρ is kept fixed. In Radiance, the metal model has 5 parameters: R, G, B, specularity, roughness.
void metal foo 0 0 5 R G B specularity roughness
Our mathematical model ''metal_ps'' for fitting the parameters to our measured data uses three parameters:
a1 = R=G=B (grey material), a2 = specularity, a3 = roughness .
Additionally, our ''metal_ps'' model uses two additional parameters (a4,a5). which allows a ''relaxed'' position of the peak:
Parameter a3 adds an offset in theta_out, a4 adds an offset in phi_out. These two parameters are introduced to allow a more robust fit,
rather then introducing a new BSDF model, since the materials considered here are still very much standard.
Numbering parameters with our fit parameters:
void metal foo 0 0 5 a1 a1 a1 a2 a3
The metal material in Radiance is very similar to plastic, except that the non-diffuse, transmitted part is multiplied by the RGB values. In Radiance, the metal model has 7 parameters:
void metal foo 0 0 7 R G B "reflected-specular-component" roughness transmissivity "transmitted-specular-component"
Our mathematical model ''trans'' for fitting the parameters to measured data uses three parameters:
R=G=B=1, spec=0, a1=roughness, a2=transmissivity, a3=tspec . This cares for the transmission, the reflection off the sample
might be handled in an additional step.
Note that trans has only one roughness for both sides, which is not found frequently with materials. As an example, a glass plate
is normally etched on one side only, the other is left specular.
Numbering parameters with our fit parameters:
void trans foo 0 0 7 1 1 1 0 a1 a2 a3
A "functional model" describes a physical quantity as a mathematical function depending on some quantity x
. Additionally, the model
may have a number parameters, which steer the shape of the mathematical function.
As an example, take a Gaussian function
f(x) = a e -(x-b)2/2c
. The x
is the main input variable
of this function. In our case of BSDF data, x
would be the outgoing direction from a point on a surface towards the viewer. The
parameters a
,b
and c
shape the function and would, in our BSDF case, characterise the material.
Finding the optimal choice of parameters of a given functional model to match measured data is called fitting the model. Rather than manually trying to find a good combination of parameters, it is easier to use algorithms that find an optimal combination. Here, fitting uses the Levenberg-Marquardt method, as explained in the informative Numerical Recipes book. Further reading on the Levenberg-Marquardt_algorithm and on curve fitting in general. Thanks to the respective authors.
Even with an optimal choice of parameters, the functional model does not necessarily represent the measured data 100% exactly.
After all, a functional model is only a model, and nature may behave differently. In many cases the model is given and can not be changed easily.
In the case of Radiance, the standard model is the built-in Ward BRDF model.
Deviation between models and data therefore a vital indicator on the quality of the model and the error that is introduced by using this
model. On the BME web pages, error is presented in four ways for each incident angle. Starting with the simplest:
Visualisation and most data processing is handled with mountain.
Further details on visualisation is found on the technical page. Back to BME start page, back to sample gallery