POV-Ray : Newsgroups : povray.general : PovRay, Lightflow, & the PovTeam : Re: PovRay, Lightflow, & the PovTeam Server Time
9 Aug 2024 19:34:40 EDT (-0400)
  Re: PovRay, Lightflow, & the PovTeam  
From: Warp
Date: 7 Jul 2000 18:51:39
Message: <39665efb@news.povray.org>
Hookflash <hoo### [at] nospamhotmailcom> wrote:
: Again, this was poor wording on my part.  I'm certain you know more
: about radiosity than I do, and I'm not being sarcastic.  However, is the
: PovRay radiosity view-independant?  Is it fast?  And, I personally think
: that tesselation might be the answer (it could at least be an option for
: the user, but I suppose 2 separate radiosity algorithms would be messy).

  Chris answered most of your questions, but here I would like to say more.

  The algorithm called "radiosity" is certainly view-independent, ie. you
can move the camera freely in an animation without having to recalculate
the radiosity data. But that's all. You can't move anything else, you can
only move the camera. If you move anything else (objects, lights...) or
change the property of any surface or light (surface color, light intensity
or color), you have to recalculate the radiosity data. So you get the
advantage only if your scene is completely static.

  There's one advantage of the stochastic method over the radiosity method.
In the radiosity method you have to calculate the brightness of _every_
surface, even if that surface is not seen (for example because there's an
object in front of it). Or if a surface is only partially seen, you still
have to calculate the illumination of the whole surface (unless there's
some clipping algorithm smart enough to clip all the invisible parts out,
which I have never heard of). This is because the illumination is calculated
before rendering, so you can't know which surface is visible and which isn't.
  In the stochastic method, however, the illumination is calculated only
in the surfaces that are seen or contribute to the illumination of visible
surfaces. Moreover, it's calculated only in the visible part of the surface
(so if you have a very big surface but only a bit of its corner is seen,
the illumination is calculated only there). This is because the illumination
is calculated while rendering, so parts of the scene which are invisible and
do not contribute to the illumination are automatically ignored.
  This, however, doesn't make the stochastic method faster, but the reason
is simply because raytracing is slow and we can do little about it. It is,
however, smarter and more efficient because it doesn't calculate needless
data. This helps it being faster than the "dumb" way where the illumination
of every surface is calculated (although you still have to shoot rays, which
is a quite slow process).

-- 
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.