POV-Ray : Newsgroups : povray.advanced-users : Incremental Raytracing ??? Server Time
2 Nov 2024 03:14:44 EDT (-0400)
  Incremental Raytracing ??? (Message 1 to 6 of 6)  
From: Jan Walzer
Subject: Incremental Raytracing ???
Date: 10 Oct 2000 08:41:11
Message: <39e30e67$1@news.povray.org>
No ... I don't mean something like the mosaic-preview ...

A friend brought me to the idea of incremental raytracing like he does when
incremental compilings ...

The compiler only compiles the files, that changed since the last run...

What I mean is:
    What would be, if we had an option in POV to create additionally a file
to save some dependencies...
Of course, we need to do this for every Pixel and every Object. We should
save for every Pixel, which object have been passed for this Ray. If only an
object changed, that didn't affect that pixel, we do not need to rerender
it. Maybe it helps for small changes in Meshes...
Of course this Info-File would be gigantic, the more Objects there are in
the scene...

On the other Hand, it is possibly better to do this not Object-dependend but
with the Octrees of our virtual space ...
If we seperate the space with octrees till a given depth (say 4 here) then
we have n (4096) sub-rooms. We can tell for every traced Ray(or Pixel) if in
this room something happend to it.
And we can detect if in a scene something in this room could have changed
and would affect it. If so, we need to render it again, but if not, we can
reuse it.

I don't know how good it can handle Radiosity, because one small bright
object can affect a hole scene, but for some testing in positioning objects
it may me helpful (if my thoughts are right)

Of course... You already have surely thought about this ... (I believe)


--
  ,',    Jan Walzer      \V/  http://wa.lzer.net     ,',
 ',','   student of      >|<  mailto:jan### [at] lzernet ',','
   '   ComputerScience   /A\  +49-177-7403863         '


Post a reply to this message

From: Margus Ramst
Subject: Re: Incremental Raytracing ???
Date: 10 Oct 2000 09:20:05
Message: <39E309FE.31C014C0@peak.edu.ee>
Jan Walzer wrote:
> 
> Of course this Info-File would be gigantic, the more Objects there are in
> the scene...
>

It would be even more gigantic than you think, since AFAICS you would need to
store and check every _intersection_ for changes, not just every pixel.

> If we seperate the space with octrees till a given depth (say 4 here) then
> we have n (4096) sub-rooms. We can tell for every traced Ray(or Pixel) if in
> this room something happend to it.

I'm not sure I get this. How can POV tell if something changed in some
subsection of scene space, without sampling it? (It could be possible, I just
don't know how).

-- 
Margus Ramst

Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg


Post a reply to this message

From: Warp
Subject: Re: Incremental Raytracing ???
Date: 10 Oct 2000 09:22:21
Message: <39e3180d@news.povray.org>
It's not possible to know which pixels have to be recalculated when an
object is changed.
  This is due to shadows, reflections, refractions, photons, radiosity and
so on.

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

From: Jan Walzer
Subject: Re: Incremental Raytracing ???
Date: 10 Oct 2000 10:16:37
Message: <39e324c5@news.povray.org>
I know what you mean ...
But: If I have a ray, I know it's direction and I can follow him and see
which "rooms" in my octree would be hit ...
Lets say for every Pixel I do this to create my New Scene-Description-File:
    First set every Roomin my octree to 0. (If I have depth 4 then there
will be 4096)
    When I trace the Ray:
        I have the starting-point and the End point of ONE traced ray.
        Then I can mark the rooms where they are in and every room between
        them ("between" in the virtual space, not in the tree) with 1.
        At the End-Point, where something happens, maybe multiple new Rays
        are send out, but handled the same way.
        When all the sub-Rays have terminated, and I know the color of my
current Pixel(Ray)
    I look which rooms are marked with 1 and save them.
        For 4096 Subrooms I would need additional 512Byte for every Pixel I
render
    This would make my File at 640x480 150MB (157'286'400Byte) ... hmmm
quite a lot ...

But now on a retrace I can compare my Old-Scenefile and my current
scene-file and look which rooms have changed ...
When tracing the new file then, I just need to look if a ray for the Pixel
is through one of the changed rooms ...

Hmmm ... but it still wouldn't solve radiosity ...

--
  ,',    Jan Walzer      \V/  http://wa.lzer.net     ,',
 ',','   student of      >|<  mailto:jan### [at] lzernet ',','
   '   ComputerScience   /A\  +49-177-7403863         '


Post a reply to this message

From: Mark Wagner
Subject: Re: Incremental Raytracing ???
Date: 11 Oct 2000 00:14:50
Message: <39e3e93a@news.povray.org>
Jan Walzer wrote in message <39e30e67$1@news.povray.org>...
>What I mean is:
>    What would be, if we had an option in POV to create additionally a file
>to save some dependencies...


This was discussed a few days ago in pov.unofficial.patches (I think).

Mark


Post a reply to this message

From: Alan Kong
Subject: Re: Incremental Raytracing ???
Date: 11 Oct 2000 03:24:23
Message: <v958usspigltj9ncau3s5p71mksq97u32q@4ax.com>
On Tue, 10 Oct 2000 14:41:13 +0200 Jan Walzer wrote:

>A friend brought me to the idea of incremental raytracing like he does when
>incremental compilings ...

  Thorsten found this recently:

"Parallel Incremental Raytracing of Animations on a Network of
Workstations"

<http://citeseer.nj.nec.com/101600.html>

-- 
Alan - ako### [at] povrayorg - a k o n g <at> p o v r a y <dot> o r g
http://www.povray.org - Home of the Persistence of Vision Ray Tracer


Post a reply to this message

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