Sunday, June 12, 2011

Starting a new project

Might as well keep using this to document my work on various things since it's already set up...


Currently working on a framework for particle systems. The basic idea I'm following is that particles can be done either all on the GPU or on the CPU with a bit of shader-based fanciness thrown into the mix to spice things up. After a lot of thought on the subject I've decided to, at least for the time being, go with door number 2. I'd like to design the system in such a way that individual packets of information representing each particle can be streamed through a "processor" of sorts which would churn through the data and write it back each frame with updates. Deferring these brains as I've been referring to them in my head so that they are singleton classes should aid in my ability to thread them and should also yield general speed boosts if all is done correctly.




I'd like to streamline all particle evolution/lifecycle calculations in such a manner if I can. That would allow me to do some really cool stuff, such as defer the processor calculations even further to Lua or something else that can be modified at runtime. Things could certainly get interesting...



So this is an informal introduction to the project for my own documentation and logging. Maybe in a month or two I'll be able to look back on this example of website recycling and see something interesting. I just started a new full-time position at a large company however, so I'm not holding my breath.



Random/Vague image related. I've got a whole particle rendering so far with Vertex Array Objects in OpenGL.

No comments:

Post a Comment