Ok, finally, have some speculars going. For those who know, it's a microfacet
model (DGF) based on the works of Beckmann for the D term, proposed by Cook
and Torrence, and with a slightly improved G term by Torrence to better
counter the D term bringing the engery more down at gazing. The Fresnel term,
F, is my own work, more towards the real thing yet computational much more
demanding, for I want to stay away from deriving the reflection F based on an
derived IOR from reflectivity data at normal incident. For that special
stylized/retroish reflection model I want to build I'm going the other way
around in building IOR data over the spectrum and plug these in the Fresnel
equation. This will give me much more control in building stylized reflection.
Anyhow, there is a lot to do. For, the model needs to be energy preserving,
second, better G and D terms are needed (Sancer, Koestner perhaps), an
wavelength dependency esp. for the Fresnel term would be cool to give proper
colored highlights for metals yet highlights colored like the light source
when being at gazing.
The latter is what I want to try next. But there is a pretty odd thing here.
Realizing the wavelength dependency in RGB space would be much faster, but the
colors won't be that accurate or even wrong at times (the wavelength thing was
already integrated out) nor varied enough (only 3 channels/"wavelengths"), but
I think I will try nevertheless, for it may already look different/cool enough
until, finally, going for a spectral version which will be much more demanding
but comes with a lot of advantages of its own next to colors.
Anyhow, here is the animation, nothing too special but still.
All surfaces have the same roughness. In my implementation I adjust the
roughness in a different way, more meaningful I would say, i.e. the roughness
is the rms slope of the grooves of the surface expressed in degrees from
0 to 90 degrees with 0 being the smooth/ideal surface and anything greater a
more and more rough one. This gives a good mental picture. The roughness
in the animation is set to 4 degrees giving a somewhat smooth surface. No?