Michael, Have you tried using the new isFrequent bits, mentioned in the perf_guide.txt ?
- isFrequent bits Setting the isFrequent bit indicates that the application may frequently access or modify those attributes permitted by the associated capability bit. This can be used by Java 3D as a hint to avoid certain optimizations that could cause those accesses or modifications to be expensive. By default the isFrequent bit associated with each capability bit is set. - Chien Yang Java 3D Team. > Delivered-To: [EMAIL PROTECTED] > User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:0.9.4) Gecko/20010913 > X-Accept-Language: en-us > MIME-Version: 1.0 > Content-Transfer-Encoding: 7bit > Date: Wed, 5 Dec 2001 06:50:04 -0800 > From: "Michael P. McCutcheon" <[EMAIL PROTECTED]> > Subject: [JAVA3D] Java3D 1.3 b1 - Excessive object allocation during updating of appearance properties > To: [EMAIL PROTECTED] > > Hello Friends, > > Here is my configuration: > > P3 600 Mhz > 512 MB RAM > 32MB NVidia Geforce2 MX (21.83 Drivers) > Windows 2000 SP2 > JDK 1.4 b3 > Java3D 1.3 b1 (OpenGL) > > I'm writing a program that is an attempt at creating a 'flame' that will > thrust out of the back of a spaceship. At achieve this, I'm cycling > through objects in the back of the ship. For each frame, I'm going > through 100 or so objects and updating the both the transparency and the > emissive color levels of each. > > This works OK, however, the calls to update these properties are > creating objects within the Java3D implementation...and this is causing > significant, frequent garbage collection. I believe this is true > because whenever I comment out only the lines that do the updating, the > garbage collecting stops, almost completely. > > The problem calls seem to be: > > javax.media.j3d.TransparencyAttributes.setTransparency(float transp) > > and > > javax.media.j3d.Material.setEmissiveColor(float r, float g, float b) > > It should be noted that these objects are already associated with an > Appearance object, which is already set on a Shape3D. The only thing > I'm doing is updating them...not creating new ones. > > I was told this was going to be fixed in Java3D 1.3, but it appears that > the problem remains, as before. > > I would bet that if these routines were optmized a bit these object > allocations within Java3D could be eliminated completely and the > efficienty greatly increased. > > Oh, one more thing. The installer for 1.3b1 is broken. I tried it > using JDK 1.3, JDk 1.4, NT, 2000...failed all tries (could not find a > suitable VM). > > Anyway, everything else seems to be working fine...I really like the > full screen mode!!! > > Michael P. McCutcheon > > =========================================================================== > 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". =========================================================================== 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".