Things that make you go… BOOM!

Taking a break from the terrain and 3D programming, I decided to take another look at my star field and design a particle effects system that can be used for 2D games. The dynamic sky background used in the space ship game was a good start, so I went to work and created a particle class, ParticleEffects class, and an effects manager class with the sole intention of having things go… BOOM!

With the current system, I’ve only designed a basic “firework” effect, but using the same logic I am attempting to create a system that can do a wide range of 2d effects, from basic cloud cover, smoke, fire, explosions, stars in the night sky, even rain.

I’ll be working on it a lot in the next little bit until trying to get the class usable in a variety of 2D programs, but for now… enjoy the boom!

2 comments so far

  1. An on

    Any progress on this or availability of source? This is the kind of thing I’m looking to add to my project.

  2. Craig on

    What kind of project?

    I’m actually going to be fitting it into my current project (Codename ShackRPG) so it will be included in the open source.

    Its not a traditional particle emitter, more like programming specific effects. For example, Right now I only have 2 methods to create an effect:

    public void FireworkExplosion(
    int particles, <- number of particles in effect
    float minParticleSize, <- min size
    float maxParticleSize, <- max size
    Vector2 startingPosition, <- origin of effect
    float intensity, <- size of explosion
    Color outterColor, <- blue in video
    Color innerColor, <- orange in video
    Color originColor) <- yellow/red in video

    and

    public void ConeSpray(
    int particles,
    float minParticleSize,
    float maxParticleSize,
    Vector2 startingPosition,
    Direction direction,
    float intensity,
    float width,
    Color outterColor,
    Color innerColor,
    Color originColor)

    Thats pretty much all I needed for my project. It will be included in the RPG source, in fact after I’m finished with the section I’m working on now i’ll finish it up, fully comment it, and put it up to the code.google.com site. You’ll defiantly see a post about it when it gets there. :)


Leave a reply to Craig Cancel reply