Thanks, that has helped me a lot towards my particle engine. However, I may have to postpone that a while, since I've hit a brick wall: performance.

My engine heavily uses sdl_blitsurface, anti-aliasing and rotozoomsurface. This is problematic. My aim is to stay within 1GHZ, and to stay within that limit, I have tried 24bpp, limited size, no AA, SW and HW surfaces with no luck. Is there anything faster than sdl_blitsurface and rotozoomsurface? My engine is heavily engineered to have its own script environment to run everything. The problem I have is that I can only run up to 4 simultaneous rotations and blit a background in the 1GHZ window. That isnt much for a game...

My first test of particles raised the bar to 1.8GHZ for not too-stunning and basic results. Any ideas?