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:
Diffstat (limited to 'source/blender/makesdna/DNA_gpencil_modifier_types.h')
-rw-r--r--source/blender/makesdna/DNA_gpencil_modifier_types.h116
1 files changed, 101 insertions, 15 deletions
diff --git a/source/blender/makesdna/DNA_gpencil_modifier_types.h b/source/blender/makesdna/DNA_gpencil_modifier_types.h
index c3425826d36..125423cd061 100644
--- a/source/blender/makesdna/DNA_gpencil_modifier_types.h
+++ b/source/blender/makesdna/DNA_gpencil_modifier_types.h
@@ -47,6 +47,8 @@ typedef enum GpencilModifierType {
eGpencilModifierType_Armature = 15,
eGpencilModifierType_Time = 16,
eGpencilModifierType_Multiply = 17,
+ eGpencilModifierType_Texture = 18,
+ /* Keep last. */
NUM_GREASEPENCIL_MODIFIER_TYPES,
} GpencilModifierType;
@@ -77,10 +79,12 @@ typedef struct GpencilModifierData {
typedef struct NoiseGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -120,10 +124,12 @@ typedef enum eNoiseGpencil_Flag {
typedef struct SubdivGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -151,10 +157,12 @@ typedef enum eSubdivGpencil_Type {
typedef struct ThickGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -225,10 +233,12 @@ typedef enum eOpacityModesGpencil_Flag {
typedef struct ColorGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -255,10 +265,12 @@ typedef enum eColorGpencil_Flag {
typedef struct OpacityGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -290,6 +302,8 @@ typedef enum eOpacityGpencil_Flag {
typedef struct ArrayGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Number of elements in array. */
int count;
/** Several flags. */
@@ -313,7 +327,7 @@ typedef struct ArrayGpencilModifierData {
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Material replace (0 keep default). */
int mat_rpl;
/** Custom index for passes. */
@@ -332,13 +346,15 @@ typedef enum eArrayGpencil_Flag {
typedef struct BuildGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** If set, restrict modifier to operating on this layer. */
char layername[64];
int pass_index;
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int layer_pass;
@@ -368,6 +384,9 @@ typedef struct BuildGpencilModifierData {
* For the "Concurrent" mode, when should "shorter" strips start/end.
*/
short time_alignment;
+ /** Factor of the stroke (used instead of frame evaluation. */
+ float percentage_fac;
+ char _pad[4];
} BuildGpencilModifierData;
typedef enum eBuildGpencil_Mode {
@@ -403,15 +422,20 @@ typedef enum eBuildGpencil_Flag {
/* Restrict modifier to only operating between the nominated frames */
GP_BUILD_RESTRICT_TIME = (1 << 2),
GP_BUILD_INVERT_LAYERPASS = (1 << 3),
+
+ /* Use a percentage instead of frame number to evaluate strokes. */
+ GP_BUILD_PERCENTAGE = (1 << 4),
} eBuildGpencil_Flag;
typedef struct LatticeGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -436,10 +460,12 @@ typedef enum eLatticeGpencil_Flag {
typedef struct MirrorGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -464,12 +490,14 @@ typedef struct HookGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Optional name of bone target, MAX_ID_NAME-2. */
char subtarget[64];
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -515,10 +543,12 @@ typedef enum eHookGpencil_Falloff {
typedef struct SimplifyGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -558,10 +588,12 @@ typedef enum eSimplifyGpencil_Mode {
typedef struct OffsetGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -585,10 +617,12 @@ typedef enum eOffsetGpencil_Flag {
typedef struct SmoothGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -634,10 +668,12 @@ typedef struct ArmatureGpencilModifierData {
typedef struct MultiplyGpencilModifierData {
GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Custom index for passes. */
int pass_index;
/** Flags. */
@@ -672,10 +708,12 @@ typedef struct TintGpencilModifierData {
GpencilModifierData modifier;
struct Object *object;
+ /** Material for filtering. */
+ struct Material *material;
/** Layer name. */
char layername[64];
/** Material name. */
- char materialname[64];
+ char materialname[64] DNA_DEPRECATED;
/** Optional vertexgroup name, MAX_VGROUP_NAME. */
char vgname[64];
/** Custom index for passes. */
@@ -713,4 +751,52 @@ typedef enum eTintGpencil_Flag {
GP_TINT_CUSTOM_CURVE = (1 << 6),
} eTintGpencil_Flag;
+typedef struct TextureGpencilModifierData {
+ GpencilModifierData modifier;
+ /** Material for filtering. */
+ struct Material *material;
+ /** Layer name. */
+ char layername[64];
+ /** Material name. */
+ char materialname[64] DNA_DEPRECATED;
+ /** Optional vertexgroup name, MAX_VGROUP_NAME. */
+ char vgname[64];
+ /** Custom index for passes. */
+ int pass_index;
+ /** Flags. */
+ int flag;
+ /** Offset value to add to uv_fac. */
+ float uv_offset;
+ float uv_scale;
+ float fill_rotation;
+ float fill_offset[2];
+ float fill_scale;
+ /** Custom index for passes. */
+ int layer_pass;
+ /** Texture fit options. */
+ short fit_method;
+ short mode;
+} TextureGpencilModifierData;
+
+typedef enum eTextureGpencil_Flag {
+ GP_TEX_INVERT_LAYER = (1 << 0),
+ GP_TEX_INVERT_PASS = (1 << 1),
+ GP_TEX_INVERT_VGROUP = (1 << 2),
+ GP_TEX_INVERT_LAYERPASS = (1 << 3),
+ GP_TEX_INVERT_MATERIAL = (1 << 4),
+} eTextureGpencil_Flag;
+
+/* Texture->fit_method */
+typedef enum eTextureGpencil_Fit {
+ GP_TEX_FIT_STROKE = 0,
+ GP_TEX_CONSTANT_LENGTH = 1,
+} eTextureGpencil_Fit;
+
+/* Texture->mode */
+typedef enum eTextureGpencil_Mode {
+ STROKE = 0,
+ FILL = 1,
+ STROKE_AND_FILL = 2,
+} eTextureGpencil_Mode;
+
#endif /* __DNA_GPENCIL_MODIFIER_TYPES_H__ */