Effects are post-processing nodes available in Vizzy and applicable to every Layer or even the entire composition.
How it works
Effects are typically coded in GLSL or use Three.js for more advanced graphics processing. They are objects like anything else in Vizzy and define their own parameters that are exposed to you. An effect is given an input texture - the Layer it is applied to, plus all other effects that come before in the effect chain. It is expected to produce an output texture that is similar to the input but manipulated.
If an effect expects another texture, it is exposed as a layer selection property. Such a layer must be rendered to a buffer for the effect to receive the texture!
Known issues
There are some known issues due to how complex post-processing pipelines can get.
Alpha bug
Some effects will cause a confusion between dark colors and transparency, effectively creating unintended blending. You can sometimes remedy this by adding another effect on top - many advanced users choose to add the Crop effect and set all of its values to 0
Duplicate bug
Sometimes, especially in heavier projects, when adding an effect it might get added twice. IMPORTANT: Manually delete one of the effects. Do not reorder it! If you do not do that, there is a high likelihood that your project will break on the next load.