 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Almost the very first image I rendered consisted of a simple sphere lit from
three different directions with red, green and blue light sources. When the
sphere is smooth, the different colours of illumination blend together very
smoothly. The trouble is, when I add a bumpy texture with "normal { bumps
0.8 scale 0.2 }" I can see a definite sharp edge to the illumination that
should not be there. What is going on? The sharp edges do not follow the
contours created by the texture - they are just circular lines going around
the sphere.
Thomas
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Thomas White" <her### [at] removebtinternet com> wrote in message
news:39f5fce1@news.povray.org...
> Almost the very first image I rendered consisted of a simple sphere lit from
> three different directions with red, green and blue light sources. When the
> sphere is smooth, the different colours of illumination blend together very
> smoothly. The trouble is, when I add a bumpy texture with "normal { bumps
> 0.8 scale 0.2 }" I can see a definite sharp edge to the illumination that
> should not be there. What is going on? The sharp edges do not follow the
> contours created by the texture - they are just circular lines going around
> the sphere.
Common misconception about what a texture normal is versus a surface
displacement (of which only MegaPOV is currently capable of in any way
whatsoever).
The texture doesn't perturb or affect the physical surface at all, much the
same thing would be seen if you painted a ball in such a way so as to make it
appear to deform from a perfect sphere with shading and the like. Lights shone
upon it would show the same thing as in a POV-Ray render, it's all a trick of
illumination and shading. POV-Ray won't flex the surface to fit a texture,
quite the opposite could be said (not empirically however).
Note to Warp: this doesn't seem to be in your VFAQ. Might make a good
inclusion.
Bob
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Bob H."
<per### [at] aol com?subject=PoV-News:%20&body=Relating%20to%20POV-Ray:>
wrote in message news:39f6060c@news.povray.org...
> "Thomas White" <her### [at] removebtinternet com> wrote in message
> news:39f5fce1@news.povray.org...
> Common misconception about what a texture normal is versus a surface
> displacement (of which only MegaPOV is currently capable of in any way
> whatsoever).
> The texture doesn't perturb or affect the physical surface at all, much
the
> same thing would be seen if you painted a ball in such a way so as to make
it
> appear to deform from a perfect sphere with shading and the like. Lights
shone
> upon it would show the same thing as in a POV-Ray render, it's all a trick
of
> illumination and shading. POV-Ray won't flex the surface to fit a
texture,
> quite the opposite could be said (not empirically however).
I've noticed that bumpiness isn't affecting the overall shape of the sphere,
but I can definately see a sharp edge to the illumination that isn't there
when the bumpiness is commented out. When I reduce to just one light source
it's made even more clear.
Apologies if I'm just digging myself further into a newbie-pit here but I
don't understand where the sharp edge is coming from.
Thomas
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Thomas White" <her### [at] removebtinternet com> wrote in message
news:39f608de@news.povray.org...
>
> I've noticed that bumpiness isn't affecting the overall shape of the sphere,
> but I can definately see a sharp edge to the illumination that isn't there
> when the bumpiness is commented out. When I reduce to just one light source
> it's made even more clear.
>
> Apologies if I'm just digging myself further into a newbie-pit here but I
> don't understand where the sharp edge is coming from.
I see now what you were actually trying to find out about is why a texture
normal causes the sharp shadow/light boundary on a object. That I don't know,
I simply live with the fact. But, I think you are seeing the faked high parts
mostly and perhaps the low parts in the normal aren't as obvious, leaving some
places with a expected terminator (shadow line) and not other parts. The
surfaces finish makes a difference in how it appears as well, so if a highlight
is on there (esp. with second, third lights) it's all the more noticeable... or
unnoticeable. Depends.
Anyway, it comes down to the same general thing I first said. The faked high
spots aren't really higher up than their surroundings and thus only a
undisturbed shadow line shows up.
Once again, MegaPOV can do actual surface perturbations so maybe you'll want to
try it. Check out isosurface and pigment function (pigment pattern equals any
normal pattern of the same type).
Bob
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Thomas White wrote:
>
> The trouble is, when I add a bumpy texture with "normal { bumps
> 0.8 scale 0.2 }" I can see a definite sharp edge to the illumination
> that should not be there. What is going on? The sharp edges do not
> follow the contours created by the texture - they are just circular
> lines going around the sphere.
This is because the texture doesn't create any actual contours. It
merely fiddles with a property of the surface called the normal, in
such a way as to make the surface appear rough. Away from the edge of
the shadow this looks fairly convincing, but at the edges the
appearance gives the method away.
The sharp edge is the terminator between the lit and shadowed sides of
the sphere. It remains circular, instead of becoming jagged, because
the actual shape of the sphere hasn't changed.
Indeed, the texture effect causes spots immediately adjacent to the
terminator to appear brighter than the same place, smoothly textured,
so the sharpness of the terminator becomes pronounced in spots.
Regards,
John
--
ICQ: 46085459
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Actually, it's not as simple as you state.
The normal modifier DOES indeed affect the shadow line of an object (ie.
the line that is between the part of the surface that faces the light source
and the part that faces the opposite direction, ie. the line where the
shadowed part of the object starts).
To see how the normal modifier affects this line, try making your object
shadowless: Voilá!
What happens is that the sphere surface shadows itself. When a point is
in the "dark side" of the sphere but due to normal perturbation the normal
vector of that point faces the light source, there's a surface between that
point and the light source and thus it gets shadowed.
This can be fixed by making the object shadowless, but then you lose all
shadows from that object, which is usually not wanted.
I have suggested some work-arounds for this problem long ago, but no-one
seems interested enough to make any.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I added an extensive description of the problem to the VFAQ.
It can be found at:
http://iki.fi/warp/povVFAQ/TheShadowLineArtifact/
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Warp" <war### [at] tag povray org> wrote in message
news:39f6cac1@news.povray.org...
> I added an extensive description of the problem to the VFAQ.
> It can be found at:
>
> http://iki.fi/warp/povVFAQ/TheShadowLineArtifact/
Thanks. That's just the information I was looking for.
Thomas
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Bob H."
<per### [at] aol com?subject=PoV-News:%20&body=Relating%20to%20POV-Ray:>
wrote in message news:39f613cd$1@news.povray.org...
> "Thomas White" <her### [at] removebtinternet com> wrote in message
> news:39f608de@news.povray.org...
> I see now what you were actually trying to find out about is why a texture
> normal causes the sharp shadow/light boundary on a object. That I don't
know,
> I simply live with the fact. But, I think you are seeing the faked high
parts
> mostly and perhaps the low parts in the normal aren't as obvious, leaving
some
> places with a expected terminator (shadow line) and not other parts. The
> surfaces finish makes a difference in how it appears as well, so if a
highlight
> is on there (esp. with second, third lights) it's all the more
noticeable... or
> unnoticeable. Depends.
> Anyway, it comes down to the same general thing I first said. The faked
high
> spots aren't really higher up than their surroundings and thus only a
> undisturbed shadow line shows up.
> Once again, MegaPOV can do actual surface perturbations so maybe you'll
want to
> try it. Check out isosurface and pigment function (pigment pattern equals
any
> normal pattern of the same type).
Thanks. I've downloaded MegaPov 0.6 and I'm now getting acquainted with it.
Thomas
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
> Actually, it's not as simple as you state.
>
> The normal modifier DOES indeed affect the shadow line of an object (ie.
> the line that is between the part of the surface that faces the light source
> and the part that faces the opposite direction, ie. the line where the
> shadowed part of the object starts).
> To see how the normal modifier affects this line, try making your object
> shadowless: Voilá!
It's nice that it works, unfortunatly the shadows are also important. What I
tried to do was place an identical sphere bounded by the light source to get my
shadow back, and it creates the shadowline artifact again... grrr.
--
Josh English -- Lexiphanic Lethomaniac
eng### [at] spiritone com
The POV-Ray Cyclopedia http://www.spiritone.com/~english/cyclopedia/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
In article <39F86351.C143C1C2@spiritone.com>, Josh English
<eng### [at] spiritone com> wrote:
> It's nice that it works, unfortunatly the shadows are also important.
> What I tried to do was place an identical sphere bounded by the light
> source to get my shadow back, and it creates the shadowline artifact
> again... grrr.
Did you make sure the "shadow sphere" was slightly smaller in radius
than the "real" sphere? If they have the same size and position,
coincident surfaces can cause a problem.
--
Christopher James Huff
Personal: chr### [at] mac com, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tag povray org, http://tag.povray.org/
<><
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
On 25 Oct 2000 04:40:19 -0400, Warp wrote:
> I have suggested some work-arounds for this problem long ago, but no-one
>seems interested enough to make any.
Not true. The best workaround you proposed still had some problems to be
ironed out, and the conversation died before that could happen. I did
like the "no-self-shadow" idea though.
--
Ron Parker http://www2.fwi.com/~parkerr/traces.html
My opinions. Mine. Not anyone else's.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Ron Parker <ron### [at] povray org> wrote:
: Not true. The best workaround you proposed still had some problems to be
: ironed out, and the conversation died before that could happen.
Sorry :)
: I did like the "no-self-shadow" idea though.
Sometimes self-shadowing is essential. This solution works only for
convex objects and for non-convex objects which are positioned so that
they don't cast shadows on themselves.
However, a coffee cup that doesn't cast a shadow on itself looks quite
unnatural.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Yup. The second sphere to make the shadow was smaller, but it still created
the artifact on the main one. I even gave it a bland rgb 0 texture with no
normal or finish... nothing really helped.
Josh
Chris Huff wrote:
> In article <39F86351.C143C1C2@spiritone.com>, Josh English
> <eng### [at] spiritone com> wrote:
>
> > It's nice that it works, unfortunatly the shadows are also important.
> > What I tried to do was place an identical sphere bounded by the light
> > source to get my shadow back, and it creates the shadowline artifact
> > again... grrr.
>
> Did you make sure the "shadow sphere" was slightly smaller in radius
> than the "real" sphere? If they have the same size and position,
> coincident surfaces can cause a problem.
>
> --
> Christopher James Huff
> Personal: chr### [at] mac com, http://homepage.mac.com/chrishuff/
> TAG: chr### [at] tag povray org, http://tag.povray.org/
>
> <><
--
Josh English -- Lexiphanic Lethomaniac
eng### [at] spiritone com
The POV-Ray Cyclopedia http://www.spiritone.com/~english/cyclopedia/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Thomas White" <her### [at] removebtinternet com> wrote in message
news:39f7447c@news.povray.org...
> Thanks. I've downloaded MegaPov 0.6 and I'm now getting acquainted with
it.
Should I be considering MegaPovPlus as well?
Thomas
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
In article <39f9e21b@news.povray.org>, "Thomas White"
<her### [at] removebtinternet com> wrote:
> Should I be considering MegaPovPlus as well?
MegaPOVPlus is based on an older version of MegaPOV and I haven't
updated it yet, so unless you want to use particle systems or some of
the other features, there isn't much reason to get it. MegaPOV is more
"finished".
--
Christopher James Huff
Personal: chr### [at] mac com, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tag povray org, http://tag.povray.org/
<><
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Josh English <eng### [at] spiritone com> wrote:
: Yup. The second sphere to make the shadow was smaller, but it still created
: the artifact on the main one. I even gave it a bland rgb 0 texture with no
: normal or finish... nothing really helped.
There seems to be some misconception here.
If the inner sphere casts a shadow on the floor, it will certainly cast
a shadow on the (back side of the) outer sphere.
Pigments (without filters), normals and finishes do not affect shadow
calculations at all. I don't understand why you think that an rgb 0 texture
without finishes and normals would be of any help here.
--
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Josh English wrote:
>
> Yup. The second sphere to make the shadow was smaller, but it still created
> the artifact on the main one. I even gave it a bland rgb 0 texture with no
> normal or finish... nothing really helped.
>
This method will work in some limited cases, just remember that the greater the
bump size, the smaller this second object must be in relation to the first.
--
Margus Ramst
Personal e-mail: mar### [at] peak edu ee
TAG (Team Assistance Group) e-mail: mar### [at] tag povray org
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |