POV-Ray : Newsgroups : povray.advanced-users : Animations and memory : Re: Animations and memory Server Time
15 May 2024 04:40:40 EDT (-0400)
  Re: Animations and memory  
From: clipka
Date: 16 Aug 2015 03:40:07
Message: <55d03e57$1@news.povray.org>
Am 15.08.2015 um 20:11 schrieb Mike Horvath:
> If I create an animation where everything remains the same except for
> the camera position, will I have to go through the whole parsing process
> each time, or will the scene stay in memory and therefore be faster?

That depends.

If you use plain vanilla POV-Ray, then IIRC there's some highly 
experimental mechanism originally designed just for this case, parsing a 
scene once with multiple camera statements and then just iterating 
through all the cameras defined, frame by frame, but I must confess I 
have no idea how it works (or whether it even does currently).

If you use UberPOV, there's the "#persistent" statement, which you can 
use instead of "#declare" to define variables that persist between 
frames of an animation (and, in case of POV-Ray for Windows, even 
between totally unrelated renders in the same session, so caveat there) 
as long as you don't explicitly "#undef" them. You can put (almost) 
anything in there - including complex CSG unions - and simply re-use it 
in the next frame instead of parsing it all over again, for example like so:

     my_scene.pov:
     -------------------------
       #if((frame_number = initial_frame) | !defined(MyHugeObject))
       #include "my_huge_object.inc"
       #end

       object { MyHugeObject }

       #if(frame_number = final_frame)
       #undef MyHugeObject
       #end
     -------------------------

     my_huge_object.pov:
     -------------------------
       #persistent MyHugeObject = union {
       ...
       }
     -------------------------


Post a reply to this message

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