top of page

Vesper

IuvoParticles (2D System and Emitter)
Developed: November 18, 2025
Showcased: April 20, 2026

Marble Surface

Rather than go the object-oriented route, I decided to try and do this with as much decoupling as possible and focus on the simple passing of data. One of my main goals during this prototyping phase was to make as much of what I was doing in testing and iteration was transferable to my final goal of a standalone application. I did not want to copy over entire systems only to remove parts when they were no longer required. For this reason, I created specific structs for small pieces of data that I wanted my particles to act in response to.

Basic Particle Color Struct​

Advanced Particle Color Struct​

Basic Particle Lifetime Struct​​​

Advanced Particle Lifetime Struct​​​

I then created small controller classes that would take in those structs by reference, and then perform whatever operations fit the role of those controllers.​

Particle Color Controller

Particle Lifetime Controller

While the smaller scale controller classes relied on static functions, I created the overall particle controllers to be stack objects to allow reuse and easy disposal. This also allowed me to create more powerful controllers that could handle a wider range of computation and changes by relying on the building blocks that were already present in these small controllers.

Full Rect Particle

Full Rect Particle Controller (Update Function)

Result in GUI

© 2025 Damon S. Green II. Powered and secured by Wix

bottom of page