[Bf-committers] BRDF conversion - Was Farsthary anouncement
Yves Poissant
ypoissant2 at videotron.ca
Tue Feb 10 02:26:50 CET 2009
> As for kr, the perfectly smooth reflection from a surface that also have
> partially smooth properties and perfectly diffuse properties seems like an
> aberration. But it is not so. In fact, there are materials that act
> exactly
> like that. Those materials can be modeled with double layer of BSDF. And
> in
> fact, double layer materials can much better mimick other seemingly
> incongruities or contradictions of legacy materials. But that is another
> story.
As I noted in a previous post, kd, ks, es and dr could be controled by one
single parameter: "roughness". Indeed, a single layer BRDF tightly controls
those 4 properties. But in legacy CG, those 4 properties are individually
controlable by the end user and usually end up being set in some
inconsistent manner. Inconsistent manner for a single layer material such as
stone, marble, concrete, metals, wood, etc, that is.
But it is not entirely inconsistent if we accept that the material is made
out of multiple layers such as varnished wood, glazed ceramics, vinyl,
plastic, etc. And that is exactly why it is difficult to design material
that does not look like plastic with legacy material specifications. By
setting up inconsistent values on the different materials parameters, the
end user is actually setting up a multiple layer material without knowing
it.
It takes a lot of knowledge (or a lot of tweaking time, experience and a
keen sense of observation) to succesfully setup a consistent set of legacy
material parameters for a single layer material look. The nice thing about
BRDF is that this is all done automatically for the end-user.
Legacy CG material specification does, more often than not, look like
plastic because the underlying assumptions implemented in the basic shaders
almost perfectly match plastic material compositon. A plastic is composed of
a smooth transparent polymer substrate into which are suspended pigments or
colored particles. The smooth transparent polymer substrate gives this nice
smooth reflection with the characteristics highlights while the suspended
pigments or particles provide the nice diffuse reflection. Since there is
little control on the diffuse component of the shaders, and the highlight
characteristic of every specular shader looks more or less the same, we have
a nice easy recipe for plastic material but a hard time doing anything else
(BTW, our best bet, for better control of our legacy multiple layer material
look is to use Oren-Nayar diffuse shader instead of any of the others and
play with its roughness parameter).
Because of inconsistent (physically speaking) set of legacy material
parameters, shaders to BRDF conversions will usually end up as being
represented by a double layer material with the bottom layer 100% rough and
the top layer's roughness corresponding more or less to the es parameter and
the top layer transparency matching the kd to ks proportions. Mix in a
proper dose of Fresnel reflection and there goes the conversion and
obviously, those materials will all look more or less like plastic.
Yves
More information about the Bf-committers
mailing list