GPencil: Replace material name with material pointer for Modifiers filter
Before, the material name was used to filter the effect of the stroke, but after the last changes in the ID code, now it's not working. After talking with @severin, we agreed to replace the material name with a pointer. Also, this fix a design issue when the materials were linked. Related to T76594 Differential Revision: https://developer.blender.org/D7681 with some minor changes
This commit is contained in:
parent
870e081bcd
commit
d63956d0e5
|
@ -1855,7 +1855,6 @@ class DATA_PT_gpencil_modifiers(ModifierButtonsPanel, Panel):
|
|||
# the mt.type enum is (ab)used for a lookup on function names
|
||||
# ...to avoid lengthy if statements
|
||||
# so each type must have a function here.
|
||||
|
||||
def gpencil_masking(self, layout, ob, md, use_vertex, use_curve=False):
|
||||
gpd = ob.data
|
||||
layout.separator()
|
||||
|
@ -1884,7 +1883,15 @@ class DATA_PT_gpencil_modifiers(ModifierButtonsPanel, Panel):
|
|||
split = col2.split(factor=0.6)
|
||||
|
||||
row = split.row(align=True)
|
||||
row.prop_search(md, "material", gpd, "materials", text="", icon='SHADING_TEXTURE')
|
||||
|
||||
valid = md.material in (slot.material for slot in ob.material_slots) or md.material is None
|
||||
if valid:
|
||||
icon = 'SHADING_TEXTURE'
|
||||
else:
|
||||
icon = 'ERROR'
|
||||
|
||||
row.alert = not valid
|
||||
row.prop_search(md, "material", gpd, "materials", text="", icon=icon)
|
||||
row.prop(md, "invert_materials", text="", icon='ARROW_LEFTRIGHT')
|
||||
|
||||
row = split.row(align=True)
|
||||
|
|
|
@ -1750,6 +1750,144 @@ void do_versions_after_linking_280(Main *bmain, ReportList *UNUSED(reports))
|
|||
}
|
||||
}
|
||||
|
||||
if (!MAIN_VERSION_ATLEAST(bmain, 290, 0)) {
|
||||
/* Patch old grease pencil modifiers material filter. */
|
||||
LISTBASE_FOREACH (Object *, ob, &bmain->objects) {
|
||||
LISTBASE_FOREACH (GpencilModifierData *, md, &ob->greasepencil_modifiers) {
|
||||
switch (md->type) {
|
||||
case eGpencilModifierType_Array: {
|
||||
ArrayGpencilModifierData *gpmd = (ArrayGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Color: {
|
||||
ColorGpencilModifierData *gpmd = (ColorGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Hook: {
|
||||
HookGpencilModifierData *gpmd = (HookGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Lattice: {
|
||||
LatticeGpencilModifierData *gpmd = (LatticeGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Mirror: {
|
||||
MirrorGpencilModifierData *gpmd = (MirrorGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Multiply: {
|
||||
MultiplyGpencilModifierData *gpmd = (MultiplyGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Noise: {
|
||||
NoiseGpencilModifierData *gpmd = (NoiseGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Offset: {
|
||||
OffsetGpencilModifierData *gpmd = (OffsetGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Opacity: {
|
||||
OpacityGpencilModifierData *gpmd = (OpacityGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Simplify: {
|
||||
SimplifyGpencilModifierData *gpmd = (SimplifyGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Smooth: {
|
||||
SmoothGpencilModifierData *gpmd = (SmoothGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Subdiv: {
|
||||
SubdivGpencilModifierData *gpmd = (SubdivGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Texture: {
|
||||
TextureGpencilModifierData *gpmd = (TextureGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
case eGpencilModifierType_Thick: {
|
||||
ThickGpencilModifierData *gpmd = (ThickGpencilModifierData *)md;
|
||||
if (gpmd->materialname[0] != '\0') {
|
||||
gpmd->material = BLI_findstring(
|
||||
&bmain->materials, gpmd->materialname, offsetof(ID, name) + 2);
|
||||
gpmd->materialname[0] = '\0';
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Versioning code until next subversion bump goes here.
|
||||
*
|
||||
|
|
|
@ -79,7 +79,7 @@ void gpencil_modifier_type_init(GpencilModifierTypeInfo *types[])
|
|||
/* verify if valid layer, material and pass index */
|
||||
bool is_stroke_affected_by_modifier(Object *ob,
|
||||
char *mlayername,
|
||||
char *mmaterialname,
|
||||
Material *material,
|
||||
const int mpassindex,
|
||||
const int gpl_passindex,
|
||||
const int minpoints,
|
||||
|
@ -106,15 +106,15 @@ bool is_stroke_affected_by_modifier(Object *ob,
|
|||
}
|
||||
}
|
||||
}
|
||||
/* omit if filter by material */
|
||||
if (mmaterialname[0] != '\0') {
|
||||
/* Omit if filter by material. */
|
||||
if (material != NULL) {
|
||||
if (inv4 == false) {
|
||||
if (!STREQ(mmaterialname, ma->id.name + 2)) {
|
||||
if (material != ma) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (STREQ(mmaterialname, ma->id.name + 2)) {
|
||||
if (material == ma) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ struct bGPDstroke;
|
|||
|
||||
bool is_stroke_affected_by_modifier(struct Object *ob,
|
||||
char *mlayername,
|
||||
char *mmaterialname,
|
||||
struct Material *material,
|
||||
const int mpassindex,
|
||||
const int gpl_passindex,
|
||||
const int minpoints,
|
||||
|
|
|
@ -77,6 +77,8 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->object = NULL;
|
||||
gpmd->flag |= GP_ARRAY_USE_RELATIVE;
|
||||
gpmd->seed = 1;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
}
|
||||
|
||||
static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
|
||||
|
@ -163,7 +165,7 @@ static void generate_geometry(GpencilModifierData *md,
|
|||
LISTBASE_FOREACH (bGPDstroke *, gps, &gpf->strokes) {
|
||||
if (is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -320,6 +322,15 @@ static void foreachObjectLink(GpencilModifierData *md,
|
|||
walk(userData, ob, &mmd->object, IDWALK_CB_NOP);
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
ArrayGpencilModifierData *mmd = (ArrayGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Array = {
|
||||
/* name */ "Array",
|
||||
/* structName */ "ArrayGpencilModifierData",
|
||||
|
@ -340,6 +351,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Array = {
|
|||
/* updateDepsgraph */ updateDepsgraph,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -37,8 +37,10 @@
|
|||
#include "BKE_colortools.h"
|
||||
#include "BKE_gpencil.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_main.h"
|
||||
#include "BKE_material.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -51,7 +53,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->pass_index = 0;
|
||||
ARRAY_SET_ITEMS(gpmd->hsv, 0.5f, 1.0f, 1.0f);
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->modify_color = GP_MODIFY_COLOR_BOTH;
|
||||
|
||||
gpmd->curve_intensity = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
|
@ -91,7 +93,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -178,6 +180,13 @@ static void freeData(GpencilModifierData *md)
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
ColorGpencilModifierData *mmd = (ColorGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Color = {
|
||||
/* name */ "Hue/Saturation",
|
||||
/* structName */ "ColorGpencilModifierData",
|
||||
|
@ -198,6 +207,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Color = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -78,7 +78,7 @@ static void initData(GpencilModifierData *md)
|
|||
HookGpencilModifierData *gpmd = (HookGpencilModifierData *)md;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->object = NULL;
|
||||
gpmd->force = 0.5f;
|
||||
|
@ -208,7 +208,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -338,6 +338,15 @@ static void foreachObjectLink(GpencilModifierData *md,
|
|||
walk(userData, ob, &mmd->object, IDWALK_CB_NOP);
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
HookGpencilModifierData *mmd = (HookGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Hook = {
|
||||
/* name */ "Hook",
|
||||
/* structName */ "HookGpencilModifierData",
|
||||
|
@ -358,6 +367,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Hook = {
|
|||
/* updateDepsgraph */ updateDepsgraph,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -56,7 +56,7 @@ static void initData(GpencilModifierData *md)
|
|||
LatticeGpencilModifierData *gpmd = (LatticeGpencilModifierData *)md;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->object = NULL;
|
||||
gpmd->cache_data = NULL;
|
||||
|
@ -80,7 +80,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -200,6 +200,15 @@ static void foreachObjectLink(GpencilModifierData *md,
|
|||
walk(userData, ob, &mmd->object, IDWALK_CB_NOP);
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
LatticeGpencilModifierData *mmd = (LatticeGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Lattice = {
|
||||
/* name */ "Lattice",
|
||||
/* structName */ "LatticeGpencilModifierData",
|
||||
|
@ -220,6 +229,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Lattice = {
|
|||
/* updateDepsgraph */ updateDepsgraph,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -57,7 +57,7 @@ static void initData(GpencilModifierData *md)
|
|||
MirrorGpencilModifierData *gpmd = (MirrorGpencilModifierData *)md;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->object = NULL;
|
||||
gpmd->flag |= GP_MIRROR_AXIS_X;
|
||||
}
|
||||
|
@ -130,7 +130,7 @@ static void generate_geometry(GpencilModifierData *md, Object *ob, bGPDlayer *gp
|
|||
for (i = 0, gps = gpf->strokes.first; i < tot_strokes; i++, gps = gps->next) {
|
||||
if (is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -213,6 +213,15 @@ static void foreachObjectLink(GpencilModifierData *md,
|
|||
walk(userData, ob, &mmd->object, IDWALK_CB_NOP);
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
MirrorGpencilModifierData *mmd = (MirrorGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Mirror = {
|
||||
/* name */ "Mirror",
|
||||
/* structName */ "MirrorGpencilModifierData",
|
||||
|
@ -233,6 +242,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Mirror = {
|
|||
/* updateDepsgraph */ updateDepsgraph,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -71,6 +71,8 @@ static void initData(GpencilModifierData *md)
|
|||
mmd->fading_center = 0.5f;
|
||||
mmd->fading_thickness = 0.5f;
|
||||
mmd->fading_opacity = 0.5f;
|
||||
mmd->layername[0] = '\0';
|
||||
mmd->material = NULL;
|
||||
}
|
||||
|
||||
static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
|
||||
|
@ -211,7 +213,7 @@ static void bakeModifier(Main *UNUSED(bmain),
|
|||
for (gps = gpf->strokes.first; gps; gps = gps->next) {
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -252,7 +254,7 @@ static void generate_geometry(GpencilModifierData *md, Object *ob, bGPDlayer *gp
|
|||
for (gps = gpf->strokes.first; gps; gps = gps->next) {
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -297,6 +299,13 @@ static void generateStrokes(GpencilModifierData *md, Depsgraph *depsgraph, Objec
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
MultiplyGpencilModifierData *mmd = (MultiplyGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Multiply = {
|
||||
/* name */ "Multiple Strokes",
|
||||
/* structName */ "MultiplyGpencilModifierData",
|
||||
|
@ -317,6 +326,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Multiply = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -44,6 +44,8 @@
|
|||
#include "BKE_gpencil.h"
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
#include "BKE_object.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
@ -60,7 +62,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->flag |= GP_NOISE_USE_RANDOM;
|
||||
gpmd->factor = 0.5f;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->step = 4;
|
||||
gpmd->seed = 1;
|
||||
|
@ -135,7 +137,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -259,6 +261,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
NoiseGpencilModifierData *mmd = (NoiseGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Noise = {
|
||||
/* name */ "Noise",
|
||||
/* structName */ "NoiseGpencilModifierData",
|
||||
|
@ -279,6 +288,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Noise = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ dependsOnTime,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -38,6 +38,8 @@
|
|||
#include "BKE_deform.h"
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -49,7 +51,7 @@ static void initData(GpencilModifierData *md)
|
|||
OffsetGpencilModifierData *gpmd = (OffsetGpencilModifierData *)md;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
ARRAY_SET_ITEMS(gpmd->loc, 0.0f, 0.0f, 0.0f);
|
||||
ARRAY_SET_ITEMS(gpmd->rot, 0.0f, 0.0f, 0.0f);
|
||||
|
@ -77,7 +79,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -129,6 +131,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
OffsetGpencilModifierData *mmd = (OffsetGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Offset = {
|
||||
/* name */ "Offset",
|
||||
/* structName */ "OffsetGpencilModifierData",
|
||||
|
@ -149,6 +158,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Offset = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -38,8 +38,10 @@
|
|||
#include "BKE_deform.h"
|
||||
#include "BKE_gpencil.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_main.h"
|
||||
#include "BKE_material.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -53,7 +55,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->factor = 1.0f;
|
||||
gpmd->hardeness = 1.0f;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->modify_color = GP_MODIFY_COLOR_BOTH;
|
||||
gpmd->curve_intensity = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
|
@ -92,7 +94,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -189,6 +191,13 @@ static void freeData(GpencilModifierData *md)
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
OpacityGpencilModifierData *mmd = (OpacityGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Opacity = {
|
||||
/* name */ "Opacity",
|
||||
/* structName */ "OpacityGpencilModifierData",
|
||||
|
@ -209,6 +218,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Opacity = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -49,7 +51,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->length = 0.1f;
|
||||
gpmd->distance = 0.1f;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
}
|
||||
|
||||
static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
|
||||
|
@ -68,7 +70,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
mmd->mode == GP_SIMPLIFY_SAMPLE ? 3 : 4,
|
||||
|
@ -123,6 +125,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
SimplifyGpencilModifierData *mmd = (SimplifyGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Simplify = {
|
||||
/* name */ "Simplify",
|
||||
/* structName */ "SimplifyGpencilModifierData",
|
||||
|
@ -143,6 +152,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Simplify = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -35,6 +35,8 @@
|
|||
#include "BKE_deform.h"
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -48,7 +50,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->flag |= GP_SMOOTH_MOD_LOCATION;
|
||||
gpmd->factor = 0.5f;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->step = 1;
|
||||
|
||||
|
@ -88,7 +90,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
3,
|
||||
|
@ -167,6 +169,13 @@ static void freeData(GpencilModifierData *md)
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
SmoothGpencilModifierData *mmd = (SmoothGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Smooth = {
|
||||
/* name */ "Smooth",
|
||||
/* structName */ "SmoothGpencilModifierData",
|
||||
|
@ -187,6 +196,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Smooth = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -36,6 +36,8 @@
|
|||
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -48,7 +50,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->pass_index = 0;
|
||||
gpmd->level = 1;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
}
|
||||
|
||||
static void copyData(const GpencilModifierData *md, GpencilModifierData *target)
|
||||
|
@ -72,7 +74,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
minimum_vert,
|
||||
|
@ -104,6 +106,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
SubdivGpencilModifierData *mmd = (SubdivGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Subdiv = {
|
||||
/* name */ "Subdivide",
|
||||
/* structName */ "SubdivGpencilModifierData",
|
||||
|
@ -124,6 +133,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Subdiv = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -38,6 +38,8 @@
|
|||
#include "BKE_gpencil.h"
|
||||
#include "BKE_gpencil_geom.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -56,7 +58,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->uv_scale = 1.0f;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
}
|
||||
|
||||
|
@ -78,7 +80,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -140,6 +142,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
TextureGpencilModifierData *mmd = (TextureGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Texture = {
|
||||
/* name */ "Texture Mapping",
|
||||
/* structName */ "TextureGpencilModifierData",
|
||||
|
@ -160,6 +169,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Texture = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -37,6 +37,8 @@
|
|||
#include "BKE_deform.h"
|
||||
#include "BKE_gpencil.h"
|
||||
#include "BKE_gpencil_modifier.h"
|
||||
#include "BKE_lib_query.h"
|
||||
#include "BKE_modifier.h"
|
||||
|
||||
#include "DEG_depsgraph.h"
|
||||
|
||||
|
@ -50,7 +52,7 @@ static void initData(GpencilModifierData *md)
|
|||
gpmd->thickness_fac = 1.0f;
|
||||
gpmd->thickness = 30;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->curve_thickness = BKE_curvemapping_add(1, 0.0f, 0.0f, 1.0f, 1.0f);
|
||||
if (gpmd->curve_thickness) {
|
||||
|
@ -95,7 +97,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -159,6 +161,13 @@ static void bakeModifier(struct Main *UNUSED(bmain),
|
|||
}
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
ThickGpencilModifierData *mmd = (ThickGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Thick = {
|
||||
/* name */ "Thickness",
|
||||
/* structName */ "ThickGpencilModifierData",
|
||||
|
@ -179,6 +188,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Thick = {
|
|||
/* updateDepsgraph */ NULL,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ NULL,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -62,7 +62,7 @@ static void initData(GpencilModifierData *md)
|
|||
TintGpencilModifierData *gpmd = (TintGpencilModifierData *)md;
|
||||
gpmd->pass_index = 0;
|
||||
gpmd->layername[0] = '\0';
|
||||
gpmd->materialname[0] = '\0';
|
||||
gpmd->material = NULL;
|
||||
gpmd->vgname[0] = '\0';
|
||||
gpmd->object = NULL;
|
||||
gpmd->radius = 1.0f;
|
||||
|
@ -130,7 +130,7 @@ static void deformStroke(GpencilModifierData *md,
|
|||
|
||||
if (!is_stroke_affected_by_modifier(ob,
|
||||
mmd->layername,
|
||||
mmd->materialname,
|
||||
mmd->material,
|
||||
mmd->pass_index,
|
||||
mmd->layer_pass,
|
||||
1,
|
||||
|
@ -323,6 +323,15 @@ static void foreachObjectLink(GpencilModifierData *md,
|
|||
walk(userData, ob, &mmd->object, IDWALK_CB_NOP);
|
||||
}
|
||||
|
||||
static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData)
|
||||
{
|
||||
TintGpencilModifierData *mmd = (TintGpencilModifierData *)md;
|
||||
|
||||
walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER);
|
||||
|
||||
foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData);
|
||||
}
|
||||
|
||||
GpencilModifierTypeInfo modifierType_Gpencil_Tint = {
|
||||
/* name */ "Tint",
|
||||
/* structName */ "TintGpencilModifierData",
|
||||
|
@ -343,6 +352,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Tint = {
|
|||
/* updateDepsgraph */ updateDepsgraph,
|
||||
/* dependsOnTime */ NULL,
|
||||
/* foreachObjectLink */ foreachObjectLink,
|
||||
/* foreachIDLink */ NULL,
|
||||
/* foreachIDLink */ foreachIDLink,
|
||||
/* foreachTexLink */ NULL,
|
||||
};
|
||||
|
|
|
@ -79,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. */
|
||||
|
@ -122,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. */
|
||||
|
@ -153,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. */
|
||||
|
@ -227,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. */
|
||||
|
@ -257,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. */
|
||||
|
@ -292,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. */
|
||||
|
@ -315,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. */
|
||||
|
@ -334,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;
|
||||
|
@ -416,10 +430,12 @@ typedef enum 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. */
|
||||
|
@ -444,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. */
|
||||
|
@ -472,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. */
|
||||
|
@ -523,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. */
|
||||
|
@ -566,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. */
|
||||
|
@ -593,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. */
|
||||
|
@ -642,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. */
|
||||
|
@ -680,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. */
|
||||
|
@ -723,10 +753,12 @@ typedef enum eTintGpencil_Flag {
|
|||
|
||||
typedef struct TextureGpencilModifierData {
|
||||
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. */
|
||||
|
|
|
@ -442,9 +442,10 @@ static void rna_def_modifier_gpencilnoise(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -571,9 +572,10 @@ static void rna_def_modifier_gpencilsmooth(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -683,9 +685,10 @@ static void rna_def_modifier_gpencilsubdiv(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "level", PROP_INT, PROP_NONE);
|
||||
|
@ -772,9 +775,10 @@ static void rna_def_modifier_gpencilsimplify(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "factor", PROP_FLOAT, PROP_FACTOR);
|
||||
|
@ -860,9 +864,10 @@ static void rna_def_modifier_gpencilthick(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -954,9 +959,10 @@ static void rna_def_modifier_gpenciloffset(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -1051,9 +1057,10 @@ static void rna_def_modifier_gpenciltint(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -1256,9 +1263,10 @@ static void rna_def_modifier_gpencilcolor(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "hue", PROP_FLOAT, PROP_NONE);
|
||||
|
@ -1349,9 +1357,10 @@ static void rna_def_modifier_gpencilopacity(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -1445,9 +1454,10 @@ static void rna_def_modifier_gpencilarray(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "pass_index", PROP_INT, PROP_NONE);
|
||||
|
@ -1737,9 +1747,10 @@ static void rna_def_modifier_gpencillattice(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -1816,9 +1827,10 @@ static void rna_def_modifier_gpencilmirror(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "pass_index", PROP_INT, PROP_NONE);
|
||||
|
@ -1913,9 +1925,10 @@ static void rna_def_modifier_gpencilhook(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "vertex_group", PROP_STRING, PROP_NONE);
|
||||
|
@ -2069,9 +2082,10 @@ static void rna_def_modifier_gpencilmultiply(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Layer", "Layer name");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "pass_index", PROP_INT, PROP_NONE);
|
||||
|
@ -2206,9 +2220,10 @@ static void rna_def_modifier_gpenciltexture(BlenderRNA *brna)
|
|||
RNA_def_property_ui_text(prop, "Inverse Layers", "Inverse filter");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "material", PROP_STRING, PROP_NONE);
|
||||
RNA_def_property_string_sdna(prop, NULL, "materialname");
|
||||
RNA_def_property_ui_text(prop, "Material", "Material name");
|
||||
prop = RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
|
||||
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
|
||||
RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY);
|
||||
RNA_def_property_ui_text(prop, "Material", "Material used for filtering effect");
|
||||
RNA_def_property_update(prop, 0, "rna_GpencilModifier_update");
|
||||
|
||||
prop = RNA_def_property(srna, "invert_materials", PROP_BOOLEAN, PROP_NONE);
|
||||
|
|
Loading…
Reference in New Issue