[Bf-committers] Realistic materials question (Farsthary)
Brecht Van Lommel
brecht at blender.org
Wed Feb 25 14:53:26 CET 2009
Hi,
>> For example:
>>
>> Blinn-Phong model------------> kd + ks*(H.nor)^n have 3 parameters kd,ks,n
>> Modified Blinn-Phong model---> kd/PI + ks*(n+2)*(nor,H)^n/(2*PI) also
>> have 3 parameters
>>
>> what I mean is what are the ever needed material properties for a BxDF
>> model? here I'm very open to ideas, suggestions,papers,links and so :)
There are two points of view for this. What you expose to the path
tracing algorithm, and which parameters the BxDF uses internally. Look
at existing code like PBRT for example to see what can work as a BxDF
interface. Multiple layers, tabulated BxDF's, etc, you can hide behind
such an interface.
I think the parameters here are not the ones you need to focus on. The
parameters in such a formula should be internal to the BxDF, and path
tracing shouldn't have to know about them specifically. They may
happen to correspond exactly to some parameter that is exposed through
the interface, but it's important to separate those things.
Looking at PBRT you have functions like:
* f: compute BRDF given in/out vector
* sample_f: (importance) sample direction for BRDF given one vector
I don't know if they have a function to get the probability that you
can use for path tracing termination, they seem to use a different
method. But if you would need that it can also be a function in the
BxDF. There probably has to be a distinction between diffuse,
specular, .. in the interface, and in that case you may end up simply
returning kd, ks and similar for these BxDF types. But it's best to
think of them as different things in my opinion.
Brecht.
More information about the Bf-committers
mailing list