Jump to content
  • Advertisement
Sign in to follow this  
Frifron

SPARK : free opensource particle engine in C++

This topic is 3521 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, let me introduce to you my particle engine library : SPARK is an opensource particle engine on CPU side written in C++. It was designed to be portable, configurable, evolving, and simple to use. Domains of applications of the library are mainly the rendering of 2D and 3D effect based on particles but it can also be used for light simulation of numerous physical entities. You can check the website at http://spark.developpez.com for a list of features, documentation, demos, downloads... The licence of SPARK is the lgpl so it is very permissive. Here are the keys for demos :
  • F1 : changes the display of text
  • F2 : displays or the bounding boxes. For SFML Demo : display or not the grid
  • F3 : changes the rendering mode. For SFML Demo : displays or not the BG
  • F4 : pauses the particle systems
  • Supp : reinit the particle systems
  • Esc : quits the app
  • Mouse : moves the camera
  • Mouse wheel : zoom in and out (on certain demos only)
Specific demos keys :
  • Fire Demo : space : activates or desactivates the smoke
  • Fountain Demo : space : switches to high or low graphics
  • Rain Demo : +/- : changes the rain rate
  • Writing Demo : left mouse button : adds particles
  • SFML Demo :
    • F5 : Destroys all fires
    • space : activates or desactivates the smoke
    • left mouse button on empty tile : adds a fire
    • left mouse button on occupied tile : removes a fire
Any comments, suggestions, questions are welcome ! A few screenshots :
[Edited by - Frifron on January 5, 2009 6:13:27 PM]

Share this post


Link to post
Share on other sites
Advertisement
Is there the ability to gradually stop emitting particles? I really like your site but I have a suggestion.

When you are listing the Versions, I suggest you do it in a more professional way.

I have never seen your way but it is quite clever.

Instead of using 1.02.02

You should try 1.0.2 Build4 or RC2

RC = Release Candidate.

Other than that, I have just downloaded your particle system. I will stay in tuned. thank you.

Share this post


Link to post
Share on other sites
Hi, thx for your answer

Quote:
Original post by fireworking
Is there the ability to gradually stop emitting particles?


Yes you have to decrease the emitters' flows at each frame with something like :

emitter.changeFlow(-A * deltaTime);

This function clamps the flow to [0,[. Once the flow reaches 0, the emitter is inactive. Once all emitters in a group are inactive and no more particles are alive, the group becomes inactive

Quote:
When you are listing the Versions, I suggest you do it in a more professional way.


Well this is more or less the way I release stuff professionnaly as well:
A.BB.CC

A being version number
BB being major release number (new features, modifications...)
CC being minor release number (bug fixes and small modif...)

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!