Quote Originally Posted by TheLion
It might be a stupid idea, but it also might not be, but take a look a 2D starfields and read in on the 3D particle systems (good place to start is Nehe). Basically a 2D (or 3D) starfield is a particle engine, only a very basic and easy one. ...

Take a look at NeHes OpenGL particle system and just take out the z-axis (might want to replace the z with the y axis) that should do it.

On the array of records, I have never seen it been done differently, however you could use a TList with a objects, but that would make the program run slow especially when you wish to destroy the object... No record-arrays are the best for particle engines I think....

Hope this helps a little!
Thanks. I have the Nehe tutorial in my collection of articles about particle systems. I will try to make good use of it.

By the way, as a beginner in programming, I think a good topic for discusson is code optimization. I have found myself in other programs using techniques that get the job done, but could be done more quickly and cleanly with different routines. Anybody interested in setting up a forum where beginners can submit code segments and you veterans give us suggestions for tightening the code up into a cleaner, more efficient approach?