Blender Compositor Tutorial - Introduction.


Posted on Jan. 8, 2020, 10:38 p.m. by Ren-Den • Last updated on July 14, 2020, 7:17 p.m.

Blender Compositor

A quick introduction

1. The Compositor
2. Render Layers
3. Mixing & Adding
4. Masks
5. Common Effects
6. Order from disorder
7. Textures
8. Exports & File formats.
9. Thanks & Additional sources.

1: The Compositor

You can access the compositor either by going to the corner of any editor and
clicking on "Compositor" or by the default keybind of: [Shift + F3] while you
mouse over any of the editor windows.

alt text
When you start out in the compositor there are a couple of things you will want to toggle by default. The first is the "Backdrop" button in the top right corner. That allows the Viewer Node to display whatever you are working on.To quickly enable the Viewer Node, simply [Ctrl + Shift] Click any node or pass you wish to preview.

From there, you will also want to open up the "Properties Panel" [N] and jump over to the options Submenu. If you're running a GPU, the default toggles should be:

  • OpenCL & Buffer Groups.
    With Two Pass being of potential use if you're doing a lot of masking. (This runs quick computational nodes first, then slower afterwards.)

Outside of toggling these options you will primarily want to keep your Properties Panel on View to easily change the zoom factor on the preview. If you're unwilling to learn the following keybindings.

https://gfycat.com/SeveralOrganicCanvasback

Backdrop Image Zoom Inwards: [V]
Backdrop Image Zoom Outwards: [Alt + V]
Backdrop Reset: [Z]
Backdrop Fit: [Alt + HOME] (Yeah, I suggest changing that one too.)
Backdrop Move: [Alt + Mousebutton 3 (Scroll-wheel press)]

2: Render layers

Render Layers are the most common variation of compositing materials that you will run into with blender. These are made up of Passes. Where your blend file can have multiple Scenes, which can have multiple Render Layers, which will contain different Passes. Said passes, are delivered as "color information". Be it grayscale, vector shades or the whole color spectrum. The available passes will vary from render engine to render engine. EEVEE will have fewer than Cycles for example. While the immediate thought might be "ENABLE EVERYTHING". That should be discouraged if possible. Not only will it increase your render times (slightly), but it will make your compositing more of a clusterfuck.

alt text

In the compositor, your render pass will show up by default like pictured below:

alt text

Thus, try to only include the passes you expect to need.
Planning is key.

There is one particular Pass that requires more detail:

  • The Mist Pass.

The Mist Pass is controlled by additional qualifiers that live within the World Properties underneath the "Mist Pass". Do note, this menu will only show up if you have toggled on Mist Pass in the View Layer Properties.

alt text

The Mist Pass works by ranging out a set distance from your camera you have set to render. The start measurement being the distance from the camera, while Depth is how deep along the Z axis the mist goes. The Falloff is a simple descriptor for the speed of the change in the gradient. Illustration below.

For easier visualize where your Mist Pass begins and terminates. You can toggle a visual guide in the Camera object underneath "Viewport Display" toggle: "Mist" This range be emphasised further within the compositor, with anything that changes the values of the color ranges with everything from, "Color Ramp" to "Map Value"

alt text

3: Mixing & Adding

So, you have a rendered image, and it has passes. And now you want to see if you
cannot make your render that little bit better. You are more likely than not to find
that some tasks that are arduous to do in 3D, are a lot simpler to achieve in the
compositor. With a large background library, backdrops are just a couple of clicks
away rather than a major import of messy meshes. Or, you may also have noticed
that it is impossible to make anything resembling an actual "Glow" in Cycles, due to
the fact that glow is actually a camera/eye-artifact. To achieve this is all within the
domain of Mixing and Adding.

alt text

The Primary workhorses
While there is also a third companion, it is used rarely, due to its specific nature. And so we are not going to get into when and why to use the "Z-Combine Node"

