Blender Git Commit Log

Git Commits -> Revision 170680b

December 13, 2019, 18:40 (GMT)
GPencil: Refactor: Add support for layer blending

This break the compatibility of old blend files as the old implementation
was done incorrectly.

With new implementation, the layer blending can affect multiple object
and in certain case affect even the rendered background. Old implementation
was only affecting the layers beneath, not other objects.

This implementation is also ready to support vfx on top.

Some blend modes (divide and subtract) have some limitations. They cannot
be propagated to other objects. This is because we would need to use
signed float buffers everywhere (for background render) so that fixed
function blending does not clamp the blending values.

Commit Details:

Full Hash: 170680b5448aabf2aa67258258ef88c998a8046d
Parent Commit: 18c4fcb
Lines Changed: +228, -33

1 Added Path:

/source/blender/draw/engines/gpencil/shaders/gpencil_layer_blend_frag.glsl (+82, -0) (View)

7 Modified Paths:

/source/blender/draw/CMakeLists.txt (+1, -0) (Diff)
/source/blender/draw/engines/gpencil/gpencil_cache_utils.c (+64, -9) (Diff)
/source/blender/draw/engines/gpencil/gpencil_engine.c (+49, -16) (Diff)
/source/blender/draw/engines/gpencil/gpencil_engine.h (+13, -3) (Diff)
/source/blender/draw/engines/gpencil/gpencil_shader.c (+10, -0) (Diff)
/source/blender/draw/engines/gpencil/shaders/gpencil_composite_frag.glsl (+3, -3) (Diff)
/source/blender/draw/engines/gpencil/shaders/gpencil_frag.glsl (+6, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021