- Supported UE versions
- 5.6+
IMPERFECTER is a code plugin for Unreal Engine that extends the engine’s Post-Processing possibilities by providing a set of real-time modular Post-Process effects focused primarily on simulating various real-life camera imperfections.
Go-To plugin for every found-footage, bodycam, digicam, analog film style project. It's ideal for adding that last bit of realism/believability to your projects.
The effects are made with Global Shaders that are inserted into the Unreal Engine’s rendering pipeline, which allows for achieving more complex and multi-pass Post-Process effects that normally wouldn’t be possible with regular Post-Process materials. On top of that, the effects' architecture is standalone, meaning they're independent from each other, allowing them to be modular, reordered freely, and even used multiple times in the same effect stack.
List of all available IMPERFECTER Effects:
- Chromatic Aberration - Simulates lateral and longitudinal chromatic aberrations (lens fringe) on the image that are controllable per each color channel.
- Compression Artifacts - Simulates in real-time the low-bitrate artifacts caused by lossy compression algorithms via DCT quantization and deblocking filter.
- Film Damage - Adds various animated, texture-based film damage imperfections to the screen like dust, dirt and scratches.
- Halation - Simulates the spreading of light (bloom) in bright areas of the image that occurs in analog film.
- Interlacing - Simulates interlacing artifacts achieved by horizontal scanline-based alternation of the previous and current frame.
- Lens Dirt - Simulates blurry bokeh imperfections and light irregularities caused by dirt on a lens. Advanced dirt mask effect with independent threshold.
- Lens Distortion - Applies distortion to the screen with a gradient or a polynomial distortion model. Allows for Bicubic filtering for best quality preservation.
- Noise Grain - Adds procedurally-generated and/or texture-based film grain/digital noise to the screen.
- Overlay - Adds a customizable gradient/texture to the screen with a desired blend mode.
- Sharpen - Adds a sharpening effect to the screen via unsharp mask method with two different sharpening styles.
- Soften - Adds a blur/softening effect to the screen. Fast to render Gaussian-like blur implementation.
Applying the effects happens via level actors called "Imperfecter Instances" as well as utilizing the Imperfecter Subsystem for changing the effect's properties at runtime. The workflow is similar to working with Post Process Volumes. Simply add a new "Imperfecter Instance Actor" on the level and you're ready to start adding the effects.
For detailed information about the plugin please read the Documentation
Not sure if that's what you're looking for? Don't hesitate to contact me via discord, email or forum thread for any questions.
Sample scenes from the screenshots are not included.