Skip to content

Deep Masking

charlesangus edited this page Dec 29, 2018 · 1 revision

At the core of the DeepC toolkit is the concept of masking. DeepC brings two kinds of masking to Deep operations - flat and Deep.

Flat Masks

Flat (non-Deep) masks work on DeepC much as they do on normal non-Deep nodes. Connect something to the right-hand input of the node, select the correct channel, and the output of the node is mixed with the input based on the value of the selected channel.

Because the mask is flat, there is one value per pixel, and the same mask value is applied to all of the Deep samples in the pixel.

Deep Masks

Deep Masks are new to DeepC.

Deep samples can exists at any point in space. It's not really meaningful to have a mask value on a sample which is not at the same depth as another sample. Because of this, DeepC has made the design choice to force Deep masks to come in the B-stream, rather than allowing a separate input for them. This ensures there is always a 1:1 correspondence between mask samples and samples being processed by the node - they are, after all, the same exact samples.

Deep masks are multiplied with the flat mask inputs on the node before being applied. Essentially, the Deep and Flat masks each mask the other.