Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonioya <blendergit@gmail.com>2018-11-26 20:12:39 +0300
committerAntonioya <blendergit@gmail.com>2018-11-26 20:12:39 +0300
commit99f7934e19ddf6796e866d2ddc0c3882ed8fcc2b (patch)
tree45e39dc690fd17f989bceac35e8ecf794417af34 /source/blender/makesdna
parentc0816cd03b42399e75a285d5e5dd1319e5054f17 (diff)
GP: New Blend Layers functionality
Now it's possible define the blend mode between layers including the option to clamp the layer using underlying layers. Also a new Simplify option has been added to disable blend layers.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_gpencil_types.h15
-rw-r--r--source/blender/makesdna/DNA_scene_types.h4
2 files changed, 18 insertions, 1 deletions
diff --git a/source/blender/makesdna/DNA_gpencil_types.h b/source/blender/makesdna/DNA_gpencil_types.h
index 8a1bccc6957..cebdc4b29b9 100644
--- a/source/blender/makesdna/DNA_gpencil_types.h
+++ b/source/blender/makesdna/DNA_gpencil_types.h
@@ -269,6 +269,9 @@ typedef struct bGPDlayer {
float opacity; /* Opacity of the layer */
char viewlayername[64]; /* Name of the layer used to filter render output */
+ int blend_mode; /* blend modes */
+ char pad_[4];
+
bGPDlayer_Runtime runtime;
} bGPDlayer;
@@ -292,6 +295,8 @@ typedef enum eGPDlayer_Flag {
GP_LAYER_VOLUMETRIC = (1 << 10),
/* Unlock color */
GP_LAYER_UNLOCK_COLOR = (1 << 12),
+ /* Mask Layer */
+ GP_LAYER_USE_MASK = (1 << 13),
} eGPDlayer_Flag;
/* bGPDlayer->onion_flag */
@@ -300,6 +305,16 @@ typedef enum eGPDlayer_OnionFlag {
GP_LAYER_ONIONSKIN = (1 << 0),
} eGPDlayer_OnionFlag;
+/* layer blend_mode */
+typedef enum eGPLayerBlendModes {
+ eGplBlendMode_Normal = 0,
+ eGplBlendMode_Overlay = 1,
+ eGplBlendMode_Add = 2,
+ eGplBlendMode_Subtract = 3,
+ eGplBlendMode_Multiply = 4,
+ eGplBlendMode_Divide = 5,
+} eGPLayerBlendModes;
+
/* ***************************************** */
/* GP Datablock */
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 7ab4187de1a..e2cfd79ca93 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -2144,7 +2144,9 @@ typedef enum eGPencil_SimplifyFlags {
/* Remove fill external line */
SIMPLIFY_GPENCIL_REMOVE_FILL_LINE = (1 << 4),
/* Simplify Shader FX */
- SIMPLIFY_GPENCIL_FX = (1 << 5)
+ SIMPLIFY_GPENCIL_FX = (1 << 5),
+ /* Simplify layer blending */
+ SIMPLIFY_GPENCIL_BLEND = (1 << 6),
} eGPencil_SimplifyFlags;
/* ToolSettings.gpencil_*_align - Stroke Placement mode flags */