If you’re building a game with Java 3D and need particle effects, check out Genesis FX (http://www.indietechnologies.com). It’s a commercial version of the particle system featured on the cover of the June 2005 JDJ magazine. Built from the ground up to support Java 3D, it features smoke, flames, and clouds. Genesis FX is available now.
emailed you, but your form doesnt say if the email succeeded or not. Hopefully that means it did…
I thought the article was great and I downloaded the source code and ran the demos. This is a great particle system.
jfelrod1960, Wow, thanks for the compliment. For the record, jfelrod1960 does not work for indie technologies
It’s a great article it simply is not very accessible to newbie’s I especially like the way you construct the tornado, it looks awesome and is a very powerful and flexible technique (and also eye candy) ;D
Now I wonder how hard would it be to create a simple 1Million Particle system (using only pixels) and a simple point emitter, which technique would be best (more fps) pooling or using the GC with tweaks? Now there’s an article I would like to read as a newbie.
Well FWIW I’ve read the GenesisFX manual and foudn it very easy to follow. I know basic 3D but have never worked with particle systems before.
As soon as I can break teh tiem free Im actually going to start adding the GenesisFX effects to JNWN, strating with tghe smoke and waterfall effects that Im currently droppign from the maps.
Daniel, Getting interactive performance with 1 million pixel particles would be challenging. The articles I have seen take the approach of moving the work to the GPU. This is mostly because the particle system bottle neck becomes moving the data from the CPU to the GPU. The approaches typically use the RGB values of a texture to hold the particle position, velocity, etc. and use the combine functions of texture unit states to do the math each cycle.
Mike
Since Java3D 1.4 includes shader programming, you can do GPGPU programming for your particle system?
Just a thought!
Very interesting stuff,
maybe i will take a shoot at doing this (after i get more acquainted), first with the CPU then with the GPU, my inspiration comes from the lord of the rings game series from EA, where they have created a particle system capable of handling 1Million particles, also from an article i read on gamasutra a long time ago about doing it all in the GPU.
That is on my list to look at mostly because performance profiling indicates that the rendering thread is the bottleneck. This implies to me that the CPU-GPU transfer of the vertices might be the area to improve. If the particle states can be kept in the GPU, then it might be possible to do a 1M pixel particle system. Unfortunately, there is no easy way to profile the transfer or the GPU to tell for sure. Point sprites would help too, but that appears to be off the list of immediate features of J3D.
Mike