On first glance, "Mix" & "Alpha Over" seem very much alike to each other. While both Mix & Alpha over, can overlay images depending on their alpha information. Alpha Over only ever touches RGB-information on its own, but retains the Alpha data ("Set Alpha" can work around this. While "Mix" has in my experience chewed through just about everything.

"Alpha Over" also doesn't cause a luminescence difference like some of Mix's blends do.

The general use cases for the two nodes will be:

Alpha Over:
    Overlaying your render on top of a background.
    Overlaying Watermarks on top of your renders.

Mix:
    Blending non-transparent on top of one and the other.
    Blending together different color passes.
    Masking

4: Masking

Masking is the primary tool of the compositor, as well as its most fundamental.
Most everything inside of the compositor utilizes it to one degree or another.
To get the most out of masking as a concept, you should understand what
you are fundamentally working with.

alt text

Between every Alpha Over & Mix that you do, you will either overlay or blend. The manner which decides how much, is the mask. The simplest example of this is mixing white with black. Your factor will go between 0-1, where 0 means you get white, and 1 means you get black. If you pick 0.5, you get a gray. Combined with other nodes, you can achieve basic effects such as:

The brightest pixels in your render becomes transparent.
Everything emissive within your Emission Pass has a glow.
The distance from your camera slowly becomes white (Mist Pass.)

This concept becomes even more interesting when you start defining custom masks.

alt text

Blender has a healthy amount of ways to mask your scene, 3D-objects & canvas. From the Box & Ellipse Mask, where you have a very simple geometric black-white mask to the Cryptomatte & the outdated ID-mask, that lets you can assign objects within your render after its done to be specifically targeted by various blending effects, to the classic "Mask" where you designate your own mask in the image editor with curves when you need to mask something more complicated than a rectangle or ellipse shape. It is probably dawning on you now, that you can mix & combine masks to get bigger and more complex masks. It is a layered solution where only your willingness to go between black & white is the limit.

5: Common Effects

Denoising. (2.81 or higher required.) 

alt text

With the advent of 2.81, blender now has an access to the Intel Denoiser by default. This is an enormous step-up from the previous denoiser. Making the upgrade to 2.81 well worth by itself. Particularly if you are working in cycles a lot Cycles.
Simply add the "Denoise Node" into your composite, Toggle the "Denoising Data" in your Render passes and connect: Image with image, Denoising Normal with Normal, Denoising Albedo with Albedo. Then plug that into your composition and, congratulations. You've just cut the amount of samples required by a significant margin. While getting less noise.

Amplifying Ambient occlusion.

alt text

Having a bit of extra ambient occlussion can generally support a more cartoony look. And its easy enough to add in the compositor. Simply add a mix node. Set it to multiply and connect image & AO. Use sparingly for a slightly more cartoony look.

Glare, Glow, Stars 'n general shiny lights.

alt text
This one is a somewhat more broader principle. Where you don't necessarily have to use the emission pass, even if it is mighty useful to seperate your emissive elements to its own pass, the Glare node works by utilizing the brightest available pixels, then going by the threshold from there on out. Keep this in mind and you have a quick 'n dirty tool in the compositor.
A point of import that ties into the fact that the glare nodes utilize the brightest pixels is that you can generate your own points of "brightness" if you've for some reason have forgotten to include it within your desired 3D geometry. Just remember, if something emits light, it emits on more than just itself.

* Vigennette

This is babby's first effect. Criminally overused, yet one of the most useful effects in composition that exists. This effect is going to get you laughed out of the room if you overstep the usage with it. However, will serve you well to highlight points of focus. It comes in a myriad set of forms. The most commonly used one, is a simple feathering pattern of the edges of the screen towards the center. This simply darkens the edges and pushes the eye towards the center. Useful, but overused.

alt text

The more "advanced" version of this, would be to use masks to influence your color grading. Where your point of focus is color-shifted in one direction, while the rest of the scene is graded differently. This can help to emphasis to tell a different plots in whatever erotica you decide to make. A general composition course is very useful for this. However in the #Blender channel's pin is a post by Odysses that's highly useful on this particular topic. (Thanks Gnom.)

alt text

Chromatic abberation.

https://gfycat.com/VibrantPresentDuckling

Chromatic abberation is yet another physical artifact that along with film grain has managed to creep itself back into renders that doesn't suffer from this downside. As something that little bit of extra on top & feel more "real". Combine with a mask for control.
Node Setup:
alt text

Moisaic censor:

alt text

Having to censor something should be something that's near and dear to anyone who has done degenerate enough content to warrant censoring on various release platforms. While a basic blur can frequently do the job admirably. Its always valuable to spice things up a little bit more. Where each tile can hint at what's underneath while complying with the rules.

Node Setup:

alt text

6: Order from Disorder

Troubleshooting always starts with locating just where your problem is. With its node based approach, the Blender compositor makes that easy, provided you put in the minute it takes to order your nodes to something more readable. Each node leading into the next node can easily be disected just what its doing by ctrl-shift clicking it. However, when you're laying effects. It can be good to keep them stacked together. In contrast to:

Fix12

The visual cluster-fuck makes it hard to read and far harder to getting an overview at a glance. While it is not so difficult to figure out where every individual piece eventually ends up. It can be very enlightening to go over your setup and clean it up.

So, what tools do you have to clean it up?

1. Reroute
2. Frame
3. Groups

alt text

Reroute: is simply a node point, that you can move about freely and connect to other nodes. This allows you to have an cleaner routing of your nodes, resulting in a cleaner view.
Frame: creates a background frame that allows you to group together a set of nodes. Framing is a visual aid that helps keeping large node trees well-structured. One of their primal uses is to separate specific effects when they are being mixed.
Groups: the same as Shader Editor Groups. This permits you to create an internal group of nodes for a more compact overview With easy input and output nodes. Rather than seeing the entire routing of the effect in question.
These nodes are their own data block and can conveniently be appended
into other files. They will appear at the bottom of the Nodes "Add Menu". (Ctrl + A)

Fixed11

Post-Sorting

Fixed10

7: Textures.

While you can import custom Textures as a simple Image node, you can also use the internal textures that's generated inside of the Textures properties.

Fixed9

This can quickly be accessed with a Texture node in the Compositor.

Fixed8

Said Node can further be modified (and animated) on the fly. Without needing to be reloaded.

8: Exports & File formats.

This version of the guide is going to assume that you're not utilizing an external compositor. So there won't be a need for exporting the passes from the Renderlayer.

Assuming you're keeping your render in memory, it can be at times moderately annoying to get the "Composite" node to update. Using the "Viewer" Node and opening another area. Switching to the Image Editor (Shift + F2). Then toggling the image / texture over to the "Viewer Node" allows for easy saving of your project in whatever desired file format you want. Wherever within the compositor tree you wish to.

I'm an inline-style link

For publishing, you will in general be fine with alternatively .JPG (If you care about your upload site of choices storage & bandwidth. This is assuming they don't have a internal converter) or .PNG with 8-bit color depth, set to your desired compression level.

For external compositors however. Its recommended running a higher bit-depth (16-32 bit) with a format such as OpenEXR or OpenEXR MultiLayer. However, that's for another version of the guide. Just know that 100% compression on .PNG files is VERY slow in the grand scheme of things.

9.Thanks, additional sources & resources.

For feedback regarding this tutorial. Toss a @Varenta into the Smutbase #Blender channel. Requests for particular topics is welcome too.

Thanks to:

  • Ganon: For enforcing & maintaining a sharing atmosphere with this platform. Benefit from the community. Repay by share to the community.
    For the community.

  • Crute: Being a pesky fuck promoting self-improvement. Let me be lazy.
    Nevertheless. Major thanks for helping to edit & bullying me into this little project.

  • Gnom/Mets/Vismund/Noodlebox: For the haphazard crumbs of knowledge with wide implications.

Primary Sources:

The Blender Manual

Blender Stack Exchange

When you've got a question. Always look at the Blender manual first. Its full to brimming with simple breakdowns for how just about every system inside Blender works, sometimes even with images. Priceless.
If/When however, the manual fails you. Googling for a problem, is more like than not to throw up a Stackexchange answer. These should be your first points when figuring out a problem you've been unable to solve. And they've been a major part of this write-up. Directly, and indirectly.

Secondary Sources:

Paul Caggecgi's Website

I might not be a fan of Paul's artistic work. But his tutorial's and breakdowns to create toon-like visuals both with the help of shaders & the Blender Compositor is an incredibly rewarding and useful bit of knowledge to enjoy.

Resources:

Jason's Blog - Compositor tools. Useful little collection.

b°wide NodePack

Blending Modes, and how they work.

Something you will repeatedly run into when you're mixing together different results. Will be which blending mode you'll want to utilize. The link above, will prove to be excellent reading in the long-term. Understanding what each individual blending mode does and how to use it to best effect is terribly useful.
The Blender greatest strength of the Blender community, is the willingness to share everything from code to tools. So make use of that strength.
And return what you can, when you can.

Blender Development Fund:

Fund Blender Today!

Fin.

V1.2.2