POV-Ray : Newsgroups : povray.advanced-users : Sharp shadows on meshes : Re: Sharp shadows on meshes Server Time
30 Jul 2024 14:18:30 EDT (-0400)
  Re: Sharp shadows on meshes  
From: Nieminen Mika
Date: 8 Jun 1999 02:34:05
Message: <375cb95d@netplex.aussie.org>
No the problem is not too diverging normal vectors. I think that I got
what's the problem.
  I'll try to "draw" the situation in ascii:

   /    \             Z
 2/      \3           |
  \      /       -X --|-- X
   \a  b/             |
    \  /             -Z
     \/
     1
             * <-light

  We have two faces here, a and b. The normal vector at point 1 is pointing
at the -Z direction and the normal vector at point 2 is pointing at the
-X direction. The normal vector at point 3 is pointing at the X direction.
When rendering face b, the normal vector changes from X to -Z and
everithing is ok (every point is illuminated; the normal vector points
at the light in each point).
  Now, when rendering face a, the point 1 is illuminated (because the
normal vector is pointing at the light) but the point 2 is not (the
normal vector is pointing to the other direction). This would mean that
the line of the shadow is somewhere between point 1 and point 2.
  But there's one problem: The face b is blocking the light. The face b
actually casts a shadow over face a. The result is that face a is completely
shadowed.
  If my theory is correct, applying a "no_shadow" to the object (or more
precisely to face b) will eliminate the problem.

  This problem is sometimes very annoying. It causes sharp shadows in
smooth meshes. The only solution I can think of is making the mesh
shadowless (but then it will not cast shadows to the rest of the scene)...

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):5;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.