What is DPSF

Top  Previous  Next

DPSF (Dynamic Particle System Framework) is a programmer's tool for creating particle systems in C# and XNA.  It is developed by Daniel Schroeder as part of his Masters research in particle systems at the University of Regina.


DPSF is designed to make the process of creating new unique, custom particle systems easier.  This is accomplished by providing the functionality to manage the particles in memory and draw them automatically.  By providing a framework to build off of, you can code all of the particle's behaviors (i.e. movement, rotation, etc) allowing you to create any type of effect you want.  So unlike other particle system API's that simply offer a list of parameters for you to set, which limits what you can do with the particle system, DPSF allows you to actually build in the parameters and properties that you want and to control them however you like.  So the framework "as is" is incomplete; you must add your own code to define how the particle system and its particles should behave.  Because of this the possibilities of what you can create with DPSF are endless.


You do not always need a unique and custom particle system however, and many particle systems can all be built using a common set of properties.  In these cases those other particle system API's can be very useful.  DPSF also meets this need by providing a set of Default Particle Systems which include these common properties so that you do not have to write the code for them.  In addition, the default particle systems can be extended, allowing you to build off of them if you find they do not meet all of your requirements.


DPSF is packaged into a single dll (dynamic link library) file, making it easy to integrate into existing XNA projects.  A different dll file must be included depending on if your project is for PC, XBox, Windows Phone, or another platform, as well as if you want the particle system to inherit from DrawableGameComponent or not.