POV-Ray : Newsgroups : povray.animations : particle_system movie : Re: particle_system movie Server Time
28 Jul 2024 18:21:42 EDT (-0400)
  Re: particle_system movie  
From: Rune
Date: 4 Jul 2000 12:25:08
Message: <39620fe4@news.povray.org>
"Chris Huff" wrote:
> "Rune" wrote:
> > > And the whole system no longer has to be recalculated each
> > > frame, you should be able to use the persistent objects
> > > feature of MegaPOV to calculate only what is necessary.
> >
> > Which will make the particles frame dependent...?
>
> Uhh, yes and no. It depends on how you set it up. If you
> declare it as a persistent object, and only run it a fixed
> amount of time per frame, the progress of the system will be
> dependent on the number of frames.

OK. I guess this method will produce results that are entirely different
depending on the number of frames and so on.

> If you vary the amount of time with the clock_delta, you
> can make it independent of the number of frames.

If I understand this right, I think it can produce very consistent results
independent on the frames, but not *entirely* consistent. If you have a very
long animation with thousands of frames, the result in the end of the
animation may vary a lot dependent of the number of frames, and so on,
because a lot of small calculation differences have "piled up" through the
animation. Am I right?

> If you recalculate the entire system from the start each frame,
> you can make it independent of the number of frames.

This I believe is correct :-)

However, this takes a lot of time in scenes with complex particle systems,
right? Isn't that the reason you made the option of not recalculating each
time?

I have an idea how to get entirely frame independent results without having
to recalculate in every frame. I don't know if it will work, but here goes
anyway:

In the first frame of the animation calculate the entire course of the
particles. Kind of anticipate the entire course of the particles from the
first frame to the last. The number of "steps" in this calculation should
not be based on the number of frames, but on a number specified by the user
inside the scene file. That could for example be 1000 steps. After each
"step" is calculated, save the data to a file. After this calculation, we
have a file that contains the particle data needed for the entire animation.

Now, in the rest of the frames, do not calculate any particle data at all,
but simply get it from the file we saved. The number of steps is most likely
different from the number of frames, so the data should be interpolated.

Using the method described above, the entire course of the particles are
calculated the same way always, independent from the number of frames, and
yet we don't have to recalculate in every frame!

So what do you say? Would this work?

Greetings,

Rune
--
Updated June 12: http://rsj.mobilixnet.dk
3D images, include files, stereograms, tutorials,
The POV Desktop Theme, The POV-Ray Logo Contest,
music, 350+ raytracing jokes, and much more!


Post a reply to this message

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