|
![](/i/fill.gif) |
"Fabien Mosen" wrote:
> Rune wrote:
>
> > Pigment doesn't require a pattern and a map. In fact it's
> > very common to specify just a plain colour.
>
> The plain color case is an exception in the syntax.
> It's not very annoying, but there might be a better way to do it.
So you're saying, "a difference between pigment and finish is that pigment
requires a pattern, except when it doesn't".
> > Normal doesn't require a pattern and a map either. The default
> > is a plain normal (which is usually achieved by simply not
> > specifying the normal).
>
> No. A "plain normal" can't exist, as a normal is a variation !
Wrong. The normal is a vector which points away from the surface and is
perpendicular to it. When you specify a normal with a pattern, POV-Ray
artificially modifies this normal vector. But it's there no matter if you
modifies it or not!
> > Pigment and normal doesn't require a pattern - on the other
> > hand, if finish_map was implemented, pigment, normal, and finish
> > would indeed be very coherent.
>
> No. Pigment and normal values rely on the position of the texture's
> point in space, while finish rely on the normal value, light positions
> and other objects positions.
There is no such thing as a pigment value. There are colour vectors that are
controlled by the pigment statement.
There is no such thing as a normal value. There are normal vectors that are
controlled by the normal statement.
There is no such thing as a finish value. There's the ambient value, the
diffuse value, the phong, reflection, brilliance, and metallic values, and a
whole lot of other values. None of those values are dependent on light
positions or other objects' positions or anything. (If I specify reflection
to be 0.6, then it is 0.6 independent on other objects.)
> Put otherwise, pigment and normal are "global" properties
> (doesn't change with the point of view), while finish
> is a "local" (change with the point of view) property.
> They do not belong to the same hierarchy level.
I think what you mean is that the *appearance* of the finish is dependant on
lights, objects, etc.
But the appearances of the pigment and normal are also dependent on those
things. If I make a pigment with a white colour it will look red if I have a
red light_source only. If I make a bumpy normal I can't see the bumps if the
object is in shadow.
So you see, everything is dependent on each other, not just the finish.
> A proof of that ? With MegaPOV, you can obtain the value of a pigment
> at some point with "eval_pigment", but there's absolutely no way to
> get the finish value of a point in space.
As I said, there is no such thing as a finish value.
Besides, you can't obtain the normal vector at some point either, so you
have no "proof".
Rune
--
\ Include files, tutorials, 3D images, raytracing jokes,
/ The POV Desktop Theme, and The POV-Ray Logo Contest can
\ all be found at http://rsj.mobilixnet.dk (updated October 1)
/ Also visit http://www.povrayusers.org
Post a reply to this message
|
![](/i/fill.gif) |