Why use DPSF

Top  Previous  Next

DPSF allows custom particle systems to be implemented quickly and easily.  This is done by providing common particle system functionality, such as the updating, drawing, and emitting of particles, while still allowing you to specify custom particle and particle system properties, and define how these properties should affect the particles and particle system.  That is, it allows you to bypass the typical stages of designing a particle system, such as how to keep track of the particles in memory and how to draw them, and to move straight into the process of designing how the particle system and its particles should behave to achieve the desired effect.


The primary goal of DPSF is to remain flexible enough to allow you to have full control over your particle systems and their particles at all times.  You should be able to create whatever type of effect you desire, whether it is something simple such as creating a small gas cloud, or something complex such as creating a physics-accurate fluid flow simulation that reacts to external environmental forces.  This is accomplished through the use of Events. Events allow you to write functions, then specify which functions should be executed, and when they should be executed, giving you complete control over your particle system and its particles.  For example, if you want the particles to change their velocity when they are half way into their lifetime, this can easily be accomplished by using Timed Events.


In addition to providing the typical particle system functionality, additional tools and functions are provided as well to help speed up the process of creating particle systems.  For example, all particle systems have a built-in Emitter that has a 3D position and orientation, and easily allows you to specify how many particles you would like the particle system to emit per second.  Emitters can also be given a velocity and acceleration, as well as a rotational velocity and acceleration, to simulate the particle system moving and rotating. Templates and default classes are also provided to make creating typical particle system effects even faster.  These classes include support for things such as velocity and acceleration, rotational velocity and rotational acceleration, start and end colors, start and end sizes, external forces such as gravity, and other forces that may attract or repel particles (i.e. Magnets).


Because a DPSF particle system is typically contained within one file, this makes it easy for you to distribute your particle system to other people using DPSF, and to incorporate their particle systems into your own projects.  Just add their particle class file to your project and create an instance of the particle system.