Introduction - layer system internals

BPainters layer system for cycles is quite powerfull. It offers a rich range of functionality thanks to cycles underlying material node system. So everything that is displayed in the layer docker is based and calculated by the node system in the background. Basically you could do everything by hand in the node editor. But this would be of course a lot more time consuming and not as intuitive as just using the layer docker.

The layersystem is build that way to give you an intuitive and efficient way to organize a complex node setup. It generates all needed nodes and wires everything up in the background, and the final node setup is stored in a node group for a clean way to use. We call that node group Paint Channel. A paint channel can be used as any other node with a color output. You can plug this into your shader as a diffuse color, a roughness value, or a bump value. This is completely up to the user.

The paint channel is not meant to be edited within the group itself. Since everything in that group is generated by BPainter. Manipulating the structure within that group may cause errors.

A paint channel can contain information such as:

  • image texture
  • procedural texture
  • adjustment layer
  • blend mode
  • opacity
  • visibility
  • layer mask

All this data is displayed in a clean way in the layer docker.

layer nodes

Function Overview

  • new layer add layer - creates a simple paint layer
  • adjustment layer add adjustment layer - creates a layer that manipulates all underlying layers. There are 3 different types
    • RGB Curves
    • Hue
    • Invert
  • procedural texture add procedural texture - creates procedural texture that can be customized via a set of parameters
  • mask layer add layer mask - creates a mask for a layer. Defines the visible areas of that layer
  • merge layer merge layer - This is a bake operator. It lets you combine multiple layers into one.
  • move up down up/down - Move layers up and down in the layerstack. This will define the draw order
  • delete layer delete layer - Delete the selected layer

cycles layer docker

Working with Masks

You can add a mask to any layer, be it a paint, adjustment or procedural layer. The mask defines what area of that layer is visible and what is transparent. There for the values from 0 to 1 are used and interpreted as transparency values. You can use existing images as mask, or generate new ones. If you want to paint on a mask, just press on the Layer Mask in the layer stack. A red bar next to it will indicate, that the mask is selected and ready to be painted on. You can preview the mask, by pressing the Unshaded View Operator.

If you want to disable a mask, just SHIFT+Click on the Mask Layer. It will show if its active or inactive by its blue or grey bar right to it. Inverting the mask can be done by CTRL+Click on the Mask Layer.

Deleting a mask can be simply done by selecting it and then press the Delete Layer Operator.