Listing 1

ParticleEmitter pe = new ParticleEmitter(
	new PointGenerationShape(Math.PI/4),
	400, 	// emission rate
	50, 	// emission rate variance
	8.5f, 	// velocity
	2, 	// velocity variance
	3, 	// lifetime
	1,	// lifetime variance
	1500	// emitter lifetime);
pe.addInfluence(new FadePoint());
particleSystem = new PointParticleSystem(pe, new Color3f(0,1,0));
// Adding the particle system to the scene not shown here
// Add a behavior to manage the particle system animation
ParticleSystemManager manager = ParticleSystemManager.getCurrent();
manager.setSchedulingBounds(bounds);
objRoot.addChild(manager);

Listing 2

float rate = (float) Math.PI/2;
Vector3f particleRotationRate = new Vector3f(rate, rate, rate);
Vector3f particleRotationRateVariance = 
    new Vector3f(rate/2, rate/3, rate/4);

ParticleEmitter pe =  new ParticleEmitter(
     new DiskGenerationShape((float)Math.PI/8, 2.5f, 1.5f),
     4.3f,     // emission rate
     1.2f,     // emission rate variance
     22f,      // velocity
     7f,       // velocity variance
     particleRotationRate,
     particleRotationRateVariance,
     7.5f,     // lifetime
     1.5f,     // lifetime variance
     100      // emitter lifetime in seconds
         );
pe.addInfluence(new Gravity());
pe.addInfluence(new BounceShape());

IShape3DFactory factory = new ColorCubeFactory();
Shape3DParticleSystem particleSystem = 
    new Shape3DParticleSystem(pe, factory);

Additional Source Code - Zip file