/particle_system

particle system experiment built on top of OpenTK and .net/mono

Primary LanguageC#

Toy particle system

This is my pet project which serves the sole purpose of learning new versions of OpenGL (currently 4.4), how to do programming on gpus and exploring capabilities of the concept of particle system itself (for example learn how to do a physics simulation in various ways, or explore a concept of an IFS or a dynamic system)

Code consists of some OO wrappers over the pure OpenGL, which is imported by means of the OpenTK library. Wrappers serve the purpose of defining a more declarative approach for the overall setup, and it works fine for me. Implemented functions are:

  • manipulation with shaders, readout of shaders from the assembly resources and/or from files with observation of changes
  • setup of uniforms, uniforms can be set dynamically and/or bound to properties of a class (with some minor effort)
  • setup of vertex attributes, textures and framebuffers
  • setup of several rendering phases into one big shading setup
  • .. and more may come

Particle systems are and should be written from scratch (I didn't put any effort to develop a general framework). The biggest effort has been put into System3, which is somehow extensible and there are a few things you can play with and into System4, which is actually for doing experiments with implicit surfaces.

Screenshots

...

...

...

Further plans

I have some plans to play more, and there are few things I have come across and which gained my attention: