Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

A simple, ruby-based, particle generator

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 bin
Octocat-spinner-32 examples
Octocat-spinner-32 lib
Octocat-spinner-32 LICENSE
Octocat-spinner-32 README
Octocat-spinner-32 ion.gemspec
= Ion - Particle Generator

Ion generates graphic files representing successive frames of animation using
a simple declarative language:

 emitter {
   # Generates 50 particles per second
   rate 50

   # Determines rotation around the Z-axis (through the canvas)
   rotz { rand() * 2 * PI }

Save this file as +random.rb+ and calling the generator:

 $ ion --fps 30 --frame 90 random.rb

This will generate random-0090.png, which you can view using your favorite
web browser.  The defaults render a 400x400x24 PNG.

= Requirements

You need Ruby 1.8+, as well as a couple of gems, declared as dependencies.

= Particulars

The particles are drawn on a canvas, and the canvas' center is at
coordinates [0.0, 0.0].  [1.0, 1.0] is the top-right corner of the
canvas.  Rotation around the Z axis happens in a counter-clockwise
fashion, with 0 degrees/radians going right/east.

= License

Distributed under the GPLv2.  See LICENSE for details.

Ion is Copyright 2008, François Beausoleil <>
Something went wrong with that request. Please try again.