[Radiance-general] Specular instead of lambertian for indirect
Greg Ward
gregoryjward at gmail.com
Tue May 27 22:23:10 PDT 2008
Hi Lucio,
> I know that I could run two simulations and then combine the
> results, but it would be much cleaner to be able to use a new kind
> of primitive able to use BRDF for direct light and a specular
> material for indirect light. Is it possible to develop such
> primitive? I'm not very skilled about programming , but I can
> always learn and help in developing such primitive, if you like. I
> guess that such kind of primitives could be handy even for other
> applications. What do you think about it?
Do you want the specular part to be 'pure' -- that is, mirror-like?
If so, this can be achieved easily enough by specifying a mixfunc
with a fixed parameter, e.g.:
void metal specular_bit
0
0
5 0.1 0.1 0.1 1 0
void plasdata brdf_data
{your arguments here}
void mixfunc asphalt
4 specular_bit brdf_data 0.5 .
0
0
Since we are mixing half of each, you need to double each component
(the specular_bit and the brdf_data), but otherwise this should work.
If, on the other hand, you want a specular component with a soft
lobe, it gets a little trickier. Essentially, you want to modify
your BRDF data such that the Gaussian model you are using for the
specular_bit is taken out. The basic principle still applies, however.
I hope this makes sense.
-Greg
More information about the Radiance-general
mailing list