The video above showcases my post-processing assignment from my third year. It was part of the Math & Tech module. Since this is a post-processing project, the showcase build demonstrates various post-processing effects, including Copy, Tint, Gaussian Blur, Retro, Burn, Distortion, Spiral Animation, and Bloom.
Area post-processing was also applied to certain objects in the assignment. This was specifically done to demonstrate that post-processing is not limited to the full-screen camera but can also be applied independently within a defined area, as long as it is attached to a model.
The code above is written in HLSL and demonstrates two different post-processing effects I created for the assignment. Gaussian blur was particularly challenging to implement, as none of the formulas I encountered during the assignment seemed to work correctly. Eventually, I found a solution by creating a float2 function and using a Texture2D as a reference point. I specified the target dimensions and returned the computed values, which finally made the Gaussian blur function properly.
The underwater effect was relatively simple to implement. The main goal was to ensure that all elements remained visible on the screen while maintaining enough strength to be noticeable without overly dampening visibility. The biggest issue I encountered with the underwater effect was pixel bleeding around the edges. By shifting pixels from the center of the screen to the edges where the bleeding occurred, I was able to correct the abnormality and eliminate the issue.
The video showcases all the techniques I used, including standard post-processing effects, polygon-based post-processing, and full-screen post-processing. Everything is included in the demonstration.
Piotr Lagwa
Did you like this post? Tell us