>Date: Mon, 11 Mar 2002 11:41:25 -0700 >From: Chris Forrester <[EMAIL PROTECTED]> >Subject: [JAVA3D] Particle System >To: [EMAIL PROTECTED] >Delivered-to: [EMAIL PROTECTED] >Delivered-to: [EMAIL PROTECTED] > >I just wanted to say that i've gotten a 1.2.1 particle system working that uses a giant QuadArray and BY_REFERENCE members for quick insertion/removal. > >Particles are defined as quads with their own offset transforms (for scaling/rotation/position offset) and hook into a simple position/direction/lifetime particle movement system. These quads all share Appearance data as well, so you can create alpha/additive textures and apply them the object to get cool particle effects. > >For numbers, I can get decent performance with (tested so far) 400 particles on the screen (with one texture unit) at once. This totally blows away the other method I've tried for a system, which was individual TriangleStripArray's per particle. With that system, I capped out at 40. > >For the future, i'm going to optimize the particle removal/cleanup system, and as soon as the boys at StarfireResearch update their 3dsmax importer(or I can get a copy of the maxsdk to build my own) I'll update to the latest beta of J3D, so that I can convert the Quads to TriangleStripArrays for more performance (problem right now is that J3D 1.2.1 doesn't allow re-setting the strip indices) > >So, to summarize: (1 Shape3d object, with X number of particles) per Appearance. Fast particle performance. Cool effects like additive mode. No reliance on a Java2d layer. > >If anyone would like more info about this project, feel free to email me, and i'll get back to you within a day or so. > >Cheers. > >Oh - One more note, I'm using the DirectX J3D, so my Quad performance (or so it would seem reading the postings/tutorials) is much lower than if I were running the OpenGL version. >
Because DirectX doesn't support Quad primitive. We've to do some extra work to split the quad every frame in case of by-reference. - Kelvin ------------- Java 3D Team Sun Microsystems Inc. =========================================================================== 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".
