54 "Change stroke uv texture values"},
58 ICON_MOD_VERTEX_WEIGHT,
59 "Vertex Weight Angle",
60 "Generate Vertex Weights base on stroke angle"},
62 "GP_WEIGHT_PROXIMITY",
63 ICON_MOD_VERTEX_WEIGHT,
64 "Vertex Weight Proximity",
65 "Generate Vertex Weights base on distance to object"},
72 "Create array of duplicate instances"},
77 "Create duplication of strokes"},
82 "Generate dot-dash styled strokes"},
87 "Create an envelope shape"},
92 "Extend or shrink strokes"},
97 "Generate line art strokes from selected source"},
102 "Duplicate strokes like a mirror"},
105 ICON_GP_MULTIFRAME_EDITING,
107 "Produce multiple strokes along one stroke"},
112 "Simplify stroke reducing number of points"},
117 "Subdivide stroke adding more control points"},
123 "Deform stroke points using armature object"},
128 "Deform stroke points using objects"},
133 "Deform strokes using lattice"},
139 "Change stroke location, rotation or scale"},
144 "Project the shape onto another object"},
150 "Change stroke thickness"},
154 ICON_MOD_HUE_SATURATION,
156 "Apply changes to stroke colors"},
161 "Opacity of the strokes"},
196 {
GP_TIME_MODE_NORMAL,
"NORMAL", 0,
"Regular",
"Apply offset in usual animation direction"},
198 {
GP_TIME_MODE_FIX,
"FIX", 0,
"Fixed Frame",
"Keep frame and do not change with time"},
214 {
GP_LENGTH_RELATIVE,
"RELATIVE", 0,
"Relative",
"Length in ratio to the stroke's length"},
224 "Deform the stroke to best match the envelope shape"},
229 "Add segments to create the envelope. Keep the original stroke"},
234 "Add fill segments to create the envelope. Don't keep the original stroke"},
266 return &RNA_NoiseGpencilModifier;
268 return &RNA_SubdivGpencilModifier;
270 return &RNA_SimplifyGpencilModifier;
272 return &RNA_ThickGpencilModifier;
274 return &RNA_TintGpencilModifier;
276 return &RNA_TimeGpencilModifier;
278 return &RNA_WeightProxGpencilModifier;
280 return &RNA_WeightAngleGpencilModifier;
282 return &RNA_ColorGpencilModifier;
284 return &RNA_ArrayGpencilModifier;
286 return &RNA_BuildGpencilModifier;
288 return &RNA_OpacityGpencilModifier;
290 return &RNA_LatticeGpencilModifier;
292 return &RNA_LengthGpencilModifier;
294 return &RNA_MirrorGpencilModifier;
296 return &RNA_ShrinkwrapGpencilModifier;
298 return &RNA_SmoothGpencilModifier;
300 return &RNA_HookGpencilModifier;
302 return &RNA_OffsetGpencilModifier;
304 return &RNA_ArmatureGpencilModifier;
306 return &RNA_MultiplyGpencilModifier;
308 return &RNA_TextureGpencilModifier;
310 return &RNA_LineartGpencilModifier;
312 return &RNA_DashGpencilModifierData;
314 return &RNA_EnvelopeGpencilModifier;
318 return &RNA_GpencilModifier;
321 return &RNA_GpencilModifier;
324 static void rna_GpencilModifier_name_set(
PointerRNA *
ptr,
const char *value)
327 char oldname[
sizeof(gmd->
name)];
348 char name_esc[
sizeof(gmd->
name) * 2];
351 return BLI_sprintfN(
"grease_pencil_modifiers[\"%s\"]", name_esc);
362 rna_GpencilModifier_update(bmain,
scene,
ptr);
368 # define RNA_GP_MOD_VGROUP_NAME_SET(_type, _prop) \
369 static void rna_##_type##GpencilModifier_##_prop##_set(PointerRNA *ptr, const char *value) \
371 _type##GpencilModifierData *tmd = (_type##GpencilModifierData *)ptr->data; \
372 rna_object_vgroup_name_set(ptr, value, tmd->_prop, sizeof(tmd->_prop)); \
375 RNA_GP_MOD_VGROUP_NAME_SET(
Noise, vgname);
376 RNA_GP_MOD_VGROUP_NAME_SET(Thick, vgname);
377 RNA_GP_MOD_VGROUP_NAME_SET(Opacity, vgname);
378 RNA_GP_MOD_VGROUP_NAME_SET(
Lattice, vgname);
379 RNA_GP_MOD_VGROUP_NAME_SET(Smooth, vgname);
380 RNA_GP_MOD_VGROUP_NAME_SET(Hook, vgname);
381 RNA_GP_MOD_VGROUP_NAME_SET(
Offset, vgname);
382 RNA_GP_MOD_VGROUP_NAME_SET(Armature, vgname);
383 RNA_GP_MOD_VGROUP_NAME_SET(
Texture, vgname);
384 RNA_GP_MOD_VGROUP_NAME_SET(Tint, vgname);
385 RNA_GP_MOD_VGROUP_NAME_SET(WeightProx, target_vgname);
386 RNA_GP_MOD_VGROUP_NAME_SET(WeightProx, vgname);
387 RNA_GP_MOD_VGROUP_NAME_SET(WeightAngle, target_vgname);
388 RNA_GP_MOD_VGROUP_NAME_SET(WeightAngle, vgname);
389 RNA_GP_MOD_VGROUP_NAME_SET(Lineart, vgname);
390 RNA_GP_MOD_VGROUP_NAME_SET(Shrinkwrap, vgname);
391 RNA_GP_MOD_VGROUP_NAME_SET(Envelope, vgname);
392 RNA_GP_MOD_VGROUP_NAME_SET(Build, target_vgname);
394 # undef RNA_GP_MOD_VGROUP_NAME_SET
398 static void greasepencil_modifier_object_set(
Object *
self,
405 if (!
self || ob !=
self) {
413 # define RNA_GP_MOD_OBJECT_SET(_type, _prop, _obtype) \
414 static void rna_##_type##GpencilModifier_##_prop##_set( \
415 PointerRNA *ptr, PointerRNA value, struct ReportList *UNUSED(reports)) \
417 _type##GpencilModifierData *tmd = (_type##GpencilModifierData *)ptr->data; \
418 greasepencil_modifier_object_set((Object *)ptr->owner_id, &tmd->_prop, _obtype, value); \
421 RNA_GP_MOD_OBJECT_SET(Armature,
object,
OB_ARMATURE);
423 RNA_GP_MOD_OBJECT_SET(Mirror,
object,
OB_EMPTY);
424 RNA_GP_MOD_OBJECT_SET(WeightProx,
object,
OB_EMPTY);
425 RNA_GP_MOD_OBJECT_SET(Shrinkwrap, target,
OB_MESH);
426 RNA_GP_MOD_OBJECT_SET(Shrinkwrap, aux_target,
OB_MESH);
427 RNA_GP_MOD_OBJECT_SET(Build,
object,
OB_EMPTY);
429 # undef RNA_GP_MOD_OBJECT_SET
431 static void rna_HookGpencilModifier_object_set(
PointerRNA *
ptr,
443 static void rna_TintGpencilModifier_object_set(
PointerRNA *
ptr,
454 static void rna_TimeModifier_start_frame_set(
PointerRNA *
ptr,
int value)
465 static void rna_TimeModifier_end_frame_set(
PointerRNA *
ptr,
int value)
476 static void rna_GpencilOpacity_range(
488 static void rna_GpencilOpacity_max_set(
PointerRNA *
ptr,
float value)
509 rna_GpencilModifier_update(bmain,
scene,
ptr);
520 static void rna_GpencilModifier_material_set(
PointerRNA *
ptr,
536 "Cannot assign material '%s', it has to be used by the grease pencil object already",
541 static void rna_LineartGpencilModifier_material_set(
PointerRNA *
ptr,
548 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
551 static void rna_NoiseGpencilModifier_material_set(
PointerRNA *
ptr,
558 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
561 static void rna_SmoothGpencilModifier_material_set(
PointerRNA *
ptr,
568 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
571 static void rna_SubdivGpencilModifier_material_set(
PointerRNA *
ptr,
578 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
581 static void rna_SimplifyGpencilModifier_material_set(
PointerRNA *
ptr,
588 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
591 static void rna_ThickGpencilModifier_material_set(
PointerRNA *
ptr,
598 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
601 static void rna_WeightProxGpencilModifier_material_set(
PointerRNA *
ptr,
608 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
611 static void rna_WeightAngleGpencilModifier_material_set(
PointerRNA *
ptr,
618 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
621 static void rna_OffsetGpencilModifier_material_set(
PointerRNA *
ptr,
628 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
631 static void rna_TintGpencilModifier_material_set(
PointerRNA *
ptr,
638 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
641 static void rna_ColorGpencilModifier_material_set(
PointerRNA *
ptr,
648 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
651 static void rna_ArrayGpencilModifier_material_set(
PointerRNA *
ptr,
658 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
661 static void rna_OpacityGpencilModifier_material_set(
PointerRNA *
ptr,
668 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
671 static void rna_LatticeGpencilModifier_material_set(
PointerRNA *
ptr,
678 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
681 static void rna_MirrorGpencilModifier_material_set(
PointerRNA *
ptr,
688 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
691 static void rna_HookGpencilModifier_material_set(
PointerRNA *
ptr,
698 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
701 static void rna_MultiplyGpencilModifier_material_set(
PointerRNA *
ptr,
708 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
711 static void rna_TextureGpencilModifier_material_set(
PointerRNA *
ptr,
718 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
721 static void rna_ShrinkwrapGpencilModifier_material_set(
PointerRNA *
ptr,
728 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
731 static void rna_Lineart_start_level_set(
PointerRNA *
ptr,
int value)
735 CLAMP(value, 0, 128);
740 static void rna_Lineart_end_level_set(
PointerRNA *
ptr,
int value)
744 CLAMP(value, 0, 128);
756 static char *rna_DashGpencilModifierSegment_path(
const PointerRNA *
ptr)
767 char ds_name_esc[
sizeof(ds->
name) * 2];
770 return BLI_sprintfN(
"grease_pencil_modifiers[\"%s\"].segments[\"%s\"]", name_esc, ds_name_esc);
784 static void rna_DashGpencilModifierSegment_name_set(
PointerRNA *
ptr,
const char *value)
788 char oldname[
sizeof(ds->
name)];
800 char prefix[36 +
sizeof(name_esc) + 1];
801 SNPRINTF(prefix,
"grease_pencil_modifiers[\"%s\"].segments", name_esc);
807 static int rna_ShrinkwrapGpencilModifier_face_cull_get(
PointerRNA *
ptr)
813 static void rna_ShrinkwrapGpencilModifier_face_cull_set(
struct PointerRNA *
ptr,
int value)
819 static void rna_EnvelopeGpencilModifier_material_set(
PointerRNA *
ptr,
826 rna_GpencilModifier_material_set(
ptr, value, ma_target, reports);
836 srna =
RNA_def_struct(brna,
"NoiseGpencilModifier",
"GpencilModifier");
852 "rna_NoiseGpencilModifier_material_set",
854 "rna_GpencilModifier_material_poll");
917 prop,
"Custom Curve",
"Use a custom curve to define noise effect along the strokes");
982 srna =
RNA_def_struct(brna,
"SmoothGpencilModifier",
"GpencilModifier");
998 "rna_SmoothGpencilModifier_material_set",
1000 "rna_GpencilModifier_material_poll");
1019 prop,
"Affect Position",
"The modifier affects the position of the point");
1025 prop,
"Affect Strength",
"The modifier affects the color strength of the point");
1031 prop,
"Affect Thickness",
"The modifier affects the thickness of the point");
1037 prop,
"Affect UV",
"The modifier affects the UV rotation factor of the point");
1050 prop,
"Step",
"Number of times to apply smooth (high numbers can reduce fps)");
1092 prop,
"Custom Curve",
"Use a custom curve to define smooth effect along the strokes");
1108 srna =
RNA_def_struct(brna,
"SubdivGpencilModifier",
"GpencilModifier");
1124 "rna_SubdivGpencilModifier_material_set",
1126 "rna_GpencilModifier_material_poll");
1187 "Delete alternating vertices in the stroke, except extremes"},
1190 ICON_IPO_EASE_IN_OUT,
1192 "Use a Ramer-Douglas-Peucker algorithm to simplify the stroke preserving main shape"},
1195 ICON_IPO_EASE_IN_OUT,
1197 "Re-sample the stroke with segments of the specified length"},
1200 ICON_IPO_EASE_IN_OUT,
1202 "Simplify the stroke by merging vertices closer than a given distance"},
1206 srna =
RNA_def_struct(brna,
"SimplifyGpencilModifier",
"GpencilModifier");
1222 "rna_SimplifyGpencilModifier_material_set",
1224 "rna_GpencilModifier_material_poll");
1292 prop,
"Sharp Threshold",
"Preserve corners that have sharper angle than this threshold");
1311 srna =
RNA_def_struct(brna,
"ThickGpencilModifier",
"GpencilModifier");
1327 "rna_ThickGpencilModifier_material_set",
1329 "rna_GpencilModifier_material_poll");
1397 prop,
"Custom Curve",
"Use a custom curve to define thickness change along the strokes");
1418 srna =
RNA_def_struct(brna,
"OffsetGpencilModifier",
"GpencilModifier");
1434 "rna_OffsetGpencilModifier_material_set",
1436 "rna_GpencilModifier_material_poll");
1526 prop,
"Uniform Scale",
"Use the same random seed for each scale axis for a uniform scale");
1541 {
GPPAINT_MODE_BOTH,
"BOTH", 0,
"Stroke & Fill",
"Vertex Color affects to Stroke and Fill"},
1545 srna =
RNA_def_struct(brna,
"TintGpencilModifier",
"GpencilModifier");
1567 "rna_TintGpencilModifier_material_set",
1569 "rna_GpencilModifier_material_poll");
1668 prop,
"Custom Curve",
"Use a custom curve to define vertex color effect along the strokes");
1684 srna =
RNA_def_struct(brna,
"TimeGpencilModifier",
"GpencilModifier");
1722 prop,
"Frame Offset",
"Number of frames to offset original keyframe number or frame to fix");
1750 prop,
"Keep Loop",
"Retiming end frames and move to start of animation to keep loop");
1756 prop,
"Custom Range",
"Define a custom range of frames to use in modifier");
1767 srna =
RNA_def_struct(brna,
"ColorGpencilModifier",
"GpencilModifier");
1788 "rna_ColorGpencilModifier_material_set",
1790 "rna_GpencilModifier_material_poll");
1850 prop,
"Custom Curve",
"Use a custom curve to define color effect along the strokes");
1866 srna =
RNA_def_struct(brna,
"OpacityGpencilModifier",
"GpencilModifier");
1887 "rna_OpacityGpencilModifier_material_set",
1889 "rna_GpencilModifier_material_poll");
1903 prop,
NULL,
"rna_GpencilOpacity_max_set",
"rna_GpencilOpacity_range");
1964 prop,
"Custom Curve",
"Use a custom curve to define opacity effect along the strokes");
1980 srna =
RNA_def_struct(brna,
"ArrayGpencilModifier",
"GpencilModifier");
1996 "rna_ArrayGpencilModifier_material_set",
1998 "rna_GpencilModifier_material_poll");
2020 "Use the location and rotation of another object to determine the distance and "
2021 "rotational change between arrayed items");
2036 "The size of the geometry will determine the distance between arrayed items");
2068 "Index of the material used for generated strokes (0 keep original material)");
2115 prop,
"Uniform Scale",
"Use the same random seed for each scale axis for a uniform scale");
2128 "Strokes appear/disappear one after the other, but only a single one changes at a time"},
2133 "Multiple strokes appear/disappear at once"},
2138 "Builds only new strokes (assuming 'additive' drawing)"},
2147 "Show points in the order they occur in each stroke "
2148 "(e.g. for animating lines being drawn)"},
2153 "Hide points from the end of each stroke to the start "
2154 "(e.g. for animating lines being erased)"},
2159 "Hide points in the order they occur in each stroke "
2160 "(e.g. for animating ink fading or vanishing after getting drawn)"},
2169 "All strokes start at same time (i.e. short strokes finish earlier)"},
2174 "All strokes end at same time (i.e. short strokes start later)"},
2181 srna =
RNA_def_struct(brna,
"BuildGpencilModifier",
"GpencilModifier");
2198 prop,
"Transition",
"How are strokes animated (i.e. are they appearing or disappearing)");
2207 "Number of frames after each GP keyframe before the modifier has any effect");
2216 "Maximum number of frames that the build effect can run for "
2217 "(unless another GP keyframe occurs before this time has elapsed)");
2227 prop,
"Time Alignment",
"When should strokes start to appear/disappear");
2234 prop,
"Restrict Frame Range",
"Only modify strokes during the specified frame range");
2241 prop,
"Restrict Visible Points",
"Use a percentage factor to determine the visible points");
2254 prop,
"Start Frame",
"Start Frame (when Restrict Frame Range is enabled)");
2284 prop,
"Opacity Strength",
"How much strength fading applies on top of stroke opacity");
2291 prop,
"Thickness Strength",
"How much strength fading applies on top of stroke thickness");
2331 srna =
RNA_def_struct(brna,
"LatticeGpencilModifier",
"GpencilModifier");
2333 srna,
"Lattice Modifier",
"Change stroke using lattice to deform modifier");
2348 "rna_LatticeGpencilModifier_material_set",
2350 "rna_GpencilModifier_material_poll");
2400 prop,
NULL,
"rna_LatticeGpencilModifier_object_set",
NULL,
"rna_Lattice_object_poll");
2418 srna =
RNA_def_struct(brna,
"MirrorGpencilModifier",
"GpencilModifier");
2434 "rna_MirrorGpencilModifier_material_set",
2436 "rna_GpencilModifier_material_poll");
2506 srna =
RNA_def_struct(brna,
"HookGpencilModifier",
"GpencilModifier");
2508 srna,
"Hook Modifier",
"Hook modifier to modify the location of stroke points");
2516 prop,
"Object",
"Parent Object for hook, also recalculates and clears offset");
2526 "Name of Parent Bone for hook (if applicable), also recalculates and clears offset");
2538 "rna_HookGpencilModifier_material_set",
2540 "rna_GpencilModifier_material_poll");
2605 prop,
"Radius",
"If not zero, the distance from the hook where influence ends");
2622 prop,
"Matrix",
"Reverse the transformation between this object and its target");
2638 srna =
RNA_def_struct(brna,
"ArmatureGpencilModifier",
"GpencilModifier");
2640 srna,
"Armature Modifier",
"Change stroke using armature to deform modifier");
2649 prop,
NULL,
"rna_ArmatureGpencilModifier_object_set",
NULL,
"rna_Armature_object_poll");
2666 prop,
"Preserve Volume",
"Deform rotation interpolation with quaternions");
2674 "Name of Vertex Group which determines influence of modifier per point");
2691 srna =
RNA_def_struct(brna,
"MultiplyGpencilModifier",
"GpencilModifier");
2707 "rna_MultiplyGpencilModifier_material_set",
2709 "rna_GpencilModifier_material_poll");
2796 "Keep the texture at a constant length regardless of the length of each stroke"},
2801 "Scale the texture to fit the length of each stroke"},
2806 {
STROKE,
"STROKE", 0,
"Stroke",
"Manipulate only stroke texture coordinates"},
2807 {
FILL,
"FILL", 0,
"Fill",
"Manipulate only fill texture coordinates"},
2812 "Manipulate both stroke and fill texture coordinates"},
2816 srna =
RNA_def_struct(brna,
"TextureGpencilModifier",
"GpencilModifier");
2818 srna,
"Texture Modifier",
"Transform stroke texture coordinates Modifier");
2838 "rna_TextureGpencilModifier_material_set",
2840 "rna_GpencilModifier_material_poll");
2903 prop,
"Rotation",
"Additional rotation applied to dots and square strokes");
2943 srna =
RNA_def_struct(brna,
"WeightProxGpencilModifier",
"GpencilModifier");
2954 prop,
NULL,
NULL,
"rna_WeightProxGpencilModifier_target_vgname_set");
2962 "Multiply the calculated weights with the existing values in the vertex group");
2979 "rna_WeightProxGpencilModifier_material_set",
2981 "rna_GpencilModifier_material_poll");
2995 prop,
NULL,
"rna_WeightProxGpencilModifier_object_set",
NULL,
NULL);
3064 {0,
"X", 0,
"X",
""},
3065 {1,
"Y", 0,
"Y",
""},
3066 {2,
"Z", 0,
"Z",
""},
3076 srna =
RNA_def_struct(brna,
"WeightAngleGpencilModifier",
"GpencilModifier");
3087 prop,
NULL,
NULL,
"rna_WeightAngleGpencilModifier_target_vgname_set");
3095 "Multiply the calculated weights with the existing values in the vertex group");
3130 "rna_WeightAngleGpencilModifier_material_set",
3132 "rna_GpencilModifier_material_poll");
3199 static const EnumPropertyItem modifier_lineart_shadow_region_filtering[] = {
3204 "Not filtering any lines based on illumination region"},
3209 "Only selecting lines from illuminated regions"},
3214 "Only selecting lines from shaded regions"},
3216 "ILLUMINATED_ENCLOSED",
3218 "Illuminated (Enclosed Shapes)",
3219 "Selecting lines from lit regions, and make the combination of contour, light contour and "
3220 "shadow lines into enclosed shapes"},
3231 srna =
RNA_def_struct(brna,
"LineartGpencilModifier",
"GpencilModifier");
3233 srna,
"Line Art Modifier",
"Generate line art strokes from selected source");
3242 prop,
"Use Custom Camera",
"Use custom camera instead of the active camera");
3248 "Intersection With Contour",
3249 "Treat intersection and contour lines as if they were the same type so "
3250 "they can be chained together");
3256 prop,
"All Lines",
"Treat all lines as the same line type so they can be chained together");
3263 "Instanced Objects",
3264 "Support particle objects and face/vertex instances to show in line art");
3271 "Handle Overlapping Edges",
3272 "Allow edges in the same location (i.e. from edge split) to show properly. May run slower");
3278 "Clipping Boundaries",
3279 "Allow lines generated by the near/far clipping plane to be shown");
3287 "Angles smaller than this will be treated as creases. Crease angle "
3288 "priority: object line art crease override > mesh auto smooth angle > "
3289 "line art default crease");
3295 prop,
"Angle Splitting",
"Angle in screen space below which a stroke is split in two");
3304 prop,
"Smooth Tolerance",
"Strength of smoothing applied on jagged chains");
3327 prop,
"Filter Face Marks",
"Filter feature lines using freestyle face marks");
3338 prop,
"Boundaries",
"Filter feature lines based on face mark boundaries");
3351 "Segments with an image distance smaller than this will be chained together");
3364 prop,
"Use Geometry Space",
"Use geometry distance for chaining instead of image space");
3370 prop,
"Preserve Details",
"Keep the zig-zag \"noise\" in initial chaining");
3376 "Overlapping Edge Types",
3377 "Allow an edge to have multiple overlapping types. This will create a "
3378 "separate stroke for each overlapping type");
3383 "Stroke Depth Offset",
3384 "Move strokes slightly towards the camera to avoid clipping while "
3385 "preserve depth for the viewport");
3393 "Offset Towards Custom Camera",
3394 "Offset strokes towards selected camera instead of the active camera");
3402 prop,
"Camera Object",
"Use specified camera object for generating line art");
3410 prop,
"Light Object",
"Use this light object to generate light contour");
3428 prop,
"Collection",
"Generate strokes from the objects in this collection");
3450 prop,
"Use Material",
"Generate strokes from borders between materials");
3466 "Use Light Contour",
3467 "Generate light/shadow separation lines from a reference light object");
3473 prop,
"Use Shadow",
"Project contour lines using a light source object");
3480 "Shadow Region Filtering",
3481 "Select feature lines that comes from lit or shaded regions. Will not "
3482 "affect cast shadow and light contour since they are at the border");
3494 prop,
"Use Occlusion Range",
"Generate strokes from a range of occlusion levels");
3499 prop,
"Level Start",
"Minimum number of occlusions for the generated strokes");
3506 prop,
"Level End",
"Maximum number of occlusions for the generated strokes");
3516 "rna_LineartGpencilModifier_material_set",
3518 "rna_GpencilModifier_material_poll");
3520 prop,
"Material",
"Grease Pencil material assigned to the generated strokes");
3530 "Source Vertex Group",
3531 "Match the beginning of vertex group names from mesh objects, match all when left empty");
3549 "Use cached scene data from the first line art modifier in the stack. "
3550 "Certain settings will be unavailable");
3557 "A margin to prevent strokes from ending abruptly at the edge of the image");
3577 prop,
"Use Material Mask",
"Use material masks to filter out occluded strokes");
3583 prop,
"Match Masks",
"Require matching all material masks instead of just one");
3595 prop,
"Match Intersection",
"Require matching all intersection masks instead of just one");
3608 prop,
"Crease On Smooth Surfaces",
"Allow crease edges to show inside smooth surfaces");
3620 "Image Boundary Trimming",
3621 "Trim all edges right at the boundary of image(including overscan region)");
3627 "Back Face Culling",
3628 "Remove all back faces to speed up calculation, this will create edges in "
3629 "different occlusion levels than when disabled");
3646 "Shadow Camera Size",
3647 "This value represent the \"Orthographic Scale\" of an ortho camera."
3648 "If the camera is put at the lamps position with this scale, it will "
3649 "represent the coverage of the shadow \"camera\" ");
3656 "Invert Collection Filtering",
3657 "Select everything except lines from specified collection");
3673 srna =
RNA_def_struct(brna,
"LengthGpencilModifier",
"GpencilModifier");
3684 prop,
"Start Factor",
"Added length to the start of each stroke relative to its length");
3691 prop,
"End Factor",
"Added length to the end of each stroke relative to its length");
3698 prop,
"Start Factor",
"Absolute added length to the start of each stroke");
3711 prop,
"Random Start Factor",
"Size of random length added to the start of each stroke");
3718 prop,
"Random End Factor",
"Size of random length added to the end of each stroke");
3725 prop,
"Random Noise Offset",
"Smoothly offset each stroke's random value");
3741 prop,
"Step",
"Number of frames before recalculate random values again");
3750 "Defines what portion of the stroke is used for the calculation of the extension");
3767 prop,
"Invert Curvature",
"Invert the curvature of the stroke's extension");
3775 prop,
"Point Density",
"Multiplied by Start/End for the total added point count");
3782 "Segment Influence",
3783 "Factor to determine how much the length of the individual segments "
3784 "should influence the final computed curvature. Higher factors makes "
3785 "small segments influence the overall curvature less");
3791 "Ignore points on the stroke that deviate from their neighbors by more "
3792 "than this angle when determining the extrapolation shape");
3864 "The number of consecutive points from the original stroke to include in this segment");
3875 prop,
"Radius",
"The factor to apply to the original point's radius for the new points");
3881 prop,
"Opacity",
"The factor to apply to the original point's opacity for the new points");
3890 "Use this index on generated segment. -1 means using the existing material");
3898 srna =
RNA_def_struct(brna,
"DashGpencilModifierData",
"GpencilModifier");
3909 "rna_GpencilDash_segments_begin",
3910 "rna_iterator_array_next",
3911 "rna_iterator_array_end",
3912 "rna_iterator_array_get",
3927 "Offset into each stroke before the beginning of the dashed segment generation");
3982 srna =
RNA_def_struct(brna,
"ShrinkwrapGpencilModifier",
"GpencilModifier");
3984 "Shrinkwrap Modifier",
3985 "Shrink wrapping modifier to shrink wrap and object to a target");
4001 prop,
"Snap Mode",
"Select how vertices are constrained to the target surface");
4008 "rna_ShrinkwrapGpencilModifier_face_cull_get",
4009 "rna_ShrinkwrapGpencilModifier_face_cull_set",
4014 "Stop vertices from projecting to a face on the target when facing towards/away");
4020 prop,
NULL,
"rna_ShrinkwrapGpencilModifier_target_set",
NULL,
"rna_Mesh_object_poll");
4028 prop,
NULL,
"rna_ShrinkwrapGpencilModifier_aux_target_set",
NULL,
"rna_Mesh_object_poll");
4044 prop,
"Project Limit",
"Limit the distance used for projection (zero disables)");
4068 "Subdivision Levels",
4069 "Number of subdivisions that must be performed before extracting vertices' "
4070 "positions and normals");
4076 prop,
"Negative",
"Allow vertices to move in the negative direction of axis");
4082 prop,
"Positive",
"Allow vertices to move in the positive direction of axis");
4088 prop,
"Invert Cull",
"When projecting in the negative direction invert the face cull mode");
4100 "rna_ShrinkwrapGpencilModifier_material_set",
4102 "rna_GpencilModifier_material_poll");
4159 prop,
"Step",
"Number of times to apply smooth (high numbers can reduce FPS)");
4170 srna =
RNA_def_struct(brna,
"EnvelopeGpencilModifier",
"GpencilModifier");
4186 "rna_EnvelopeGpencilModifier_material_set",
4188 "rna_GpencilModifier_material_poll");
4208 prop,
"Spread Length",
"The number of points to skip to create straight segments");
4241 prop,
"Skip Segments",
"The number of generated segments to skip to reduce complexity");
4336 "Override Modifier",
4337 "In a local override object, whether this modifier comes from the linked "
4338 "reference object, or is local to the override");
void BKE_animdata_fix_paths_rename_all(struct ID *ref_id, const char *prefix, const char *oldName, const char *newName)
int BKE_gpencil_object_material_index_get(struct Object *ob, struct Material *ma)
bool BKE_gpencil_modifier_unique_name(struct ListBase *modifiers, struct GpencilModifierData *gmd)
void id_lib_extern(struct ID *id)
General operations, lookup, etc. for blender objects.
void BKE_object_modifier_gpencil_hook_reset(struct Object *ob, struct HookGpencilModifierData *hmd)
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
size_t size_t char * BLI_sprintfN(const char *__restrict format,...) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) ATTR_MALLOC ATTR_PRINTF_FORMAT(1
#define SNPRINTF(dst, format,...)
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL()
size_t size_t char size_t BLI_str_escape(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL()
char * BLI_strncpy_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL(1
bool BLI_uniquename_cb(UniquenameCheckCallback unique_check, void *arg, const char *defname, char delim, char *name, size_t name_len)
#define BLT_I18NCONTEXT_ID_CURVE_LEGACY
void DEG_id_tag_update(struct ID *id, int flag)
void DEG_relations_tag_update(struct Main *bmain)
@ GP_LENGTH_INVERT_MATERIAL
@ GP_LENGTH_INVERT_CURVATURE
@ GP_LENGTH_USE_CURVATURE
@ GP_LENGTH_INVERT_LAYERPASS
@ LRT_GPENCIL_MATERIAL_MASK_ENABLE
@ LRT_GPENCIL_INTERSECTION_MATCH
@ LRT_GPENCIL_MATERIAL_MASK_MATCH
@ GP_SUBDIV_INVERT_MATERIAL
@ GP_SUBDIV_INVERT_LAYERPASS
@ eGpencilModifierMode_Render
@ eGpencilModifierMode_Editmode
@ eGpencilModifierMode_Realtime
@ GP_LATTICE_INVERT_LAYERPASS
@ GP_LATTICE_INVERT_LAYER
@ GP_LATTICE_INVERT_VGROUP
@ GP_LATTICE_INVERT_MATERIAL
@ GP_BUILD_TRANSITION_SHRINK
@ GP_BUILD_TRANSITION_VANISH
@ GP_BUILD_TRANSITION_GROW
@ GP_WEIGHT_INVERT_VGROUP
@ GP_WEIGHT_INVERT_OUTPUT
@ GP_WEIGHT_INVERT_MATERIAL
@ GP_WEIGHT_INVERT_LAYERPASS
@ GP_WEIGHT_MULTIPLY_DATA
@ GP_BUILD_MODE_SEQUENTIAL
@ GP_BUILD_MODE_CONCURRENT
@ GP_ENVELOPE_INVERT_LAYERPASS
@ GP_ENVELOPE_INVERT_LAYER
@ GP_ENVELOPE_INVERT_PASS
@ GP_ENVELOPE_INVERT_VGROUP
@ GP_ENVELOPE_INVERT_MATERIAL
@ GP_SIMPLIFY_INVERT_LAYER
@ GP_SIMPLIFY_INVERT_PASS
@ GP_SIMPLIFY_INVERT_MATERIAL
@ GP_SIMPLIFY_INVERT_LAYERPASS
@ GP_HOOK_INVERT_MATERIAL
@ GP_HOOK_INVERT_LAYERPASS
@ GP_TIME_INVERT_LAYERPASS
@ LRT_SILHOUETTE_FILTER_NONE
@ LRT_SILHOUETTE_FILTER_GROUP
@ LRT_SILHOUETTE_FILTER_INDIVIDUAL
@ GP_COLOR_INVERT_LAYERPASS
@ GP_COLOR_INVERT_MATERIAL
@ GP_SMOOTH_INVERT_LAYERPASS
@ GP_SMOOTH_MOD_THICKNESS
@ GP_SMOOTH_INVERT_MATERIAL
@ GP_SMOOTH_INVERT_VGROUP
@ LRT_GPENCIL_INVERT_COLLECTION
@ LRT_GPENCIL_INVERT_SILHOUETTE_FILTER
@ LRT_GPENCIL_OFFSET_TOWARDS_CUSTOM_CAMERA
@ GP_BUILD_TIMEALIGN_START
@ GP_OPACITY_WEIGHT_FACTOR
@ GP_OPACITY_INVERT_LAYER
@ GP_OPACITY_INVERT_VGROUP
@ GP_OPACITY_CUSTOM_CURVE
@ GP_OPACITY_INVERT_MATERIAL
@ GP_OPACITY_INVERT_LAYERPASS
@ LRT_SHADOW_FILTER_ILLUMINATED_ENCLOSED_SHAPES
@ LRT_SHADOW_FILTER_ILLUMINATED
@ LRT_SHADOW_FILTER_SHADED
@ GP_THICK_INVERT_MATERIAL
@ GP_THICK_INVERT_LAYERPASS
@ GP_MULTIPLY_ENABLE_FADING
@ eGPHook_Falloff_InvSquare
@ GP_ARRAY_UNIFORM_RANDOM_SCALE
@ GP_ARRAY_INVERT_MATERIAL
@ GP_ARRAY_INVERT_LAYERPASS
@ GP_OFFSET_INVERT_MATERIAL
@ GP_OFFSET_UNIFORM_RANDOM_SCALE
@ GP_OFFSET_INVERT_VGROUP
@ GP_OFFSET_INVERT_LAYERPASS
@ GP_TINT_INVERT_LAYERPASS
@ GP_TINT_INVERT_MATERIAL
@ GP_BUILD_INVERT_LAYERPASS
@ GP_MIRROR_INVERT_MATERIAL
@ GP_MIRROR_INVERT_LAYERPASS
@ GP_DASH_INVERT_LAYERPASS
@ GP_DASH_INVERT_MATERIAL
@ eGpencilModifierFlag_OverrideLibrary_Local
@ GP_MODIFY_COLOR_HARDNESS
@ GP_NOISE_RANDOM_KEYFRAME
@ GP_SHRINKWRAP_INVERT_LAYER
@ GP_SHRINKWRAP_INVERT_LAYERPASS
@ GP_SHRINKWRAP_INVERT_PASS
@ GP_SHRINKWRAP_INVERT_MATERIAL
@ GP_TEX_INVERT_LAYERPASS
@ eGpencilModifierType_Dash
@ eGpencilModifierType_Array
@ eGpencilModifierType_Noise
@ eGpencilModifierType_Mirror
@ eGpencilModifierType_Color
@ eGpencilModifierType_Multiply
@ eGpencilModifierType_Texture
@ eGpencilModifierType_Subdiv
@ eGpencilModifierType_Length
@ eGpencilModifierType_Lattice
@ eGpencilModifierType_Opacity
@ eGpencilModifierType_Hook
@ eGpencilModifierType_Simplify
@ eGpencilModifierType_Shrinkwrap
@ eGpencilModifierType_WeightProximity
@ eGpencilModifierType_Armature
@ eGpencilModifierType_WeightAngle
@ eGpencilModifierType_Lineart
@ eGpencilModifierType_None
@ eGpencilModifierType_Smooth
@ eGpencilModifierType_Tint
@ eGpencilModifierType_Envelope
@ NUM_GREASEPENCIL_MODIFIER_TYPES
@ eGpencilModifierType_Time
@ eGpencilModifierType_Thick
@ eGpencilModifierType_Build
@ eGpencilModifierType_Offset
@ GP_NOISE_INVERT_MATERIAL
@ GP_NOISE_INVERT_LAYERPASS
@ LRT_EDGE_FLAG_PROJECTED_SHADOW
@ LRT_EDGE_FLAG_INTERSECTION
@ LRT_EDGE_FLAG_LIGHT_CONTOUR
@ LRT_EDGE_FLAG_EDGE_MARK
@ LRT_GPENCIL_INVERT_SOURCE_VGROUP
@ LRT_EVERYTHING_AS_CONTOUR
@ LRT_USE_CREASE_ON_SMOOTH_SURFACES
@ LRT_ALLOW_OVERLAP_EDGE_TYPES
@ LRT_USE_IMAGE_BOUNDARY_TRIMMING
@ LRT_INTERSECTION_AS_CONTOUR
@ LRT_ALLOW_OVERLAPPING_EDGES
@ LRT_GPENCIL_MATCH_OUTPUT_VGROUP
@ LRT_ALLOW_DUPLI_OBJECTS
@ LRT_FILTER_FACE_MARK_INVERT
@ LRT_USE_BACK_FACE_CULLING
@ LRT_CHAIN_GEOMETRY_SPACE
@ LRT_USE_CREASE_ON_SHARP_EDGES
@ LRT_FILTER_FACE_MARK_KEEP_CONTOUR
@ LRT_ALLOW_CLIPPING_BOUNDARIES
@ LRT_FILTER_FACE_MARK_BOUNDARIES
@ LRT_CHAIN_PRESERVE_DETAILS
#define MOD_SHRINKWRAP_CULL_TARGET_MASK
@ MOD_SHRINKWRAP_PROJECT_ALLOW_POS_DIR
@ MOD_SHRINKWRAP_PROJECT_ALLOW_NEG_DIR
@ MOD_SHRINKWRAP_INVERT_VGROUP
@ MOD_SHRINKWRAP_INVERT_CULL_TARGET
@ MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Z_AXIS
Object is a sort of wrapper for general info.
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Read Guarded memory(de)allocation.
Group Output data from inside of a node group A color picker Mix two input colors RGB to Convert a color s luminance to a grayscale value Generate a normal vector and a dot product Bright Control the brightness and contrast of the input color Vector Map an input vectors to used to fine tune the interpolation of the input Camera Retrieve information about the camera and how it relates to the current shading point s position CLAMP
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Texture
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Sample an image file as a texture Sky Generate a procedural sky texture Noise Generate fractal Perlin noise Wave Generate procedural bands or rings with noise Voronoi Generate Worley noise based on the distance to random points Typically used to generate textures such as or biological cells Brick Generate a procedural texture producing bricks Texture Retrieve multiple types of texture coordinates nTypically used as inputs for texture nodes Vector Convert a or normal between and object coordinate space Combine Create a color from its and value channels Color Retrieve a color or the default fallback if none is specified Separate Split a vector into its and Z components Generates normals with round corners and may slow down renders Vector Displace the surface along an arbitrary direction White Noise
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
#define RNA_ENUM_ITEM_HEADING(name, description)
static bool dash_segment_name_exists_fn(void *arg, const char *name)
static const EnumPropertyItem mode_items[]
void rna_iterator_array_begin(CollectionPropertyIterator *iter, void *ptr, int itemsize, int length, bool free_ptr, IteratorSkipFunc skip)
void RNA_def_struct_refine_func(StructRNA *srna, const char *refine)
void RNA_def_property_pointer_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_define_lib_overridable(const bool make_overridable)
void RNA_def_struct_path_func(StructRNA *srna, const char *path)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_property_float_default(PropertyRNA *prop, float value)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_property_ui_text(PropertyRNA *prop, const char *name, const char *description)
void RNA_def_property_string_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_icon(PropertyRNA *prop, int icon, int consecutive)
void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring, const char *assignint)
void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description)
void RNA_def_property_multi_array(PropertyRNA *prop, int dimension, const int length[])
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_range(PropertyRNA *prop, double min, double max)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_sdna(PropertyRNA *prop, const char *structname, const char *propname, const char *lengthpropname)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
const int rna_matrix_dimsize_4x4[]
void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item)
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
void RNA_def_property_enum_bitflag_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *prop)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_def_property_enum_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_int_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_struct_ui_icon(StructRNA *srna, int icon)
void RNA_def_property_translation_context(PropertyRNA *prop, const char *context)
void RNA_def_property_ui_scale_type(PropertyRNA *prop, PropertyScaleType ui_scale_type)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_float_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_range(PropertyRNA *prop, double min, double max, double step, int precision)
void RNA_def_property_int_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_boolean_negative_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_property_override_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
static const EnumPropertyItem gpencil_tint_type_items[]
static void rna_def_modifier_gpencilshrinkwrap(BlenderRNA *brna)
static void rna_def_modifier_gpencilsimplify(BlenderRNA *brna)
static void rna_def_modifier_gpencilhook(BlenderRNA *brna)
static void rna_def_modifier_gpencilweight_angle(BlenderRNA *brna)
static void rna_def_modifier_gpenciltexture(BlenderRNA *brna)
static const EnumPropertyItem gpencil_envelope_mode_items[]
static const EnumPropertyItem modifier_noise_random_mode_items[]
static void rna_def_modifier_gpencilarmature(BlenderRNA *brna)
static void rna_def_modifier_gpencilcolor(BlenderRNA *brna)
static void rna_def_modifier_gpencilnoise(BlenderRNA *brna)
static void rna_def_modifier_gpencilopacity(BlenderRNA *brna)
static const EnumPropertyItem gpencil_subdivision_type_items[]
static void rna_def_modifier_gpencillineart(BlenderRNA *brna)
static void rna_def_modifier_gpencilmultiply(BlenderRNA *brna)
static void rna_def_modifier_gpencilthick(BlenderRNA *brna)
void RNA_def_greasepencil_modifier(BlenderRNA *brna)
static const EnumPropertyItem modifier_gphook_falloff_items[]
static void rna_def_modifier_gpencilweight_proximity(BlenderRNA *brna)
static const EnumPropertyItem rna_enum_time_mode_items[]
static void rna_def_modifier_gpencillength(BlenderRNA *brna)
static void rna_def_modifier_gpencillattice(BlenderRNA *brna)
static void rna_def_modifier_gpencilbuild(BlenderRNA *brna)
static void rna_def_modifier_gpencilmirror(BlenderRNA *brna)
static void rna_def_modifier_gpenciltime(BlenderRNA *brna)
static void rna_def_modifier_gpencilenvelope(BlenderRNA *brna)
static const EnumPropertyItem gpencil_length_mode_items[]
static void rna_def_modifier_gpencildash(BlenderRNA *brna)
static void rna_def_modifier_gpenciloffset(BlenderRNA *brna)
static void rna_def_modifier_gpenciltint(BlenderRNA *brna)
static const EnumPropertyItem modifier_modify_color_items[]
const EnumPropertyItem rna_enum_object_greasepencil_modifier_type_items[]
static void rna_def_modifier_gpencilsmooth(BlenderRNA *brna)
static void rna_def_modifier_gpencilarray(BlenderRNA *brna)
static void rna_def_modifier_gpencilsubdiv(BlenderRNA *brna)
static const EnumPropertyItem modifier_modify_opacity_items[]
const EnumPropertyItem rna_enum_shrinkwrap_face_cull_items[]
const EnumPropertyItem rna_enum_shrinkwrap_type_items[]
const EnumPropertyItem rna_enum_modifier_shrinkwrap_mode_items[]
static const EnumPropertyItem space_items[]
struct Material * material
struct Material * material
GpencilModifierData modifier
DashGpencilModifierSegment * segments
struct DashGpencilModifierData * dmd
struct Material * material
struct Material * material
struct Material * material
struct Material * target_material
struct Material * material
struct Material * material
struct Material * material
ListBase greasepencil_modifiers
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
struct Material * material
void WM_main_add_notifier(unsigned int type, void *reference)