Tarlton Mark-CMT041 wrote:
Without the call to "updateData" the app runs smoothly. I've only seen the
problem appear with _Indexed_ geometry.
I took a look through the bug data base and didn't see anything that looked
relevant.
We noticed the same thing in Xj3D. I spent quite a bit of time
decompiling code and sorting out what was going on. Basically, despite
the BY_REFERENCE attribute, Java3D unindexes all your geometry and turns
it into it's own internal, non-indexed versions. Those are then passed
to the graphics card. This rather brain-dead approach is what is causing
your GC problems - every time you change the geometry it throws out all
the previously existing structures and generates a collection of new
instances. Believe it or not, but it does this even if you only change
something inconsequential like normals or texCoords and leave the
indexes alone.
The only way to avoid the issue is to unindex the geometry yourself and
work with raw triangles or strips. Seems silly that J3D won't use the
optimised forms, but that's what the code is showing and our development
experience is point out.
--
Justin Couch http://www.vlc.com.au/~justin/
Java Architect & Bit Twiddler http://www.yumetech.com/
Author, Java 3D FAQ Maintainer http://www.j3d.org/
-------------------------------------------------------------------
"Humanism is dead. Animals think, feel; so do machines now.
Neither man nor woman is the measure of all things. Every organism
processes data according to its domain, its environment; you, with
all your brains, would be useless in a mouse's universe..."
- Greg Bear, Slant
-------------------------------------------------------------------
===========================================================================
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".