Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

Re: animation performance

Hi Doug,

A ScalarMap to Animation definately has better performance,
because it precomputes the scene graph for all time steps
and animates by calls to setChild() in Java3D Switch nodes
in the scene graph. Animation speed should only be limited
by Java3D rendering speed.

By calling setData() on each time step, you are re-transforming
data into a scene graph on each time step. Sometimes you need
this if data are constantly changing, but it is slower. It also
uses less memory because it is not caching scene graphs.

Good luck, Bill
----------------------------------------------------------
Bill Hibbard, SSEC, 1225 W. Dayton St., Madison, WI  53706
hibbard@xxxxxxxxxxxxxxxxx  608-263-4427  fax: 608-263-6738
http://www.ssec.wisc.edu/~billh/vis.html


On Tue, 13 Nov 2001, Doug Lindholm wrote:

> Hi,
> 
> I have several Fields that look like: t -> ((x,y) -> foo).
> Although I could use the AnimationControl of a ScalarMap of "t" to
> Display.Animation, I chose to take more control.
> 
> For each tick of my clock, I resample my Fields getting the appropriate
> FlatField for the desired time sample and call setData on existing
> DataReferences.
> 
> Is there any reasong to expect this to perform better or worse than
> using AnimationControl? Does AnimationControl somehow optimize this
> (e.g. cache something) or does it have more overhead because it has to
> be more generic?
> 
> If no on the optimization, are there any ideas on a caching strategy
> that could optimize animation (e.g. scene graphs)? I don't know much
> about Java3D internals. The best I can come up with is caching images
> but that means a loss of interactivity.
> 
> Any other ideas on animation optimization?
> 
> Thanks,
> Doug
> 
> -- 
> *----------------------------------------------------------------------*
> | Doug Lindholm, Software Engineer          |  E-mail: lind@xxxxxxxx   |
> | Research Applications Program             |   Phone: 303-497-8374    |
> | National Center for Atmospheric Research  |                          |
> | P.O. Box 3000                             |     There's no place     |
> | Boulder, Colorado 80307-3000              |        like $HOME        |
> *----------------------------------------------------------------------*
> 


 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Community Programs   Unidata is a member of the UCAR Community Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690