Distorted Glow Tutorial

This is one of those effects you won’t be using very often (if ever), but it’s useful to learn more about the compositor and open to new ideas. This tutorial is based on 2.68 and uses Cycles (but can also work with BI).

The Setup

Delete that wimpy default cube and add a Monkey to the scene. Rotate it so it’s facing the camera, then rotate on the X axis so it’s looking slightly downwards. The latter is a matter of style, you can do whatever you want. Now, we need darkness to appreciate light so go to the properties panel and set the world background color to pure black.

Select Suzanne and give her a default diffuse material. Now go into edit mode, select the faces that make her pupils, add a new emission material and click the assign button. Set the emission material to a large strength (I used 200) and an orange-ish color (#E74800). Don’t forget to check the Render Layers panel and enable the Emission pass.

We’ll add a simple light setup to make more of our monkey visible, this is also a style choice and you can skip this if you want. Grab the default lamp and light Suzanne’s face from below. We want a very diffuse and subtle light to fill in the shadows, so let’s set the size to something big like 8.0. Play with the strength of the emission node, I left mine at 50.0.

Add a new light and put it behind Suzie. This will be our rim light and will help our character pop from the background. Set the size to 2.0 (still subtle), and a strength of 150. To add some variety we’ll change the light color to the complimentary of our  glow’s color. And since our glow will be orange-yellow, our rim light will be a subtle green-cyan (#E7FFF1).

Here’s our render before compositing

Base Glow

The compositor is where all the magic happens, so make space for a nodes editor and activate the “Use nodes” option. Add a Glare node, set the type to Fog Glow and the quality to High. Increase the size to 9 and set a low threshold (I used 0.0). Add a Viewer Node, and plug both the Viewer and Composite nodes into a Reroute Node (This is in Add > Layout > Reroute). Plug the output of the Glare node into the Reroute.

Distorted Glow

Add another Glare node, but this time plug the emit pass into it. Set the type to Streaks and the quality to high. Increase iterations to 5, lower threshold to 0.0 and set the streaks to 2 so the glow goes sideways. The Fade slider will control how long the streaks are, I used 0.98.

We don’t want the pupils along with our glow, because we would be distorting them too. Add a Mix node, set the mode to Subtract and plug the emit pass and the output of the glare node into it. Make sure the Factor is set to 1.0.

Plug the output of the mix node into a Displace node (Add > Distort > Displace). The displace node can use an image or texture to displace an image, so we’ll add a Texture node (Input > Texture). Click on the texture button in the nodes panel and add a new texture. Plug a clouds node into the output. Set it to Improved Perlin and Hard, then set the size to 0.5 and Depth to 24. Now give it a name and hop back to the compositor. Plug the output of the texture node into the displace node Vector input and increase the scales to 150.0 (or something big like that). You might want to add another Viewer node to check the result of our setup as we go along.


Let’s make our glow curve (since we are looking down). Add two more Displace and Texture nodes. Create a new texture and use a Blend node, set it to Spherical and leave everything as it is. The circular texture will make the glow buldge up, since we want it to go down we’ll use negative scales in the Displace node. I used -100 and -250.

Now, we got the glow going but chances are the displace nodes also moved it from where it was. Let’s add a Translate node ( Distort > Translate ) to move our effect. Just play with the sliders until it’s centered on Suzanne’s eyes, and a bit down (remember she’s looking down). In my case I had to use 25 on the X axis and 140 in the Y axis. Up Next: more glowy-ness. Add a Blur node, set it to Fast Gaussian (because waiting sucks) and set the scale to 50 on both sliders. Add a new Mix node, plug the output of both the Blur node and Translate. You can use the Factor to control the strength of the blur (I used 0.6).

We can finally mix our effect with the rest of the image. Add one more Mix node, set it to Add and plug the output from our first Glare node and our the output of the previous Mix node.

Return of the pupils

We’ll add our pupils back. This is another a style choice, but I think it looks kind of lacking otherwise. Add a Hue-Saturation-Value node and increase the value to 2.0, plug into a Mix node and set it to Add. Don’t forget to connect our previous result and the output into the reroute node!

Take it further

This concludes the distorted glow tutorial. But think of the possibilities! You could try animating the glow, add hue-saturation-value nodes to give slightly different tones to the glows or try different inputs for the displace node. You could also add more displace nodes to create smaller details in the distortion (and animate those as well). If you have any cool ideas, share them in the comments.