JetSetCrash Brightside

Particle Editor

2024

In my free time, I created a particle editor to address frustrations from previous projects, where tweaking particle effects was slow due to the need for project rebuilds or excessive debug sliders. My goal was to build an editor that:

C++
Play3D
Particles
Editor
Solo

Key Features

Challenges, solutions and lessons learnt

I gained significant experience with ImGui and after working on subsequent projects, I've learned additional features and identified ways to improve my editor's usability and workflow. The most challenging aspect was working with compute shaders, particularly reworking algorithms to function in parallel and organizing them efficiently. Given the many features I wanted to support, I needed to structure the code by separating different functions into separate HLSL files and including them as needed to avoid bloating a single file. I also planned to implement a preprocessor step to control which includes are used. For example, this would allow disabling specific features like burst spawning, ensuring the relevant functions wouldn't even be included in the compute shader.