I don't have an answer as to why this is happening. I would guess that's
the way they implemented it in order to avoid concurency problems (i.e. the
scene changing before the saving of this scene is over). I would guess
that, if that's the case, there isn't much of a work-around, except to slow
down. But here is another method, common in the making of animations
(including more or less tools such as 3d Studio, etc):
I don't know if you would like to go through the trouble to implement
things this way, and there are certainly disadvantages in terms of space
consumption. However, you can save each scene as a datastructure that you
implement. Some of its members could be a linklist, hashtable, or
something equivallent, holding the objects on the screen. And something
similar for the transforms. This datastructure will work as a frame.
Instead of saving your scene as a jpeg, you could save it as an instance of
your frame. At this point you will have a sequence of frames that can
generate your scene. Now you can reproduce your animation by loading up
the parameters from these instances. If you still need the jpegs, all you
have to do it load up a frame, produce a jpeg, wait, then repeat for the
next frame. This would hopefully give you a quick to store each frame and
a safe way to produce the jpegs from each. I actually have an animation
working like that, except my frames are more complicated in that each of
them is a scene on its own and my animation is done natively in java3D.
I hope this helps, though I hope even more that you don't have to come to
this:-).
Paraskevas Orfanides
--- Petros Komodromos <[EMAIL PROTECTED]> wrote:
> At 12:45 AM 4/9/01 , chris thorne wrote:
> >Hi Petros,
> >
> >Just a guess : it looks like you are trying to write to it too quickly -
> before it is finished the last render.
> >If so then you could look at double buffering.
> >However the fact it takes longer to crash if you stop rendering to other
> canvases seems to indicate the
> >problem lies elsewhere.
> >
> >BTW, I'm curious about what you are using to produce the movies - an
> interactive tool or an automated program?
> >
> >cheers,
> >
> >Chris
>
>
> Thanks Chris,
>
> yes the problem is of course when I try to capture too quickly
> the images as it still renders.
>
> But capturing images in frequent intervals is required since I would
> like to capture many snapshots as my simulation software runs in
> order to recreate a smooth movie out of this series of captured images.
>
> Shouldn't this process (the completion of a rendering, even off screen)
> be controlled by the Java 3D scheduler, or whatever is called the
> mechanism that controls the threads, behaviors etc.
>
> I am not using at this point any specific software to put them
> together, since I am still unable to capture images in sufficiently
> frequent intervals since it gives me this error.
>
> Any other idea of how to make it work without getting this error?
>
> Thanks
> Petros
>
>
>
> ===========================================================
> Petros Komodromos Home address:
> Office: 1-245 540 Memorial Drive, Apt#1407
> Tel.: (617) 258-9468 Cambridge, MA 02139
> [EMAIL PROTECTED] Tel.: (617) 577 -9869 / -5830
> http://www.mit.edu/people/petros
> Intelligent Engineering Systems Laboratory (IESL)
> Massachusetts Institute of Technology
> ===========================================================
>
>
===========================================================================
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
> body
> of the message "signoff JAVA3D-INTEREST". For general help, send email
> to
> [EMAIL PROTECTED] and include in the body of the message "help".
__________________________________________________
Do You Yahoo!?
Get email at your own domain with Yahoo! Mail.
http://personal.mail.yahoo.com/
===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST". For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".