POV-Ray : Newsgroups : povray.beta-test : area_illuminate bug : Re: area_illuminate bug Server Time
28 Jul 2024 18:20:38 EDT (-0400)
  Re: area_illuminate bug  
From: Warp
Date: 16 Jan 2008 03:27:18
Message: <478dbfe5@news.povray.org>
stbenge <stb### [at] hotmailcom> wrote:
> While building a mesh macro earlier, I noticed a bug when using the 
> area_illuminate keyword with an open object. The new keyword treats all 
> open objects as if they have double_illuminate enabled in their object 
> definitions. This probably explains my confusion during earlier attempts 
> to use area_illuminate with shadowless light sources.

  It's not a bug, it's intentional. I forgot to mention this in the release
notes.

  Area lights with area_illumination treat all objects as if they were
double-illuminated. The reason for this is that without this objects would
have ugly sharp shadow lines (much sharper than with a point light!).

  The problem happens when povray has to decide whether a normal vector
is pointing towards a light source (in which case illumination is calculated)
or away from it (in which case illumination from that light source is
completely skipped). There are three possible solutions for this:

1) Treat all objects as double-illuminated. The advantage of this is that
   the decision is very fast to make, and closed surfaces will self-shadow
   and present no problems. Only open surfaces present problems.

2) Calculate whether any part of the area light is visible from the current
   point by a more complicated algorithm. (Maybe testing against each corner
   of the area light could be enough, except in the case of the circular
   area light.) This will make the whole rendering slower because the
   algorithm would be spawned for each intersection point between a ray
   and a surface. It also may cause artifacts on the "dark side" of open
   surfaces, in which case it's not really a solution at all.

3) Just treat the area light as if it was a basic grid of point lights
   which results in perfect lighting (at least if the grid is dense enough),
   but there would be absolutely no speed benefit in having a specialized
   area_illumination feature as the exact same effect (including speedwise)
   could be accomplished by simply creating a grid of point lights.

  Which one do you prefer?

-- 
                                                          - Warp


Post a reply to this message

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