Hi
All,
Currently I am working on video saving from Java 3D. My Solution is add a
behavior to the view transform group and schedule it to process every 50 ms, for
example. Every time the behavior wakes up, it calls the canvas' off-screen
render method to render the current scene into a image object. Once the save
process ends, I use the sample program in JMF to make all the Jpeg images into a
movie clip.
But my
question is that it can never gain the desired frame rates in the movie. It
usually takes more than 0.2sec to render a single frame off-screen. If I add
more canvas to the scene, the memory becomes a key issue. What is worse, the
Behavior class cannot be scheduled properly. Another interesting thing is that
if I turn off the on-screen renderer while recording, it seems that the
off-screen renderer get the same images, which means the transforms could not be
changed by the interpolators anymore. So is there anybody who has the similar
experience? I will be really appreciated if you can give any
comments.
Could
I get the images directly from the on-screen Canvas3D or should I use a Timer or
Interpolator instead of Behavior?
Thanks
again.
Paul
