Application
Video Demo
Quick Notes
An application designed to apply different image effects (Bloom, Edge Detection, Invert) to an image using Compute Shaders, UI was created with Nuklear as a research into Compute Shader usage, additional ImGUI version added.
Research Doc available hereThe purpose of this research was to apply compute shaders to image processing. Taking advantage of the ability to define a x, y, z grid and the fact that a texture is x wide and y tall we can simply set glDispatchCompute (textureWidth, textureHeight, 0) that way for each effect we have a compute shader that is handling a specific pixel. Additionally images with the new effects can be saved as TGA files.
Additionally
As a little bit of practice I decided to redo the application with ImGui, the process was not difficult since I have some experience with ImGUI, I do say I shifted towards liking ImGUI more with this as it was very simple to just redo the same design.In the next steps I would like to create a tool to help set up GUI elements, normally elements require x and y position and typing them down and building the solution takes too long, having a slider control to check the values in real time would be very useful and not too complicated to implement.