Blender supports the use of View Layers, in which a shot is rendered in multiple passes, with only selective elements sent to the render engine. Each layer renders with the background set to transparent, so that each layer can be recombined in the compositor.
Why use Render Layers?
Very large scenes quickly exhaust your system's resources, causing render times to be longer, and if an element needs to be redone, you have to render everything again. Using view layers, you do a shot in a number of separate renders. If one of the elements contains an error, you only need to re-render that individual element.Is it hard to do?
Apparently, not. Let's see!1. Organise!
Ensure that the elements that you want to render in separate layers are organised into collections, as this makes it easier to mark which elements are visible in each view layer.
Important: Enable the Indirect Only flag in Outliner. For layers that generate emission, such as True-Sky, you will need the lighting from these elements to be sent to the render engine without the background elements, such as sky and clouds.
2. Create your View Layers
2. Create your View Layers
![]() |
| Render |
Important: For the default combined view Render Layer "ViewLayer", go to its Layer panel and turn off Use for Rendering. If you don't, it will result in a render layer that you won't be using in the compositor. It's worth keeping, as you can use this view layer to make scene changes without affecting the other view layers.
![]() |
| Use for Render - turned off for the ViewLayer |
For an example landscape scene, I've broken the layers down as follows:
Sky - Clouds and Sky
Background - Most distant terrain elements
Midground - terrain between the distant background elements and the foreground
Foreground - The terrain at the front of the scene
Sky - Clouds and Sky
Background - Most distant terrain elements
Midground - terrain between the distant background elements and the foreground
Foreground - The terrain at the front of the scene
The ordering indicates how the layers will be stacked in the compositor. If you get it wrong, you'll get very odd results, as elements that should be occluded will be visible—like background mountains appearing over the foreground elements.
Note that Render layer ordering isn't critical; it's how these layers are ordered in the compositor that counts.
In each of your layers, ensure:
Note that Render layer ordering isn't critical; it's how these layers are ordered in the compositor that counts.
In each of your layers, ensure:
- Only the collections you want to render are enabled.
- Go to Film in the render settings and enable Transparent. This ensures that no scene background is rendered in each layer, so anything behind them remains visible in the compositor.
- Ensure staging elements such as lighting, cameras, etc., are included in each layer.
a) Open the compositor and select View Nodes. This is automatic from Blender 5.0!
b) Create a Render Layer node for each of your render layers, select the layer name in the dropdown. This ensures that Blender includes each layer in the pipeline.
c) Create Alpha Over nodes to combine your layers, starting at the back (Sky layer, Background layer).
d) Create another Alpha Over node and combine the next set of two render layers.
d) Create another Alpha Over node and combine the next set of two render layers.
e) Combine the outputs into another Alpha Over, get the ordering right so the back stuff goes into the background channel. Through this process, you should end up with an Alpha Over node that contains all scene layers; this will output to the Group Output and optionally, the Viewer.
![]() |
| All the layers together |
When you render from the compositor, Blender renders each layer in order and builds the output according to your compositor node tree.
Viewed Separately:
Viewed Separately:
![]() |
| Sky layer |
![]() |
| Background Layer (White area is transparent space) |
![]() |
| Midground |
![]() |
| Foreground |
![]() |
| All combined in the output |









No comments:
Post a Comment