Pages: [1]   Go Down
Author Topic: Particle system: a new library for use mainly with an LED matrix  (Read 1445 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 4
Posts: 3
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I had an idea of using an 8x8 RGB LED matrix to create a self-contained device that generates an ever changing, dreamy, fluid animation - kind of like an electronic lava lamp.

After trying some other approaches, I eventually implemented a particle system library that includes:
  • a generic particle system class that manages everything
  • a generic renderer to render the particles onto the LED matrix
  • several classes of particles and emitters with various behaviors.

An effort was made to make the code efficient in terms of calculations and memory, in order to maximize the number of particles that can be used in parallel (I got to a little over a 100).

Using a diffuser screen and with the right motion speed, the pixels disappear and the resulting animations look pretty smooth.

The source code is available on github, where you can also find more info and some usage examples: https://github.com/giladaya/arduino-particle-sys

Enjoy!
« Last Edit: February 24, 2013, 05:13:08 pm by giladaya » Logged

Copenhagen, Denmark
Offline Offline
Edison Member
*
Karma: 33
Posts: 1228
Have you testrun your INO file today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Crossposting is not good smiley - but links to the videos in the exhibition forum would be a new post and OK.
It looks very cool. It seems more complex than just 8x8. Now you "only" need some similar "random" music. smiley-cool

The code ... only glanced at it. Needs more reading. I'll keep it in mind if I want to do some blinky-blinky stuff. Thanks for sharing!
Logged

Norfolk UK
Offline Offline
Faraday Member
**
Karma: 71
Posts: 2612
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Results look very impressive. I have a rainbow here somewhere and will load it up and have a look.
Logged


Pages: [1]   Go Up
Jump to: