Adding Post Processing Profiles in Unity

Post-Processing is a common feature across many visual mediums to enhance image quality. In video games and 3D rendering, this is applied via numerous different shaders to apply various filters and effects to the output display, allowing for overall enhancement as generally each individual object is rendered on it’s own.

Unity’s different rendering pipelines contain different iterations of Post Processing Stacks, each with their own enhancement effects. The Universal Rendering Pipeline (URP) and High Definition Rendering Pipeline (HDRP) have their stacks built in, whilst the Standard Pipeline requires a separate package to be imported into the project.

In term’s of making use of the Post-Processing stack, these examples take place within a URP project. If we access our Create menu there is a subfolder labelled Volume, containing the various Post Processing Volumes we can use in our scene. We have the option of creating Global Volumes or various others contained within different shapes and meshes, much like our colliders.

Created Volume

Accessing our created volume in the Inspector, we can see a Volume script. To make use of the stack, we need to create a Profile. We can also adjust the weight and priority of this volume if we were to have various volumes overlapping.

With a Profile created, we now have the option to Add Overrides. This is where we can select and alter the various effects we want to apply.

The various effect overrides

One of the most common and easily noticeable overrides, is Bloom. This effect adds glow to bright areas in the scene, a great way to enhance our lighting and emissions. When we add overrides, we can access a multitude of different variables to fine tune how we want our scene to look.

Bloom override
Before and after Bloom applied

Other overrides we can add include various recoloring elements, vignette, depth of field, and film grain.

My finished stack

I opted for adding slight coloration to my shadows, midtones, and highlights separately, as well as using the Color Adjustments override to add exposure and contrast. Next I added Vignette, which darkens the edges of images, which draws the eye in closer without lowering the field of view. I also added a slight Film Grain to add some noise to the image, and then finished off the stack with a Depth of Field effect, which blurs background images while objects in the foreground are in focus.

Before and after finished stack

The finished product isn’t too intense or overbearing, I opted for a subtle approach to add a touch of flavor. But alternatively, we can go very overboard and create in your face effects.

Or, we can blend different volumes together between various spaces, great for changing the feel between rooms.

To create an example, I simply split my room in two, and created hot and cold volumes. An important thing to note is that any overrides applied on a global volume, will take precedence unless we change the priority. When using local volumes, we can also alter the blend distance, allowing for hard edges or fade ins to the full effect.

Moving between the global, cold, and warm volumes.

Ultimately, this can be a very powerful tool, especially when creating more linear experiences, being able to change the mood and feel as a player progresses through an area!

--

--

--

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

CS373 Spring 2022: Blog #2

IoTeX Joins AWS Partner Network and Partners with AWS China & High Cloud for Ucam

The Easiest Buddhist Practice To Hammer Down Stress and Anxiety It’s called “Changing the Peg”

Is Spotify Wrapped Not Working? Follow the Guide to Fix It!

My hackNY Application

Part 2: How Grammarly tackles hidden complexity in front-end applications

[SsLoopVec] Simple Loop Vectorizer with LLVM

Review apps feature on Google Kubernetes Engine using Jenkins

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Calum Slee

Calum Slee

More from Medium

Animating Sprites in Unity

Creating A Timed Run Challenge In Unity

Layering Materials In Unity

How to Create the Hand-Held Camera Look on Unity Cameras using Noise