42 "GREASE_PENCIL_VERTEX_WEIGHT_PROXIMITY",
43 ICON_MOD_VERTEX_WEIGHT,
44 "Vertex Weight Proximity",
45 "Generate vertex weights based on distance to object"},
50 ICON_MOD_DATA_TRANSFER,
52 "Transfer several types of data (vertex groups, UV maps, vertex colors, custom normals) from "
53 "one mesh to another"},
58 "Deform the mesh using an external frame-by-frame vertex transform cache"},
60 "MESH_SEQUENCE_CACHE",
62 "Mesh Sequence Cache",
63 "Deform the mesh or curve using an external mesh cache in Alembic format"},
68 "Modify the direction of the surface normals"},
73 "Modify the direction of the surface normals using a weighting method"},
78 "Project the UV map coordinates from the negative Z axis of another object"},
83 "Transform the UV map using the difference between two objects"},
86 ICON_MOD_VERTEX_WEIGHT,
88 "Modify of the weights of a vertex group"},
91 ICON_MOD_VERTEX_WEIGHT,
93 "Mix the weights of two vertex groups"},
95 "VERTEX_WEIGHT_PROXIMITY",
96 ICON_MOD_VERTEX_WEIGHT,
97 "Vertex Weight Proximity",
98 "Set the vertex group weights based on the distance to another target object"},
100 "GREASE_PENCIL_COLOR",
101 ICON_MOD_HUE_SATURATION,
103 "Change hue/saturation/value of the strokes"},
105 "GREASE_PENCIL_TINT",
108 "Tint the color of the strokes"},
110 "GREASE_PENCIL_OPACITY",
113 "Change the opacity of the strokes"},
115 "GREASE_PENCIL_VERTEX_WEIGHT_ANGLE",
116 ICON_MOD_VERTEX_WEIGHT,
117 "Vertex Weight Angle",
118 "Generate vertex weights based on stroke angle"},
120 "GREASE_PENCIL_TIME",
125 "GREASE_PENCIL_TEXTURE",
128 "Change stroke UV texture values"},
135 "Create copies of the shape with offsets"},
140 "Generate sloped corners by adding geometry to the mesh's edges or vertices"},
145 "Use another shape to cut, combine or perform a difference operation"},
150 "Cause the faces of the mesh object to appear or disappear one after the other over time"},
155 "Reduce the geometry density"},
160 "Split away joined faces at the edges"},
166 "Dynamically hide vertices based on a vertex group or armature"},
171 "Mirror along the local X, Y and/or Z axes, over the object origin"},
181 "Subdivide the mesh in a way that allows editing the higher subdivision levels"},
186 "Generate new mesh topology based on the current shape"},
191 "Lathe around an axis, treating the input mesh as a profile"},
196 "Create a solid shape from vertices and edges, using the vertex radius to define the "
202 "Subdivision Surface",
203 "Split the faces into smaller parts, giving it a smoother appearance"},
206 ICON_MOD_TRIANGULATE,
208 "Convert all polygons to triangles"},
218 "Find groups of vertices closer than dist and merge them together"},
223 "Convert faces into thickened edges"},
225 "GREASE_PENCIL_ARRAY",
228 "Duplicate strokes into an array"},
230 "GREASE_PENCIL_BUILD",
233 "Grease Pencil build modifier"},
235 "GREASE_PENCIL_LENGTH",
238 "Grease Pencil length modifier"},
243 "Generate Line Art from scene geometries"},
245 "GREASE_PENCIL_MIRROR",
248 "Duplicate strokes like a mirror"},
250 "GREASE_PENCIL_MULTIPLY",
251 ICON_GP_MULTIFRAME_EDITING,
253 "Generate multiple strokes around original strokes"},
255 "GREASE_PENCIL_SIMPLIFY",
258 "Simplify stroke reducing number of points"},
260 "GREASE_PENCIL_SUBDIV",
263 "Grease Pencil subdivide modifier"},
265 "GREASE_PENCIL_ENVELOPE",
268 "Create an envelope shape"},
270 "GREASE_PENCIL_OUTLINE",
273 "Convert stroke to outline"},
280 "Deform the shape using an armature object"},
285 "Shift the shape towards a predefined primitive"},
286 {
eModifierType_Curve,
"CURVE", ICON_MOD_CURVE,
"Curve",
"Bend the mesh using a curve object"},
291 "Offset vertices based on a texture"},
292 {
eModifierType_Hook,
"HOOK", ICON_HOOK,
"Hook",
"Deform specific points using another object"},
297 "Deform based a series of anchor points"},
302 "Deform using the shape of a lattice object"},
307 "Deform using a different mesh, which acts as a deformation cage"},
312 "Project the shape onto another object"},
315 ICON_MOD_SIMPLEDEFORM,
317 "Deform the shape by twisting, bending, tapering or stretching"},
322 "Smooth the mesh by flattening the angles between adjacent faces"},
327 "Smooth the mesh while still preserving the volume"},
332 "Reduce the noise on a mesh surface with minimal changes to its shape"},
337 "Transfer motion from another mesh"},
342 "Warp parts of a mesh to a new location in a very flexible way thanks to 2 specified "
348 "Adds a ripple-like motion to an object's geometry"},
353 "Deform volume based on noise or other vector fields"},
355 "GREASE_PENCIL_HOOK",
358 "Deform stroke points using objects"},
360 "GREASE_PENCIL_NOISE",
363 "Generate noise wobble in Grease Pencil strokes"},
365 "GREASE_PENCIL_OFFSET",
368 "Change stroke location, rotation, or scale"},
370 "GREASE_PENCIL_SMOOTH",
373 "Smooth Grease Pencil strokes"},
375 "GREASE_PENCIL_THICKNESS",
378 "Change stroke thickness"},
380 "GREASE_PENCIL_LATTICE",
383 "Deform strokes using a lattice object"},
385 "GREASE_PENCIL_DASH",
388 "Generate dot-dash styled strokes"},
390 "GREASE_PENCIL_ARMATURE",
393 "Deform stroke points using armature object"},
395 "GREASE_PENCIL_SHRINKWRAP",
398 "Project the shape onto another object"},
406 "For colliders participating in physics simulation, control which level in the modifier "
407 "stack is used as the collision surface"},
410 ICON_MOD_DYNAMICPAINT,
412 "Turn objects into paint canvases and brushes, creating color attributes, image sequences, "
418 "Break apart the mesh faces and let them follow particles"},
423 "Physics simulation for fluids, like water, oil and smoke"},
424 {
eModifierType_Ocean,
"OCEAN", ICON_MOD_OCEAN,
"Ocean",
"Generate a moving ocean surface"},
427 ICON_MOD_PARTICLE_INSTANCE,
429 "Duplicate mesh at the location of particles"},
434 "Spawn particles from the shape"},
439 "Simulate soft deformable objects"},
441 {0,
nullptr, 0,
nullptr,
nullptr},
449 "Split the quads in nice triangles, slower method"},
454 "Split the quads on the first and third vertices"},
459 "Split the quads on the 2nd and 4th vertices"},
464 "Split the quads along their shortest diagonal"},
469 "Split the quads along their longest diagonal"},
470 {0,
nullptr, 0,
nullptr,
nullptr},
478 "Arrange the new triangles evenly (slow)"},
483 "Split the polygons with an ear clipping algorithm"},
484 {0,
nullptr, 0,
nullptr,
nullptr},
492 "The point is constrained to the surface of the target object, "
493 "with distance offset towards the original point location"},
498 "The point is constrained to be inside the target object"},
503 "The point is constrained to be outside the target object"},
508 "The point is constrained to the surface of the target object, "
509 "with distance offset always to the outside, towards or away from the original location"},
514 "The point is constrained to the surface of the target object, "
515 "with distance offset applied exactly along the target normal"},
516 {0,
nullptr, 0,
nullptr,
nullptr},
521 "NEAREST_SURFACEPOINT",
523 "Nearest Surface Point",
524 "Shrink the mesh to the nearest target surface"},
529 "Shrink the mesh to the nearest target surface along a given axis"},
534 "Shrink the mesh to the nearest target vertex"},
538 "Target Normal Project",
539 "Shrink the mesh to the nearest target surface "
540 "along the interpolated vertex normals of the target"},
541 {0,
nullptr, 0,
nullptr,
nullptr},
545 {0,
"OFF", 0,
"Off",
"No culling"},
550 "No projection when in front of the face"},
552 {0,
nullptr, 0,
nullptr,
nullptr},
559 {0,
nullptr, 0,
nullptr,
nullptr},
574 {0,
nullptr, 0,
nullptr,
nullptr},
586 "Nearest Edge Vertex",
587 "Copy from closest vertex of closest edge"},
589 "EDGEINTERP_NEAREST",
591 "Nearest Edge Interpolated",
592 "Copy from interpolated values of vertices from closest point on closest edge"},
596 "Nearest Face Vertex",
597 "Copy from closest vertex of closest face"},
599 "POLYINTERP_NEAREST",
601 "Nearest Face Interpolated",
602 "Copy from interpolated values of vertices from closest point on closest face"},
604 "POLYINTERP_VNORPROJ",
606 "Projected Face Interpolated",
607 "Copy from interpolated values of vertices from point on closest face hit by "
608 "normal-projection"},
609 {0,
nullptr, 0,
nullptr,
nullptr},
618 "Copy from most similar edge (edge which vertices are the closest of destination edge's "
624 "Copy from closest edge (using midpoints)"},
629 "Copy from closest edge of closest face (using midpoints)"},
631 "EDGEINTERP_VNORPROJ",
633 "Projected Edge Interpolated",
634 "Interpolate all source edges hit by the projection of destination one along its own normal "
636 {0,
nullptr, 0,
nullptr,
nullptr},
644 "Nearest Corner and Best Matching Normal",
645 "Copy from nearest corner which has the best matching normal"},
649 "Nearest Corner and Best Matching Face Normal",
650 "Copy from nearest corner which has the face with the best matching normal to destination "
651 "corner's face one"},
655 "Nearest Corner of Nearest Face",
656 "Copy from nearest corner of nearest face"},
658 "POLYINTERP_NEAREST",
660 "Nearest Face Interpolated",
661 "Copy from interpolated corners of the nearest source face"},
663 "POLYINTERP_LNORPROJ",
665 "Projected Face Interpolated",
666 "Copy from interpolated corners of the source face hit by corner normal projection"},
667 {0,
nullptr, 0,
nullptr,
nullptr},
676 "Copy from nearest face (using center points)"},
680 "Best Normal-Matching",
681 "Copy from source face which normal is the closest to destination one"},
683 "POLYINTERP_PNORPROJ",
685 "Projected Face Interpolated",
686 "Interpolate all source polygons intersected by the projection of destination one along its "
688 {0,
nullptr, 0,
nullptr,
nullptr},
692 {
CDT_MIX_TRANSFER,
"REPLACE", 0,
"Replace",
"Overwrite all elements' data"},
697 "Only replace destination elements where data is above given threshold (exact behavior "
698 "depends on data type)"},
703 "Only replace destination elements where data is below given threshold (exact behavior "
704 "depends on data type)"},
709 "Mix source value into destination one, using given threshold as factor"},
714 "Add source value to destination one, using given threshold as factor"},
719 "Subtract source value to destination one, using given threshold as factor"},
724 "Multiply source value to destination one, using given threshold as factor"},
726 {0,
nullptr, 0,
nullptr,
nullptr},
735 "Selected Pose Bones",
736 "Transfer all vertex groups used by selected pose bones"},
741 "Transfer all vertex groups used by deform bones"},
742 {0,
nullptr, 0,
nullptr,
nullptr},
747 {
DT_LAYERS_NAME_DST,
"NAME", 0,
"By Name",
"Match target data layers to affect by name"},
752 "Match target data layers to affect by order (indices)"},
753 {0,
nullptr, 0,
nullptr,
nullptr},
757 {0,
"X", 0,
"X",
""},
758 {1,
"Y", 0,
"Y",
""},
759 {0,
nullptr, 0,
nullptr,
nullptr},
763 {0,
"X", 0,
"X",
""},
764 {1,
"Y", 0,
"Y",
""},
765 {2,
"Z", 0,
"Z",
""},
766 {0,
nullptr, 0,
nullptr,
nullptr},
770 {(1 << 0),
"X", 0,
"X",
""},
771 {(1 << 1),
"Y", 0,
"Y",
""},
772 {(1 << 2),
"Z", 0,
"Z",
""},
773 {0,
nullptr, 0,
nullptr,
nullptr},
782 "UVs are smoothed, corners on discontinuous boundary are kept sharp"},
784 "PRESERVE_CORNERS_AND_JUNCTIONS",
786 "Keep Corners, Junctions",
787 "UVs are smoothed, corners on discontinuous boundary and "
788 "junctions of 3 or more regions are kept sharp"},
790 "PRESERVE_CORNERS_JUNCTIONS_AND_CONCAVE",
792 "Keep Corners, Junctions, Concave",
793 "UVs are smoothed, corners on discontinuous boundary, "
794 "junctions of 3 or more regions and darts and concave corners are kept sharp"},
796 "PRESERVE_BOUNDARIES",
799 "UVs are smoothed, boundaries are kept sharp"},
801 {0,
nullptr, 0,
nullptr,
nullptr},
809 "Smooth boundaries, but corners are kept sharp"},
811 {0,
nullptr, 0,
nullptr,
nullptr},
818 "Natural Drawing Speed",
819 "Use recorded speed multiplied by a factor"},
824 "Set a fixed number of frames for all build animations"},
829 "Set a manual percentage to build"},
830 {0,
nullptr, 0,
nullptr,
nullptr},
836# include <fmt/format.h>
878 iter,
ptr, (
void *)uvp->projectors,
sizeof(
Object *), uvp->projectors_num, 0,
nullptr);
885 if (modifier_type !=
nullptr) {
886 return modifier_type->
srna;
888 return &RNA_Modifier;
891static void rna_Modifier_name_set(
PointerRNA *
ptr,
const char *value)
894 char oldname[
sizeof(md->
name)];
917static std::optional<std::string> rna_Modifier_path(
const PointerRNA *
ptr)
920 char name_esc[
sizeof(md->
name) * 2];
923 return fmt::format(
"modifiers[\"{}\"]", name_esc);
934 rna_Modifier_update(bmain, scene,
ptr);
940 rna_Modifier_update(bmain, scene,
ptr);
944static void rna_Modifier_is_active_set(
PointerRNA *
ptr,
bool value)
962static void rna_Modifier_use_pin_to_last_set(
PointerRNA *
ptr,
bool value)
973 md_iter = md_iter->
next;
980 md_iter = md_iter->
prev;
988# define RNA_MOD_VGROUP_NAME_SET(_type, _prop) \
989 static void rna_##_type##Modifier_##_prop##_set(PointerRNA *ptr, const char *value) \
991 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
992 rna_object_vgroup_name_set(ptr, value, tmd->_prop, sizeof(tmd->_prop)); \
995RNA_MOD_VGROUP_NAME_SET(Armature, defgrp_name);
996RNA_MOD_VGROUP_NAME_SET(Bevel, defgrp_name);
997RNA_MOD_VGROUP_NAME_SET(Cast, defgrp_name);
999RNA_MOD_VGROUP_NAME_SET(DataTransfer, defgrp_name);
1000RNA_MOD_VGROUP_NAME_SET(Decimate, defgrp_name);
1001RNA_MOD_VGROUP_NAME_SET(CorrectiveSmooth, defgrp_name);
1002RNA_MOD_VGROUP_NAME_SET(Displace, defgrp_name);
1003RNA_MOD_VGROUP_NAME_SET(Hook,
name);
1004RNA_MOD_VGROUP_NAME_SET(LaplacianDeform, anchor_grp_name);
1005RNA_MOD_VGROUP_NAME_SET(LaplacianSmooth, defgrp_name);
1007RNA_MOD_VGROUP_NAME_SET(
Mask, vgroup);
1008RNA_MOD_VGROUP_NAME_SET(MeshCache, defgrp_name);
1009RNA_MOD_VGROUP_NAME_SET(MeshDeform, defgrp_name);
1010RNA_MOD_VGROUP_NAME_SET(NormalEdit, defgrp_name);
1011RNA_MOD_VGROUP_NAME_SET(Shrinkwrap, vgroup_name);
1012RNA_MOD_VGROUP_NAME_SET(SimpleDeform, vgroup_name);
1013RNA_MOD_VGROUP_NAME_SET(Smooth, defgrp_name);
1014RNA_MOD_VGROUP_NAME_SET(Solidify, defgrp_name);
1015RNA_MOD_VGROUP_NAME_SET(Solidify, shell_defgrp_name);
1016RNA_MOD_VGROUP_NAME_SET(Solidify, rim_defgrp_name);
1017RNA_MOD_VGROUP_NAME_SET(SurfaceDeform, defgrp_name);
1018RNA_MOD_VGROUP_NAME_SET(UVWarp, vgroup_name);
1019RNA_MOD_VGROUP_NAME_SET(Warp, defgrp_name);
1020RNA_MOD_VGROUP_NAME_SET(Wave, defgrp_name);
1021RNA_MOD_VGROUP_NAME_SET(WeightVGEdit, defgrp_name);
1022RNA_MOD_VGROUP_NAME_SET(WeightVGEdit, mask_defgrp_name);
1023RNA_MOD_VGROUP_NAME_SET(WeightVGMix, defgrp_name_a);
1024RNA_MOD_VGROUP_NAME_SET(WeightVGMix, defgrp_name_b);
1025RNA_MOD_VGROUP_NAME_SET(WeightVGMix, mask_defgrp_name);
1026RNA_MOD_VGROUP_NAME_SET(WeightVGProximity, defgrp_name);
1027RNA_MOD_VGROUP_NAME_SET(WeightVGProximity, mask_defgrp_name);
1028RNA_MOD_VGROUP_NAME_SET(WeightedNormal, defgrp_name);
1029RNA_MOD_VGROUP_NAME_SET(Weld, defgrp_name);
1030RNA_MOD_VGROUP_NAME_SET(Wireframe, defgrp_name);
1031RNA_MOD_VGROUP_NAME_SET(GreasePencilWeightAngle, target_vgname);
1032RNA_MOD_VGROUP_NAME_SET(GreasePencilWeightProximity, target_vgname);
1033RNA_MOD_VGROUP_NAME_SET(GreasePencilLineart, vgname);
1034RNA_MOD_VGROUP_NAME_SET(GreasePencilBuild, target_vgname);
1036static void rna_ExplodeModifier_vgroup_get(
PointerRNA *
ptr,
char *value)
1042static int rna_ExplodeModifier_vgroup_length(
PointerRNA *
ptr)
1048static void rna_ExplodeModifier_vgroup_set(
PointerRNA *
ptr,
const char *value)
1054# undef RNA_MOD_VGROUP_NAME_SET
1058# define RNA_MOD_UVLAYER_NAME_SET(_type, _prop) \
1059 static void rna_##_type##Modifier_##_prop##_set(PointerRNA *ptr, const char *value) \
1061 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
1062 rna_object_uvlayer_name_set(ptr, value, tmd->_prop, sizeof(tmd->_prop)); \
1065RNA_MOD_UVLAYER_NAME_SET(MappingInfo, uvlayer_name);
1066RNA_MOD_UVLAYER_NAME_SET(UVProject, uvlayer_name);
1067RNA_MOD_UVLAYER_NAME_SET(UVWarp, uvlayer_name);
1068RNA_MOD_UVLAYER_NAME_SET(WeightVGEdit, mask_tex_uvlayer_name);
1069RNA_MOD_UVLAYER_NAME_SET(WeightVGMix, mask_tex_uvlayer_name);
1070RNA_MOD_UVLAYER_NAME_SET(WeightVGProximity, mask_tex_uvlayer_name);
1072# undef RNA_MOD_UVLAYER_NAME_SET
1088# define RNA_MOD_OBJECT_SET(_type, _prop, _obtype) \
1089 static void rna_##_type##Modifier_##_prop##_set( \
1090 PointerRNA *ptr, PointerRNA value, ReportList * ) \
1092 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
1093 modifier_object_set((Object *)ptr->owner_id, &tmd->_prop, _obtype, value); \
1100RNA_MOD_OBJECT_SET(Boolean,
object,
OB_MESH);
1101RNA_MOD_OBJECT_SET(Cast,
object,
OB_EMPTY);
1103RNA_MOD_OBJECT_SET(DataTransfer, ob_source,
OB_MESH);
1106RNA_MOD_OBJECT_SET(MeshDeform,
object,
OB_MESH);
1107RNA_MOD_OBJECT_SET(NormalEdit, target,
OB_EMPTY);
1108RNA_MOD_OBJECT_SET(Shrinkwrap, target,
OB_MESH);
1109RNA_MOD_OBJECT_SET(Shrinkwrap, auxTarget,
OB_MESH);
1110RNA_MOD_OBJECT_SET(SurfaceDeform, target,
OB_MESH);
1111RNA_MOD_OBJECT_SET(GreasePencilMirror,
object,
OB_EMPTY);
1112RNA_MOD_OBJECT_SET(GreasePencilTint,
object,
OB_EMPTY);
1113RNA_MOD_OBJECT_SET(GreasePencilLattice,
object,
OB_LATTICE);
1114RNA_MOD_OBJECT_SET(GreasePencilWeightProximity,
object,
OB_EMPTY);
1115RNA_MOD_OBJECT_SET(GreasePencilHook,
object,
OB_EMPTY);
1116RNA_MOD_OBJECT_SET(GreasePencilArmature,
object,
OB_ARMATURE);
1117RNA_MOD_OBJECT_SET(GreasePencilOutline,
object,
OB_EMPTY);
1118RNA_MOD_OBJECT_SET(GreasePencilShrinkwrap, target,
OB_MESH);
1119RNA_MOD_OBJECT_SET(GreasePencilShrinkwrap, aux_target,
OB_MESH);
1120RNA_MOD_OBJECT_SET(GreasePencilBuild,
object,
OB_EMPTY);
1135static bool rna_HookModifier_object_override_apply(
Main *bmain,
1143 const int len_dst = rnaapply_ctx.
len_src;
1144 const int len_src = rnaapply_ctx.
len_src;
1148 BLI_assert(len_dst == len_src && (!ptr_storage || len_dst == len_storage) && len_dst == 0);
1150 "Unsupported RNA override operation on Hook modifier target object pointer");
1162 if (target_src == target_dst) {
1166 hmd->object = target_src;
1167 if (target_src ==
nullptr) {
1175static void rna_HookModifier_subtarget_set(
PointerRNA *
ptr,
const char *value)
1184static int rna_HookModifier_vertex_indices_get_length(
const PointerRNA *
ptr,
1189 return (
length[0] = indexar_num);
1192static void rna_HookModifier_vertex_indices_get(
PointerRNA *
ptr,
int *values)
1195 if (hmd->
indexar !=
nullptr) {
1205 if (indices_num <= 0) {
1211 for (
int i = 0;
i < indices_num;
i++) {
1219 size_t size =
sizeof(int) * indices_num;
1226 for (
int i = 1;
i < indices_num;
i++) {
1227 if (buffer[
i] == buffer[
i - 1]) {
1255# undef RNA_MOD_OBJECT_SET
1274 switch (fmd->type) {
1286 rna_Modifier_dependency_update(bmain, scene,
ptr);
1289static void rna_MultiresModifier_level_range(
1298static bool rna_MultiresModifier_external_get(
PointerRNA *
ptr)
1306static void rna_MultiresModifier_filepath_get(
PointerRNA *
ptr,
char *value)
1314static void rna_MultiresModifier_filepath_set(
PointerRNA *
ptr,
const char *value)
1325static int rna_MultiresModifier_filepath_length(
PointerRNA *
ptr)
1333static int rna_ShrinkwrapModifier_face_cull_get(
PointerRNA *
ptr)
1339static void rna_ShrinkwrapModifier_face_cull_set(
PointerRNA *
ptr,
int value)
1345static bool rna_MeshDeformModifier_is_bound_get(
PointerRNA *
ptr)
1377 rna_Modifier_update(bmain, scene,
ptr);
1380static void rna_BevelModifier_weight_attribute_visit_for_search(
1398 visit_fn(visit_params);
1404static void rna_UVProjectModifier_num_projectors_set(
PointerRNA *
ptr,
int value)
1411 md->projectors[a] =
nullptr;
1420 rna_Modifier_update(bmain, scene,
ptr);
1423static void rna_OceanModifier_ocean_chop_set(
PointerRNA *
ptr,
float value)
1426 float old_value = omd->chop_amount;
1428 omd->chop_amount = value;
1430 if ((old_value == 0.0f && value > 0.0f) || (old_value > 0.0f && value == 0.0f)) {
1435static bool rna_LaplacianDeformModifier_is_bind_get(
PointerRNA *
ptr)
1452 rna_Modifier_update(bmain, scene,
ptr);
1454 if (cmd->object !=
nullptr) {
1455 Curve *curve =
static_cast<Curve *
>(cmd->object->data);
1465 rna_Modifier_update(bmain, scene,
ptr);
1467 if (amd->curve_ob !=
nullptr) {
1468 Curve *curve =
static_cast<Curve *
>(amd->curve_ob->data);
1492 rna_Modifier_dependency_update(bmain, scene,
ptr);
1513 rna_Modifier_dependency_update(bmain, scene,
ptr);
1535 Object *ob_src = dtmd->ob_source;
1555 tmp_item.identifier = tmp_item.name = dg->
name;
1564 Object *ob_src = dtmd->ob_source;
1587 for (
i = 0;
i < num_data;
i++) {
1598 Object *ob_src = dtmd->ob_source;
1602 "layers_vcol_vert_select_src") ?
1631 for (
int i = 0;
i < 2;
i++) {
1636 for (
int j = 0; j < num_data; j++) {
1637 tmp_item.value = idx++;
1685 tmp_item.identifier = tmp_item.name = dg->
name;
1699 if (ob_dst && ob_dst->
data) {
1704 me_dst =
static_cast<Mesh *
>(ob_dst->
data);
1710 for (
i = 0;
i < num_data;
i++) {
1727 if (dtmd->layers_select_src[multilayer_index] >= 0) {
1730 if (ob_dst && ob_dst->
data) {
1739 for (
int i = 0;
i < 2;
i++) {
1744 for (
int j = 0; j < num_data; j++) {
1745 tmp_item.value = idx++;
1769 bool support_advanced_mixing, support_threshold;
1778 dtmd->data_types, &support_advanced_mixing, &support_threshold);
1780 if (support_threshold) {
1787 if (support_advanced_mixing) {
1807 rna_Modifier_update(bmain, scene,
ptr);
1810static void rna_CorrectiveSmoothModifier_rest_source_update(
Main *bmain,
1818 &csmd->bind_coords_sharing_info);
1819 csmd->bind_coords_num = 0;
1822 rna_CorrectiveSmoothModifier_update(bmain, scene,
ptr);
1825static bool rna_CorrectiveSmoothModifier_is_bind_get(
PointerRNA *
ptr)
1828 return (csmd->bind_coords !=
nullptr);
1831static bool rna_SurfaceDeformModifier_is_bound_get(
PointerRNA *
ptr)
1836static bool rna_ParticleInstanceModifier_particle_system_poll(
PointerRNA *
ptr,
1864static void rna_ParticleInstanceModifier_particle_system_set(
PointerRNA *
ptr,
1882static void rna_Modifier_show_expanded_set(
PointerRNA *
ptr,
bool value)
1918 rna_Modifier_dependency_update(bmain, scene,
ptr);
1928 return &nmd.
runtime->eval_log->get_tree_log(compute_context.
hash());
1934 if (
auto *
log = get_nodes_modifier_log(nmd)) {
1935 log->ensure_node_warnings(nmd);
1936 return log->all_warnings;
1946 iter->
valid = !get_node_modifier_warnings(*nmd).is_empty();
1964static int rna_NodesModifier_node_warnings_length(
PointerRNA *
ptr)
1967 return get_node_modifier_warnings(*nmd).size();
1970static void rna_NodesModifierWarning_message_get(
PointerRNA *
ptr,
char *r_value)
1973 strcpy(r_value, warning->message.c_str());
1976static int rna_NodesModifierWarning_message_length(
PointerRNA *
ptr)
1979 return warning->
message.size();
1982static int rna_NodesModifierWarning_type_get(
PointerRNA *
ptr)
1985 return int(warning->type);
1995static void rna_Lineart_start_level_set(
PointerRNA *
ptr,
int value)
1999 value = std::clamp(value, 0, 128);
2000 lmd->level_start = value;
2001 lmd->level_end = std::max(value,
int(lmd->level_end));
2004static void rna_Lineart_end_level_set(
PointerRNA *
ptr,
int value)
2008 value = std::clamp(value, 0, 128);
2009 lmd->level_end = value;
2010 lmd->level_start = std::min(value,
int(lmd->level_start));
2044 const_cast<ID *
>(&
tree->id), &RNA_Node,
const_cast<bNode *
>(node));
2062static void rna_GreasePencilModifier_material_set(
PointerRNA *
ptr,
2083 "Cannot assign material '%s', it has to be used by the Grease Pencil object already",
2088# define RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(_type) \
2089 static void rna_##_type##Modifier_material_filter_set( \
2090 PointerRNA *ptr, PointerRNA value, ReportList *reports) \
2092 _type##ModifierData *tmd = static_cast<_type##ModifierData *>(ptr->data); \
2093 rna_GreasePencilModifier_material_set(ptr, value, reports, &tmd->influence.material); \
2096# define RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(_type) \
2097 static void rna_##_type##Modifier_vertex_group_name_set(PointerRNA *ptr, const char *value) \
2099 _type##ModifierData *tmd = static_cast<_type##ModifierData *>(ptr->data); \
2100 rna_object_vgroup_name_set(ptr, \
2102 tmd->influence.vertex_group_name, \
2103 sizeof(tmd->influence.vertex_group_name)); \
2106RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilColor);
2107RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilMirror);
2108RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilOffset);
2109RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilOpacity);
2110RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilSubdiv);
2111RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilTint);
2112RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilSmooth);
2113RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilNoise);
2114RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilThick);
2115RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilLattice);
2116RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilDash);
2117RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilMulti);
2118RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilLength);
2119RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilWeightAngle);
2120RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilArray);
2121RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilWeightProximity);
2122RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilHook);
2123RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilSimplify);
2124RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilEnvelope);
2125RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilOutline);
2126RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilShrinkwrap);
2127RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilBuild);
2128RNA_MOD_GREASE_PENCIL_MATERIAL_FILTER_SET(GreasePencilTexture);
2130RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilOffset);
2131RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilOpacity);
2132RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilTint);
2133RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilSmooth);
2134RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilNoise);
2135RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilThick);
2136RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilLattice);
2137RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilWeightAngle);
2138RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilWeightProximity);
2139RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilHook);
2140RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilArmature);
2141RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilSimplify);
2142RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilEnvelope);
2143RNA_MOD_GREASE_PENCIL_VERTEX_GROUP_SET(GreasePencilShrinkwrap);
2145static void rna_GreasePencilLineartModifier_material_set(
PointerRNA *
ptr,
2153 rna_GreasePencilModifier_material_set(
ptr, value, reports, ma_target);
2156static void rna_GreasePencilOpacityModifier_opacity_factor_range(
2167static void rna_GreasePencilOpacityModifier_opacity_factor_max_set(
PointerRNA *
ptr,
float value)
2172 std::min(value, 1.0f) :
2182 if (dmd->segments().contains_ptr(&dash_segment)) {
2190static std::optional<std::string> rna_GreasePencilDashModifierSegment_path(
const PointerRNA *
ptr)
2196 *ob, *dash_segment);
2202 char ds_name_esc[
sizeof(dash_segment->
name) * 2];
2205 return fmt::format(
"modifiers[\"{}\"].segments[\"{}\"]", name_esc, ds_name_esc);
2208static void rna_GreasePencilDashModifierSegment_name_set(
PointerRNA *
ptr,
const char *value)
2213 *ob, *dash_segment);
2216 const std::string oldname = dash_segment->
name;
2221 if (&ds != dash_segment && ds.name ==
name) {
2228 dash_segment->
name);
2233 char rna_path_prefix[36 +
sizeof(name_esc) + 1];
2234 SNPRINTF_UTF8(rna_path_prefix,
"modifiers[\"%s\"].segments", name_esc);
2286 if (tmd->segments().contains_ptr(&time_segment)) {
2294static std::optional<std::string> rna_GreasePencilTimeModifierSegment_path(
const PointerRNA *
ptr)
2306 char ds_name_esc[
sizeof(
segment->name) * 2];
2309 return fmt::format(
"modifiers[\"{}\"].segments[\"{}\"]", name_esc, ds_name_esc);
2312static void rna_GreasePencilTimeModifierSegment_name_set(
PointerRNA *
ptr,
const char *value)
2320 const std::string oldname =
segment->name;
2325 if (&ds != segment && ds.name ==
name) {
2337 char rna_path_prefix[36 +
sizeof(name_esc) + 1];
2338 SNPRINTF_UTF8(rna_path_prefix,
"modifiers[\"%s\"].segments", name_esc);
2355static void rna_GreasePencilTimeModifier_start_frame_set(
PointerRNA *
ptr,
int value)
2366static void rna_GreasePencilTimeModifier_end_frame_set(
PointerRNA *
ptr,
int value)
2377static void rna_GreasePencilOutlineModifier_outline_material_set(
PointerRNA *
ptr,
2385static int rna_GreasePencilShrinkwrapModifier_face_cull_get(
PointerRNA *
ptr)
2392static void rna_GreasePencilShrinkwrapModifier_face_cull_set(
PointerRNA *
ptr,
int value)
2410 prop,
nullptr,
"modifier.layout_panel_open_flag", (
int64_t(1) <<
id));
2430 prop,
"Quality",
"Accuracy of vertex positions, lower value is faster but less precise");
2449 "Create a smooth curved surface using the Catmull-Clark subdivision scheme"},
2451 {0,
nullptr, 0,
nullptr,
nullptr},
2459 "Subdivide polygons to reach a specified pixel size on screen"},
2464 "Subdivide to reach a specified edge length in object space. This is required to use "
2465 "adaptive subdivision for instanced meshes"},
2466 {0,
nullptr, 0,
nullptr,
nullptr},
2500 prop,
"Render Levels",
"Number of subdivisions to perform when rendering");
2510 prop,
"Use Creases",
"Use mesh crease information to sharpen edges or corners");
2516 prop,
"Use Custom Normals",
"Interpolates existing custom normals to resulting mesh");
2523 "Use Limit Surface",
2524 "Place vertices at the surface that would be produced with infinite "
2525 "levels of subdivision (smoothest possible shape)");
2532 prop,
"Use Adaptive Subdivision",
"Adaptively subdivide mesh based on camera distance");
2542 prop,
"Pixel Size",
"Target polygon pixel size for adaptive subdivision");
2549 prop,
"Edge Length",
"Target object space edge length for adaptive subdivision");
2567 "Use the local coordinate system for the texture coordinates"},
2572 "Use the global coordinate system for the texture coordinates"},
2577 "Use the linked object's local coordinate system for the texture coordinates"},
2578 {
MOD_DISP_MAP_UV,
"UV", 0,
"UV",
"Use UV coordinates for the texture coordinates"},
2579 {0,
nullptr, 0,
nullptr,
nullptr},
2601 prop,
nullptr,
nullptr,
"rna_MappingInfoModifier_uvlayer_name_set");
2607 prop,
"Texture Coordinate Object",
"Object to set the texture coordinates");
2731 prop,
"Total Levels",
"Number of subdivisions for which displacements are stored");
2737 prop,
"External",
"Store multires displacements outside the .blend file, to save memory");
2741 "rna_MultiresModifier_filepath_get",
2742 "rna_MultiresModifier_filepath_length",
2743 "rna_MultiresModifier_filepath_set");
2751 prop,
"Optimal Display",
"Skip drawing/rendering of interior subdivided edges");
2757 prop,
"Use Creases",
"Use mesh crease information to sharpen edges or corners");
2763 prop,
"Use Custom Normals",
"Interpolates existing custom normals to resulting mesh");
2770 "Make Sculpt Mode tools deform the base mesh while previewing the "
2771 "displacement of higher subdivision levels");
2792 prop,
nullptr,
"rna_LatticeModifier_object_set",
nullptr,
"rna_Lattice_object_poll");
2801 "Name of Vertex Group which determines influence of modifier per point");
2831 {0,
nullptr, 0,
nullptr,
nullptr},
2844 prop,
nullptr,
"rna_CurveModifier_object_set",
nullptr,
"rna_Curve_object_poll");
2853 "Name of Vertex Group which determines influence of modifier per point");
2943 prop,
"Clip",
"Prevent vertices from going through the mirror during transform");
2959 prop,
"Mirror U",
"Mirror the U texture coordinate around the flip offset point");
2965 prop,
"Mirror V",
"Mirror the V texture coordinate around the flip offset point");
2971 prop,
"Mirror UDIM",
"Mirror the texture coordinate around each tile center");
2981 "Amount to offset mirrored UVs flipping point from the 0.5 on the U axis");
2991 "Amount to offset mirrored UVs flipping point from the 0.5 point on the V axis");
3013 prop,
"Merge Distance",
"Distance within which mirrored vertices are merged");
3021 prop,
"Bisect Distance",
"Distance from the bisect plane within which vertices are removed");
3042 "Dissolve geometry to form planar polygons"},
3043 {0,
nullptr, 0,
nullptr,
nullptr},
3079 prop,
"Iterations",
"Number of times reduce the geometry (unsubdivide only)");
3105 prop,
"Triangulate",
"Keep triangulated faces resulting from decimation (collapse only)");
3131 prop,
"All Boundaries",
"Dissolve all vertices in between face boundaries (planar only)");
3146 prop,
"Face Count",
"The current number of faces in the decimated mesh");
3204 "Either the starting frame (for positive speed) or ending frame (for negative speed)");
3211 prop,
"Lifetime",
"Lifetime of the wave in frames, zero means infinite");
3218 prop,
"Damping Time",
"Number of frames in which the wave damps out after it dies");
3263 prop,
"Speed",
"Speed of the wave, towards the starting point when negative");
3285 "Distance between the top and the base of a wave, the higher the value, "
3286 "the more narrow the wave");
3309 prop,
nullptr,
"rna_ArmatureModifier_object_set",
nullptr,
"rna_Armature_object_poll");
3328 prop,
"Preserve Volume",
"Deform rotation interpolation with quaternions");
3336 "Use same input as previous modifier, and mix results using overall vgroup");
3344 "Name of Vertex Group which determines influence of modifier per point");
3365 srna,
"Hook Modifier",
"Hook modifier to modify the location of vertices");
3389 prop,
"Radius",
"If not zero, the distance from the hook where influence ends");
3400 prop,
"Hook Center",
"Center of the hook, used for falloff and display");
3407 prop,
"Matrix",
"Reverse the transformation between this object and its target");
3412 prop,
"Object",
"Parent Object for hook, also recalculates and clears offset");
3415 prop,
nullptr,
nullptr,
"rna_HookModifier_object_override_apply");
3424 "Name of Parent Bone for hook (if applicable), also recalculates and clears offset");
3438 "Name of Vertex Group which determines influence of modifier per point");
3450 "Indices of vertices bound to the modifier. For Bézier curves, "
3451 "handles count as additional vertices.");
3453 func =
RNA_def_function(srna,
"vertex_indices_set",
"rna_HookModifier_vertex_indices_set");
3455 func,
"Validates and assigns the array of vertex indices bound to the modifier");
3458 func,
"indices", 1,
nullptr, INT_MIN, INT_MAX,
"",
"Vertex Indices", 0, INT_MAX);
3484 prop,
"rna_SoftBodyModifier_settings_get",
nullptr,
nullptr,
nullptr);
3491 prop,
"rna_SoftBodyModifier_point_cache_get",
nullptr,
nullptr,
nullptr);
3505 "Use a mesh object as the operand for the Boolean operation"},
3510 "Use a collection of mesh objects as the operand for the Boolean operation"},
3511 {0,
nullptr, 0,
nullptr,
nullptr},
3519 "Keep the part of the mesh that is common between all operands"},
3525 "Combine meshes in a subtractive way"},
3526 {0,
nullptr, 0,
nullptr,
nullptr},
3534 "Simple solver with good performance, without support for overlapping geometry"},
3539 "Slower solver with the best results for coplanar faces"},
3544 "Fastest solver that works only on manifold meshes but gives better results"},
3545 {0,
nullptr, 0,
nullptr,
nullptr},
3553 "Set the material on new faces based on the order of the material slot lists. If a "
3554 "material does not exist on the modifier object, the face will use the same material slot "
3555 "or the first if the object does not have enough slots."},
3560 "Transfer materials from non-empty slots to the result mesh, adding new materials as "
3561 "necessary. For empty slots, fall back to using the same material index as the operand "
3563 {0,
nullptr, 0,
nullptr,
nullptr},
3576 prop,
nullptr,
"rna_BooleanModifier_object_set",
nullptr,
"rna_Mesh_object_poll");
3585 prop,
"Collection",
"Use mesh objects in this collection for Boolean operation");
3606 prop,
"Overlap Threshold",
"Threshold for checking overlapping geometry");
3638 "NO_CONNECT_REGIONS",
3640 "No Connect Regions",
3642 {0,
nullptr, 0,
nullptr,
nullptr},
3665 "Duplicate the object a certain number of times"},
3670 "Duplicate the object as many times as fits in a certain length"},
3671 {
MOD_ARR_FITCURVE,
"FIT_CURVE", 0,
"Fit Curve",
"Fit the duplicated objects to a curve"},
3672 {0,
nullptr, 0,
nullptr,
nullptr},
3705 prop,
nullptr,
"rna_ArrayModifier_curve_ob_set",
nullptr,
"rna_Curve_object_poll");
3718 prop,
"Constant Offset Displacement",
"Value for the distance between arrayed items");
3725 prop,
"Relative Offset",
"Add an offset relative to the object's bounding box");
3733 "Relative Offset Displacement",
3734 "The size of the geometry will determine the distance between arrayed items");
3746 prop,
"Merge End Vertices",
"Merge vertices in first and last duplicates");
3760 prop,
"Object Offset",
"Add another object's transformation to the total offset");
3768 "Use the location and rotation of another object to determine the distance and "
3769 "rotational change between arrayed items");
3777 prop,
nullptr,
"rna_ArrayModifier_start_cap_set",
nullptr,
"rna_Mesh_object_poll");
3784 prop,
nullptr,
"rna_ArrayModifier_end_cap_set",
nullptr,
"rna_Mesh_object_poll");
3812 srna,
"EdgeSplit Modifier",
"Edge splitting modifier to create sharp edges");
3847 "Use the texture's intensity value to displace in the X direction"},
3852 "Use the texture's intensity value to displace in the Y direction"},
3857 "Use the texture's intensity value to displace in the Z direction"},
3862 "Use the texture's intensity value to displace along the vertex normal"},
3867 "Use the texture's intensity value to displace along the (averaged) custom normal (falls "
3873 "Use the texture's RGB values to displace the mesh in the XYZ direction"},
3874 {0,
nullptr, 0,
nullptr,
nullptr},
3880 {0,
nullptr, 0,
nullptr,
nullptr},
3895 "Name of Vertex Group which determines influence of modifier per point");
3940 srna,
"UV Project Modifier",
"UV projection modifier to set UVs from a projector");
3962 "rna_UVProject_projectors_begin",
3963 "rna_iterator_array_next",
3964 "rna_iterator_array_end",
3965 "rna_iterator_array_get",
3978 prop,
"Aspect X",
"Horizontal aspect ratio (only used for camera projectors)");
3987 prop,
"Aspect Y",
"Vertical aspect ratio (only used for camera projectors)");
4012 prop,
"rna_UVProjector_object_get",
"rna_UVProjector_object_set",
nullptr,
nullptr);
4065 "Name of Vertex Group which determines influence of modifier per point");
4087 "Use the average of adjacent edge-vertices"},
4092 "Use the average of adjacent edge-vertices weighted by their length"},
4093 {0,
nullptr, 0,
nullptr,
nullptr},
4101 "Use base mesh vertex coordinates as the rest position"},
4106 "Use bind vertex coordinates for rest position"},
4107 {0,
nullptr, 0,
nullptr,
nullptr},
4110 srna =
RNA_def_struct(brna,
"CorrectiveSmoothModifier",
"Modifier");
4112 srna,
"Corrective Smooth Modifier",
"Correct distortion caused by deformation");
4160 "Name of Vertex Group which determines influence of modifier per point");
4162 prop,
nullptr,
nullptr,
"rna_CorrectiveSmoothModifier_defgrp_name_set");
4174 prop,
"Only Smooth",
"Apply smoothing without reconstructing the surface");
4180 prop,
"Pin Boundaries",
"Excludes boundary vertices from being smoothed");
4191 srna =
RNA_def_struct(brna,
"LaplacianSmoothModifier",
"Modifier");
4248 "Name of Vertex Group which determines influence of modifier per point");
4250 prop,
nullptr,
nullptr,
"rna_LaplacianSmoothModifier_defgrp_name_set");
4270 {0,
nullptr, 0,
nullptr,
nullptr},
4290 "Control object: if available, its location determines the center of the effect");
4318 prop,
"Size from Radius",
"Use radius as size of projection shape (0 = auto)");
4324 prop,
"Use Transform",
"Use object transform to control projection shape");
4340 "Only deform vertices within this distance from the center of the effect "
4341 "(leave as 0 for infinite.)");
4365 {0,
"VOLUME", 0,
"Volume",
"Bind to volume inside cage mesh"},
4366 {1,
"SURFACE", 0,
"Surface",
"Bind to surface of cage mesh"},
4367 {0,
nullptr, 0,
nullptr,
nullptr},
4373 srna,
"MeshDeform Modifier",
"Mesh deformation modifier to deform with other meshes");
4382 prop,
nullptr,
"rna_MeshDeformModifier_object_set",
nullptr,
"rna_Mesh_object_poll");
4412 "Recompute binding dynamically on top of other deformers "
4413 "(slower and more memory consuming)");
4431 srna =
RNA_def_struct(brna,
"ParticleSystemModifier",
"Modifier");
4456 "Use offset from the particle object in the instance object"},
4461 "Use world space offset in the instance object"},
4462 {0,
nullptr, 0,
nullptr,
nullptr},
4465 srna =
RNA_def_struct(brna,
"ParticleInstanceModifier",
"Modifier");
4488 "rna_ParticleInstanceModifier_particle_system_get",
4489 "rna_ParticleInstanceModifier_particle_system_set",
4491 "rna_ParticleInstanceModifier_particle_system_poll");
4582 "Relative offset of particles to use for instancing, to avoid overlap "
4583 "of multiple instances");
4594 prop,
"Value Layer Name",
"Custom data layer name for the randomized value");
4607 srna,
"Explode Modifier",
"Explosion effect modifier based on a particle system");
4615 "rna_ExplodeModifier_vgroup_get",
4616 "rna_ExplodeModifier_vgroup_length",
4617 "rna_ExplodeModifier_vgroup_set");
4719 {0,
"NONE", 0,
"None",
""},
4726 "Deflect fluids and influence the fluid flow"},
4727 {0,
nullptr, 0,
nullptr,
nullptr},
4796 "Collision Modifier",
4797 "Collision modifier defining modifier stack position used for collision");
4807 prop,
"rna_CollisionModifier_settings_get",
nullptr,
nullptr,
nullptr);
4819 {0,
"NONE", 0,
"None",
"Bevel the entire mesh by a constant amount"},
4824 "Only bevel edges with sharp enough angles between faces"},
4829 "Use bevel weights to determine how much bevel is applied in edge mode"},
4834 "Use vertex group weights to select whether vertex or edge is beveled"},
4835 {0,
nullptr, 0,
nullptr,
nullptr},
4845 "Amount is perpendicular distance from original edge to bevel face"},
4850 "Amount is percent of adjacent edge length"},
4855 "Amount is absolute distance along adjacent edge"},
4856 {0,
nullptr, 0,
nullptr,
nullptr},
4864 "The profile can be a concave or convex curve"},
4869 "The profile can be any arbitrary path between its endpoints"},
4870 {0,
nullptr, 0,
nullptr,
nullptr},
4880 "Set face strength on new and affected faces only"},
4882 {0,
nullptr, 0,
nullptr,
nullptr},
4889 {0,
nullptr, 0,
nullptr,
nullptr},
4895 {0,
nullptr, 0,
nullptr,
nullptr},
4904 "A cut-off at the end of each profile before the intersection"},
4905 {0,
nullptr, 0,
nullptr,
nullptr},
4911 {0,
nullptr, 0,
nullptr,
nullptr},
4916 srna,
"Bevel Modifier",
"Bevel modifier to make edges and vertices more rounded");
5002 prop,
"Profile Type",
"The type of shape used to rebuild a beveled section");
5015 prop,
"Material Index",
"Material index of generated faces, -1 for automatic");
5042 prop,
"Face Strength",
"Whether to set face strength, and which faces to set it on");
5074 prop,
"Vertex Mesh Method",
"The method to use to create the mesh at intersections");
5087 "Shrinkwrap Modifier",
5088 "Shrink wrapping modifier to shrink wrap and object to a target");
5104 prop,
"Snap Mode",
"Select how vertices are constrained to the target surface");
5111 "rna_ShrinkwrapModifier_face_cull_get",
5112 "rna_ShrinkwrapModifier_face_cull_set",
5117 "Stop vertices from projecting to a face on the target when facing towards/away");
5123 prop,
nullptr,
"rna_ShrinkwrapModifier_target_set",
nullptr,
"rna_Mesh_object_poll");
5131 prop,
nullptr,
"rna_ShrinkwrapModifier_auxTarget_set",
nullptr,
"rna_Mesh_object_poll");
5153 prop,
"Project Limit",
"Limit the distance used for projection (zero disables)");
5177 "Subdivision Levels",
5178 "Number of subdivisions that must be performed before extracting vertices' "
5179 "positions and normals");
5185 prop,
"Negative",
"Allow vertices to move in the negative direction of axis");
5191 prop,
"Positive",
"Allow vertices to move in the positive direction of axis");
5197 prop,
"Invert Cull",
"When projecting in the negative direction invert the face cull mode");
5216 {0,
nullptr, 0,
nullptr,
nullptr},
5235 prop,
nullptr,
"rna_MaskModifier_ob_arm_set",
nullptr,
"rna_Armature_object_poll");
5253 prop,
"Smooth",
"Use vertex group weights to cut faces at the weight contour");
5276 "Rotate around the Z axis of the modifier space"},
5281 "Bend the mesh over the Z axis of the modifier space"},
5286 "Linearly scale along Z axis of the modifier space"},
5291 "Stretch the object along the Z axis of the modifier space"},
5292 {0,
nullptr, 0,
nullptr,
nullptr},
5298 "SimpleDeform Modifier",
5299 "Simple deformation modifier to apply effects such as twisting and bending");
5316 prop,
nullptr,
nullptr,
"rna_SimpleDeformModifier_vgroup_name_set");
5381 "Surface modifier defining modifier stack position used for surface fields");
5393 "Output a solidified version of a mesh by simple extrusion"},
5398 "Output a manifold mesh even if the base mesh is non-manifold, "
5399 "where edges have 3 or more connecting faces. "
5400 "This method is slower."},
5401 {0,
nullptr, 0,
nullptr,
nullptr},
5409 "Most basic thickness calculation"},
5414 "Even thickness calculation which takes the angle between faces into account"},
5419 "Thickness calculation using constraints, most advanced"},
5420 {0,
nullptr, 0,
nullptr,
nullptr},
5429 "Round open perimeter shape"},
5434 "Flat open perimeter shape"},
5435 {0,
nullptr, 0,
nullptr,
nullptr},
5443 srna,
"Solidify Modifier",
"Create a solid skin, compensating for sharp angles");
5479 prop,
"Vertex Group Factor",
"Thickness factor to use for zero vertex group influence");
5520 prop,
"Rim Material Offset",
"Offset material index of generated rim faces");
5532 "Shell Vertex Group",
5533 "Vertex group that the generated shell geometry will be weighted to");
5535 prop,
nullptr,
nullptr,
"rna_SolidifyModifier_shell_defgrp_name_set");
5542 "Vertex group that the generated rim geometry will be weighted to");
5544 prop,
nullptr,
nullptr,
"rna_SolidifyModifier_rim_defgrp_name_set");
5551 "Create edge loops between the inner and outer surfaces on face edges "
5552 "(slow, disable when not needed)");
5560 "Maintain thickness by adjusting for sharp corners (slow, disable when not needed)");
5567 "High Quality Normals",
5568 "Calculate normals which result in more even thickness (slow, disable when not needed)");
5580 "Make faces use the minimal vertex weight assigned to their vertices "
5581 "(ensures new faces remain parallel to their original ones, slow, "
5582 "disable when not needed)");
5613 prop,
"Merge Threshold",
"Distance within which degenerated geometry is merged");
5694 prop,
"Calculate Order",
"Calculate the order of edges (needed for meshes, but not curves)");
5700 prop,
"Object Screw",
"Use the distance between the objects to make a screw");
5707 prop,
"Merge Vertices",
"Merge adjacent vertices (screw offset must be zero)");
5713 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
5719 prop,
"Stretch U",
"Stretch the U coordinates between 0 and 1 when UVs are present");
5725 prop,
"Stretch V",
"Stretch the V coordinates between 0 and 1 when UVs are present");
5732 prop,
"Object Angle",
"Use the angle between the objects rather than the fixed angle");
5827 const char *mask_flags,
5828 const int invert_vgroup_mask_flag,
5829 const char *mask_vgroup_setter,
5830 const char *mask_uvlayer_setter)
5839 "Use local generated coordinates of another object"},
5841 {0,
nullptr, 0,
nullptr,
nullptr},
5853 {0,
nullptr, 0,
nullptr,
nullptr},
5864 prop,
"Influence",
"Global influence of current modifications on vgroup");
5891 "Texture Coordinates",
5892 "Which texture coordinates "
5893 "to use for mapping");
5905 "Texture Coordinate Object",
5906 "Which object to take texture "
5907 "coordinates from");
5914 prop,
"Texture Coordinate Bone",
"Which bone to take texture coordinates from");
5934 "Map all values below 0.5 to 0.0, and all others to 1.0"},
5935 {0,
nullptr, 0,
nullptr,
nullptr},
5941 srna =
RNA_def_struct(brna,
"VertexWeightEditModifier",
"Modifier");
5943 srna,
"WeightVG Edit Modifier",
"Edit the weights of vertices in a group");
5953 prop,
nullptr,
nullptr,
"rna_WeightVGEditModifier_defgrp_name_set");
5972 "Normalize Weights",
5973 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
5985 "Add vertices with weight over threshold "
5993 "Remove vertices with weight below threshold "
6002 "Default weight a vertex will have if "
6003 "it is not in the vgroup");
6012 "Lower (inclusive) bound for a vertex's weight "
6013 "to be added to the vgroup");
6022 "Upper (inclusive) bound for a vertex's weight "
6023 "to be removed from the vgroup");
6033 "rna_WeightVGEditModifier_mask_defgrp_name_set",
6034 "rna_WeightVGEditModifier_mask_tex_uvlayer_name_set");
6040 {
MOD_WVG_MIX_SET,
"SET", 0,
"Replace",
"Replace VGroup A's weights by VGroup B's ones"},
6041 {
MOD_WVG_MIX_ADD,
"ADD", 0,
"Add",
"Add VGroup B's weights to VGroup A's ones"},
6042 {
MOD_WVG_MIX_SUB,
"SUB", 0,
"Subtract",
"Subtract VGroup B's weights from VGroup A's ones"},
6043 {
MOD_WVG_MIX_MUL,
"MUL", 0,
"Multiply",
"Multiply VGroup A's weights by VGroup B's ones"},
6044 {
MOD_WVG_MIX_DIV,
"DIV", 0,
"Divide",
"Divide VGroup A's weights by VGroup B's ones"},
6049 "Difference between VGroup A's and VGroup B's weights"},
6050 {
MOD_WVG_MIX_AVG,
"AVG", 0,
"Average",
"Average value of VGroup A's and VGroup B's weights"},
6051 {
MOD_WVG_MIX_MIN,
"MIN", 0,
"Minimum",
"Minimum of VGroup A's and VGroup B's weights"},
6052 {
MOD_WVG_MIX_MAX,
"MAX", 0,
"Maximum",
"Maximum of VGroup A's and VGroup B's weights"},
6053 {0,
nullptr, 0,
nullptr,
nullptr},
6057 {
MOD_WVG_SET_ALL,
"ALL", 0,
"All",
"Affect all vertices (might add some to VGroup A)"},
6058 {
MOD_WVG_SET_A,
"A", 0,
"VGroup A",
"Affect vertices in VGroup A"},
6063 "Affect vertices in VGroup B (might add some to VGroup A)"},
6068 "Affect vertices in at least one of both VGroups (might add some to VGroup A)"},
6069 {
MOD_WVG_SET_AND,
"AND", 0,
"VGroup A and B",
"Affect vertices in both groups"},
6070 {0,
nullptr, 0,
nullptr,
nullptr},
6076 srna =
RNA_def_struct(brna,
"VertexWeightMixModifier",
"Modifier");
6087 prop,
nullptr,
nullptr,
"rna_WeightVGMixModifier_defgrp_name_a_set");
6094 prop,
nullptr,
nullptr,
"rna_WeightVGMixModifier_defgrp_name_b_set");
6112 "Default weight a vertex will have if "
6113 "it is not in the first A vgroup");
6121 "Default weight a vertex will have if "
6122 "it is not in the second B vgroup");
6129 "How weights from vgroup B affect weights "
6142 "Normalize Weights",
6143 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
6153 "rna_WeightVGMixModifier_mask_defgrp_name_set",
6154 "rna_WeightVGMixModifier_mask_tex_uvlayer_name_set");
6164 "Use distance between affected and target objects"},
6169 "Use distance between affected object's vertices and target "
6170 "object, or target object's geometry"},
6171 {0,
nullptr, 0,
nullptr,
nullptr},
6178 {0,
nullptr, 0,
nullptr,
nullptr},
6193 "Map all values below 0.5 to 0.0, and all others to 1.0"},
6194 {0,
nullptr, 0,
nullptr,
nullptr},
6200 srna =
RNA_def_struct(brna,
"VertexWeightProximityModifier",
"Modifier");
6202 "WeightVG Proximity Modifier",
6203 "Set the weights of vertices in a group from a target object's "
6214 prop,
nullptr,
nullptr,
"rna_WeightVGProximityModifier_defgrp_name_set");
6229 "Proximity Geometry",
6230 "Use the shortest computed distance to target object's geometry "
6270 "Normalize Weights",
6271 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
6286 "rna_WeightVGProximityModifier_mask_defgrp_name_set",
6287 "rna_WeightVGProximityModifier_mask_tex_uvlayer_name_set");
6293 {
MOD_REMESH_CENTROID,
"BLOCKS", 0,
"Blocks",
"Output a blocky surface with no smoothing"},
6298 "Output a smooth surface with no sharp-features detection"},
6303 "Output a surface that reproduces sharp edges and corners from the input mesh"},
6308 "Output a mesh corresponding to the volume of the original mesh"},
6309 {0,
nullptr, 0,
nullptr,
nullptr},
6319 "Generate a new surface with regular topology that follows the shape of the input mesh");
6335 prop,
"Scale",
"The ratio of the largest dimension of the model over the size of the grid");
6344 "If removing disconnected pieces, minimum size of components to preserve as a ratio "
6345 "of the number of polygons in the largest component");
6353 prop,
"Octree Depth",
"Resolution of the octree; higher values give finer details");
6362 "Tolerance for outliers; lower values filter noise while higher values will reproduce "
6363 "edges closer to the input");
6375 "Size of the voxel in object space used for volume evaluation. Lower "
6376 "values preserve finer details.");
6385 "Reduces the final face count by simplifying geometry where detail is not needed, "
6386 "generating triangles. A value greater than 0 disables Fix Poles.");
6397 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
6413 "Generate ocean surface geometry at the specified resolution"},
6418 "Displace existing geometry according to simulation"},
6424 "Leaves geometry unchanged, but still runs simulation (to be used from texture)"},
6426 {0,
nullptr, 0,
nullptr,
nullptr},
6434 "Use for turbulent seas with foam"},
6436 "PIERSON_MOSKOWITZ",
6438 "Established Ocean",
6439 "Use for a large area, established ocean (Pierson-Moskowitz method)"},
6443 "Established Ocean (Sharp Peaks)",
6444 "Use for established oceans ('JONSWAP', Pierson-Moskowitz method) with peak sharpening"},
6446 "TEXEL_MARSEN_ARSLOE",
6449 "Use for shallow water ('JONSWAP', 'TMA' - Texel-Marsen-Arsloe method)"},
6450 {0,
nullptr, 0,
nullptr,
nullptr},
6469 prop,
"Size",
"Surface scale factor (does not affect the height of the waves)");
6495 "Output normals for bump mapping - disabling can speed up performance if it's not needed");
6508 prop,
"Generate Spray Map",
"Generate map of spray direction as a vertex color channel");
6521 prop,
"Spray Map",
"Name of the vertex color layer used for the spray direction map");
6530 prop,
"Render Resolution",
"Resolution of the generated surface for rendering and baking");
6539 prop,
"Viewport Resolution",
"Viewport resolution of the generated surface");
6549 "Size of the simulation domain (in meters), and of the generated geometry (in BU)");
6562 prop,
"Damping",
"Damp reflected waves going in opposite direction to the wind");
6583 prop,
"Wave Direction",
"Main direction of the waves when they are (partially) aligned");
6607 prop,
"Foam Fade",
"How much foam accumulates over time (baked ocean only)");
6614 prop,
"Foam Layer Name",
"Name of the vertex color layer used for foam");
6622 "Choppiness of the wave's crest (adds some horizontal component to the displacement)");
6647 "This is the distance from a lee shore, "
6648 "called the fetch, or the distance over which the wind blows with constant velocity. "
6649 "Used by 'JONSWAP' and 'TMA' models.");
6681 prop,
"Ocean is Cached",
"Whether the ocean is using cached data or simulating");
6714 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
6765 "Triangulate only polygons with vertex count greater than or equal to this number");
6773 "Try to preserve custom normals.\n"
6774 "Warning: Depending on chosen triangulation method, "
6775 "shading may not be fully preserved, \"Fixed\" method usually gives the best result here");
6786 {0,
nullptr, 0,
nullptr,
nullptr},
6794 "Replace vertex coordinates with cached values"},
6799 "Integrate deformation from this modifier's input with the mesh-cache coordinates "
6800 "(useful for shape keys)"},
6801 {0,
nullptr, 0,
nullptr,
nullptr},
6809 {0,
nullptr, 0,
nullptr,
nullptr},
6818 "Control playback using a frame-number "
6819 "(ignoring time FPS and start frame from the file)"},
6827 "Control playback using a value between 0 and 1"},
6828 {0,
nullptr, 0,
nullptr,
nullptr},
6834 {0,
nullptr, 0,
nullptr,
nullptr},
6893 "Name of the Vertex Group which determines the influence of the modifier per point");
6964 srna =
RNA_def_struct(brna,
"MeshSequenceCacheModifier",
"Modifier");
6982 "Path to the object in the Alembic archive used to lookup geometric data");
6991 {0,
nullptr, 0,
nullptr,
nullptr},
7004 prop,
"Vertex Interpolation",
"Allow interpolation of vertex positions");
7013 "Multiplier used to control the magnitude of the velocity vectors for time effects");
7024 srna =
RNA_def_struct(brna,
"LaplacianDeformModifier",
"Modifier");
7034 prop,
"Anchor Weights",
"Name of Vertex Group which determines Anchors");
7036 prop,
nullptr,
nullptr,
"rna_LaplacianDeformModifier_anchor_grp_name_set");
7067 {0,
nullptr, 0,
nullptr,
nullptr},
7092 prop,
"Vertex Group",
"Vertex group name for selecting the affected areas");
7104 prop,
"Only Loose Edges",
"Collapse edges without faces, cloth sewing edges");
7134 prop,
"Vertex Group Factor",
"Thickness factor to use for zero vertex group influence");
7167 prop,
"Offset Relative",
"Crease hub edges for improved subdivision surface");
7186 prop,
"Vertex Group",
"Vertex group name for selecting the affected areas");
7208 "Transfer active or all vertex groups"},
7214 "Transfer color attributes"},
7215 {0,
nullptr, 0,
nullptr,
nullptr},
7220 {
DT_TYPE_SEAM,
"SEAM", 0,
"UV Seam",
"Transfer UV seam mark"},
7221 {
DT_TYPE_CREASE,
"CREASE", 0,
"Crease",
"Transfer subdivision crease values"},
7224 {0,
nullptr, 0,
nullptr,
nullptr},
7228 {
DT_TYPE_LNOR,
"CUSTOM_NORMAL", 0,
"Custom Normals",
"Transfer custom normals"},
7233 "Transfer color attributes"},
7234 {
DT_TYPE_UV,
"UV", 0,
"UVs",
"Transfer UV layers"},
7235 {0,
nullptr, 0,
nullptr,
nullptr},
7244 "Transfer Freestyle face mark"},
7245 {0,
nullptr, 0,
nullptr,
nullptr},
7250 srna,
"Data Transfer Modifier",
"Modifier transferring some data from a source mesh");
7261 prop,
nullptr,
"rna_DataTransferModifier_ob_source_set",
nullptr,
"rna_Mesh_object_poll");
7265 "use_object_transform",
7268 "Evaluate source and destination meshes in global space");
7274 srna,
"use_vert_data",
false,
"Vertex Data",
"Enable vertex data transfer");
7278 prop =
RNA_def_boolean(srna,
"use_edge_data",
false,
"Edge Data",
"Enable edge data transfer");
7283 srna,
"use_loop_data",
false,
"Face Corner Data",
"Enable face corner data transfer");
7287 prop =
RNA_def_boolean(srna,
"use_poly_data",
false,
"Face Data",
"Enable face data transfer");
7294 DT_layer_vert_items,
7296 "Vertex Data Types",
7297 "Which vertex data layers to transfer");
7303 DT_layer_edge_items,
7306 "Which edge data layers to transfer");
7312 DT_layer_loop_items,
7314 "Face Corner Data Types",
7315 "Which face corner data layers to transfer");
7321 DT_layer_poly_items,
7324 "Which face data layers to transfer");
7334 "Method used to map source vertices to destination ones");
7343 "Method used to map source edges to destination ones");
7351 "Face Corner Mapping",
7352 "Method used to map source faces' corners to destination ones");
7361 "Method used to map source faces to destination ones");
7370 "Only Neighbor Geometry",
7371 "Source elements must be closer than given distance from destination one");
7382 "Maximum allowed distance between source and destination element, for non-topology mappings",
7396 "'Width' of rays (especially useful when raycasting against vertices or edges)",
7405 "islands_precision",
7409 "Islands Precision",
7410 "Factor controlling precision of islands handling "
7411 "(typically, 0.1 should be enough, higher values can make things really slow)",
7419 "layers_vgroup_select_src",
7422 "Source Layers Selection",
7423 "Which layers to transfer, in case of multi-layers types");
7426 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_src_itemf");
7430 "layers_vcol_vert_select_src",
7433 "Source Layers Selection",
7434 "Which layers to transfer, in case of multi-layers types");
7437 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_src_itemf");
7441 "layers_vcol_loop_select_src",
7444 "Source Layers Selection",
7445 "Which layers to transfer, in case of multi-layers types");
7448 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_src_itemf");
7452 "layers_uv_select_src",
7455 "Source Layers Selection",
7456 "Which layers to transfer, in case of multi-layers types");
7459 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_src_itemf");
7463 "layers_vgroup_select_dst",
7466 "Destination Layers Matching",
7467 "How to match source and destination layers");
7470 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_dst_itemf");
7474 "layers_vcol_vert_select_dst",
7477 "Destination Layers Matching",
7478 "How to match source and destination layers");
7481 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_dst_itemf");
7485 "layers_vcol_loop_select_dst",
7488 "Destination Layers Matching",
7489 "How to match source and destination layers");
7492 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_dst_itemf");
7496 "layers_uv_select_dst",
7499 "Destination Layers Matching",
7500 "How to match source and destination layers");
7503 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_layers_select_dst_itemf");
7512 "How to affect destination elements with source values");
7523 "Factor to use when applying data to destination (exact behavior depends on mix mode, "
7524 "multiplied with weights from vertex group when defined)",
7534 "Vertex group name for selecting the affected areas");
7537 prop,
nullptr,
nullptr,
"rna_DataTransferModifier_defgrp_name_set");
7541 srna,
"invert_vertex_group",
false,
"Invert",
"Invert vertex group influence");
7558 "From an ellipsoid (shape defined by the boundbox's dimensions, target is optional)"},
7563 "Normals 'track' (point to) the target object"},
7564 {0,
nullptr, 0,
nullptr,
nullptr},
7575 "Copy product of old and new normals (not cross product)"},
7576 {0,
nullptr, 0,
nullptr,
nullptr},
7581 srna,
"Normal Edit Modifier",
"Modifier affecting/generating custom normals");
7599 "Offset from object's center",
7613 prop,
"Mix Factor",
"How much of generated normals to mix with existing ones");
7625 "Lock Polygon Normals",
7626 "Do not flip polygons when their normals are not consistent "
7627 "with their newly computed custom vertex normals");
7633 prop,
"Vertex Group",
"Vertex group name for selecting/weighting the affected areas");
7645 prop,
nullptr,
"rna_NormalEditModifier_target_set",
nullptr,
nullptr);
7654 "Use same direction for all normals, from origin to target's center "
7655 "(Directional mode only)");
7666 srna =
RNA_def_struct(brna,
"SurfaceDeformModifier",
"Modifier");
7676 prop,
nullptr,
"rna_SurfaceDeformModifier_target_set",
nullptr,
"rna_Mesh_object_poll");
7683 prop,
"Interpolation Falloff",
"Controls how much nearby polygons influence deformation");
7694 prop,
"Vertex Group",
"Vertex group name for selecting/weighting the affected areas");
7696 prop,
nullptr,
nullptr,
"rna_SurfaceDeformModifier_defgrp_name_set");
7710 "Only record binding data for vertices matching the vertex group at the time of bind");
7732 "Generate face area weighted normals"},
7737 "Generate corner angle weighted normals"},
7739 "FACE_AREA_WITH_ANGLE",
7741 "Face Area & Angle",
7742 "Generated normals weighted by both face area and angle"},
7743 {0,
nullptr, 0,
nullptr,
nullptr},
7746 srna =
RNA_def_struct(brna,
"WeightedNormalModifier",
"Modifier");
7758 "Corrective factor applied to faces' weights, 50 is neutral, "
7759 "lower values increase weight of weak faces, "
7760 "higher values increase weight of strong faces");
7772 prop,
"Threshold",
"Threshold value for different weights to be considered equal");
7779 "Keep sharp edges as computed for default custom normals, "
7780 "instead of setting a single weighted normal for each vertex");
7786 prop,
"Vertex Group",
"Vertex group name for modifying the selected areas");
7788 prop,
nullptr,
nullptr,
"rna_WeightedNormalModifier_defgrp_name_set");
7817 prop,
"Data-Block Name",
"Name that is mapped to the referenced data-block");
7824 "Used when the data block is not local to the current .blend file but "
7825 "is linked from some library");
7832 prop,
nullptr,
nullptr,
"rna_NodesModifierBake_data_block_typef",
nullptr);
7849 srna =
RNA_def_struct(brna,
"NodesModifierBakeDataBlocks",
nullptr);
7852 srna,
"Data-Blocks",
"Collection of data-blocks that can be referenced by baked data");
7862 "Inherit from Modifier",
7863 "Use setting from the modifier"},
7868 "Pack the baked data into the .blend file"},
7873 "Store the baked data in a directory on disk"},
7874 {0,
nullptr, 0,
nullptr,
nullptr},
7882 "Pack the baked data into the .blend file"},
7887 "Store the baked data in a directory on disk"},
7888 {0,
nullptr, 0,
nullptr,
nullptr},
7898 {0,
nullptr, 0,
nullptr,
nullptr},
7926 prop,
"Custom Simulation Frame Range",
"Override the simulation frame range from the scene");
7932 prop,
"Custom Path",
"Specify a path where the baked data should be stored manually");
7949 "Identifier for this bake which remains unchanged even when the bake "
7950 "node is renamed, grouped or ungrouped");
7958 "Bake node or simulation output node that corresponds to this bake. "
7959 "This node may be deeply nested in the modifier node group. It can be "
7960 "none in some cases like missing linked data blocks.");
7962 prop,
"rna_NodesModifierBake_node_get",
nullptr,
nullptr,
nullptr);
8013 "Nodes Modifier Warning",
8014 "Warning created during evaluation of a geometry nodes modifier");
8020 "rna_NodesModifierWarning_message_get",
8021 "rna_NodesModifierWarning_message_length",
8060 prop,
nullptr,
nullptr,
nullptr,
"rna_NodesModifier_node_group_poll");
8067 prop,
"Simulation Bake Directory",
"Location on disk where the bake data is stored");
8101 "rna_NodesModifier_node_warnings_iterator_begin",
8102 "rna_NodesModifier_node_warnings_iterator_next",
8104 "rna_NodesModifier_node_warnings_iterator_get",
8105 "rna_NodesModifier_node_warnings_length",
8136 "Desired number of voxels along one axis"},
8141 "Desired voxel side length"},
8142 {0,
nullptr, 0,
nullptr,
nullptr},
8160 prop,
"Resolution Mode",
"Mode for how the desired voxel size is specified");
8167 prop,
"Voxel Size",
"Smaller values result in a higher resolution output");
8179 prop,
"Interior Band Width",
"Width of the gradient inside of the mesh");
8198 "Use the local coordinate system for the texture coordinates"},
8203 "Use the global coordinate system for the texture coordinates"},
8208 "Use the linked object's local coordinate system for the texture coordinates"},
8209 {0,
nullptr, 0,
nullptr,
nullptr},
8215 srna =
RNA_def_struct(brna,
"VolumeDisplaceModifier",
"Modifier");
8244 prop,
"Texture Mid Level",
"Subtracted from the texture color to get a displacement vector");
8252 "Texture Sample Radius",
8253 "Smaller values result in better performance but might cut off the volume");
8271 "Use resolution of the volume grid"},
8276 "Desired number of voxels along one axis"},
8281 "Desired voxel side length"},
8282 {0,
nullptr, 0,
nullptr,
nullptr},
8299 prop,
"Threshold",
"Voxels with a larger value are inside the generated mesh");
8308 "Reduces the final face count by simplifying geometry where detail is not needed");
8315 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
8320 prop,
"Grid Name",
"Grid in the volume object that is converted to a mesh");
8326 prop,
"Resolution Mode",
"Mode for how the desired voxel size is specified");
8333 prop,
"Voxel Size",
"Smaller values result in a higher resolution output");
8387 const char *material_set_fn)
8395 prop,
nullptr, material_set_fn,
nullptr,
"rna_GreasePencilModifier_material_poll");
8425 const char *vertex_group_name_set_fn)
8450 prop,
"Use Custom Curve",
"Use a custom curve to define a factor along the strokes");
8468 {0,
nullptr, 0,
nullptr,
nullptr},
8471 srna =
RNA_def_struct(brna,
"GreasePencilOpacityModifier",
"Modifier");
8478 srna,
"rna_GreasePencilOpacityModifier_material_filter_set");
8480 srna,
"rna_GreasePencilOpacityModifier_vertex_group_name_set");
8497 "rna_GreasePencilOpacityModifier_opacity_factor_max_set",
8498 "rna_GreasePencilOpacityModifier_opacity_factor_range");
8513 prop,
"Use Weight as Factor",
"Use vertex group weight as factor instead of influence");
8520 prop,
"Uniform Opacity",
"Replace the stroke opacity instead of modulating each point");
8535 {0,
nullptr, 0,
nullptr,
nullptr},
8538 srna =
RNA_def_struct(brna,
"GreasePencilSubdivModifier",
"Modifier");
8545 srna,
"rna_GreasePencilSubdivModifier_material_filter_set");
8578 {0,
nullptr, 0,
nullptr,
nullptr},
8581 srna =
RNA_def_struct(brna,
"GreasePencilColorModifier",
"Modifier");
8588 srna,
"rna_GreasePencilColorModifier_material_filter_set");
8633 {0,
nullptr, 0,
nullptr,
nullptr},
8639 {0,
nullptr, 0,
nullptr,
nullptr},
8642 srna =
RNA_def_struct(brna,
"GreasePencilTintModifier",
"Modifier");
8649 srna,
"rna_GreasePencilTintModifier_material_filter_set");
8651 srna,
"rna_GreasePencilTintModifier_vertex_group_name_set");
8692 prop,
nullptr,
"rna_GreasePencilTintModifier_object_set",
nullptr,
nullptr);
8707 prop,
"Use Weight as Factor",
"Use vertex group weight as factor instead of influence");
8720 {0,
nullptr, 0,
nullptr,
nullptr},
8723 static const EnumPropertyItem modifier_lineart_shadow_region_filtering[] = {
8728 "Not filtering any lines based on illumination region"},
8733 "Only selecting lines from illuminated regions"},
8738 "Only selecting lines from shaded regions"},
8740 "ILLUMINATED_ENCLOSED",
8742 "Illuminated (Enclosed Shapes)",
8743 "Selecting lines from lit regions, and make the combination of contour, light contour and "
8744 "shadow lines into enclosed shapes"},
8745 {0,
nullptr, 0,
nullptr,
nullptr},
8752 {0,
nullptr, 0,
nullptr,
nullptr},
8755 srna =
RNA_def_struct(brna,
"GreasePencilLineartModifier",
"Modifier");
8757 srna,
"Line Art Modifier",
"Generate Line Art strokes from selected source");
8766 prop,
"Use Custom Camera",
"Use custom camera instead of the active camera");
8773 "Intersection With Contour",
8774 "Treat intersection and contour lines as if they were the same type so "
8775 "they can be chained together");
8782 prop,
"All Lines",
"Treat all lines as the same line type so they can be chained together");
8789 "Instanced Objects",
8790 "Allow particle objects and face/vertex instances to show in Line Art");
8798 "Handle Overlapping Edges",
8799 "Allow edges in the same location (i.e. from edge split) to show properly. May run slower.");
8806 "Clipping Boundaries",
8807 "Allow lines generated by the near/far clipping plane to be shown");
8815 "Angles smaller than this will be treated as creases. Crease angle "
8816 "priority: object Line Art crease override > mesh auto smooth angle > "
8817 "Line Art default crease.");
8823 prop,
"Angle Splitting",
"Angle in screen space below which a stroke is split in two");
8832 prop,
"Smooth Tolerance",
"Strength of smoothing applied on jagged chains");
8857 prop,
"Filter Face Marks",
"Filter feature lines using Freestyle face marks");
8870 prop,
"Boundaries",
"Filter feature lines based on face mark boundaries");
8883 "Segments with an image distance smaller than this will be chained together");
8897 prop,
"Use Geometry Space",
"Use geometry distance for chaining instead of image space");
8904 prop,
"Preserve Details",
"Keep the zig-zag \"noise\" in initial chaining");
8911 "Overlapping Edge Types",
8912 "Allow an edge to have multiple overlapping types. This will create a "
8913 "separate stroke for each overlapping type.");
8918 "Stroke Depth Offset",
8919 "Move strokes slightly towards the camera to avoid clipping while "
8920 "preserve depth for the viewport");
8929 "Offset Towards Custom Camera",
8930 "Offset strokes towards selected camera instead of the active camera");
8938 prop,
"Camera Object",
"Use specified camera object for generating Line Art strokes");
8946 prop,
"Light Object",
"Use this light object to generate light contour");
8964 prop,
"Collection",
"Generate strokes from the objects in this collection");
8986 prop,
"Use Material",
"Generate strokes from borders between materials");
9002 "Use Light Contour",
9003 "Generate light/shadow separation lines from a reference light object");
9010 prop,
"Use Shadow",
"Project contour lines using a light source object");
9017 "Shadow Region Filtering",
9018 "Select feature lines that comes from lit or shaded regions. Will not "
9019 "affect cast shadow and light contour since they are at the border.");
9032 prop,
"Use Occlusion Range",
"Generate strokes from a range of occlusion levels");
9037 prop,
"Level Start",
"Minimum number of occlusions for the generated strokes");
9044 prop,
"Level End",
"Maximum number of occlusions for the generated strokes");
9051 prop,
"Layer",
"Grease Pencil layer to which assign the generated strokes");
9059 "rna_GreasePencilLineartModifier_material_set",
9061 "rna_GreasePencilModifier_material_poll");
9063 prop,
"Material",
"Grease Pencil material assigned to the generated strokes");
9069 "Source Vertex Group",
9070 "Match the beginning of vertex group names from mesh objects, match all when left empty");
9076 prop,
nullptr,
nullptr,
"rna_GreasePencilLineartModifier_vgname_set");
9089 "Use cached scene data from the first Line Art modifier in the stack. "
9090 "Certain settings will be unavailable.");
9097 "A margin to prevent strokes from ending abruptly at the edge of the image");
9118 prop,
"Use Material Mask",
"Use material masks to filter out occluded strokes");
9125 prop,
"Match Masks",
"Require matching all material masks instead of just one");
9137 prop,
"Match Intersection",
"Require matching all intersection masks instead of just one");
9149 prop,
"Crease On Smooth Surfaces",
"Allow crease edges to show inside smooth surfaces");
9163 "Image Boundary Trimming",
9164 "Trim all edges right at the boundary of image (including overscan region)");
9171 "Back Face Culling",
9172 "Remove all back faces to speed up calculation, this will create edges in "
9173 "different occlusion levels than when disabled");
9191 "Shadow Camera Size",
9192 "Represents the \"Orthographic Scale\" of an orthographic camera. "
9193 "If the camera is positioned at the light's location with this scale, it will "
9194 "represent the coverage of the shadow \"camera\".");
9201 "Invert Collection Filtering",
9202 "Select everything except lines from specified collection");
9218 srna =
RNA_def_struct(brna,
"GreasePencilSmoothModifier",
"Modifier");
9225 srna,
"rna_GreasePencilSmoothModifier_material_filter_set");
9227 srna,
"rna_GreasePencilSmoothModifier_vertex_group_name_set");
9243 prop,
"Affect Position",
"The modifier affects the position of the point");
9249 prop,
"Affect Strength",
"The modifier affects the color strength of the point");
9255 prop,
"Affect Thickness",
"The modifier affects the thickness of the point");
9261 prop,
"Affect UV",
"The modifier affects the UV rotation factor of the point");
9268 prop,
"Steps",
"Number of times to apply smooth (high numbers can reduce fps)");
9297 "Offset strokes by the same factor based on stroke draw order"},
9302 "Offset materials by the same factor"},
9303 {0,
nullptr, 0,
nullptr,
nullptr},
9306 srna =
RNA_def_struct(brna,
"GreasePencilOffsetModifier",
"Modifier");
9313 srna,
"rna_GreasePencilOffsetModifier_material_filter_set");
9315 srna,
"rna_GreasePencilOffsetModifier_vertex_group_name_set");
9380 prop,
"Uniform Scale",
"Use the same random seed for each scale axis for a uniform scale");
9394 {0,
nullptr, 0,
nullptr,
nullptr},
9397 srna =
RNA_def_struct(brna,
"GreasePencilNoiseModifier",
"Modifier");
9404 srna,
"rna_GreasePencilNoiseModifier_material_filter_set");
9406 srna,
"rna_GreasePencilNoiseModifier_vertex_group_name_set");
9484 {
GP_LENGTH_RELATIVE,
"RELATIVE", 0,
"Relative",
"Length in ratio to the stroke's length"},
9486 {0,
nullptr, 0,
nullptr,
nullptr},
9489 srna =
RNA_def_struct(brna,
"GreasePencilLengthModifier",
"Modifier");
9496 srna,
"rna_GreasePencilLengthModifier_material_filter_set");
9508 prop,
"Start Factor",
"Added length to the start of each stroke relative to its length");
9515 prop,
"End Factor",
"Added length to the end of each stroke relative to its length");
9522 prop,
"Start Factor",
"Absolute added length to the start of each stroke");
9535 prop,
"Random Start Factor",
"Size of random length added to the start of each stroke");
9542 prop,
"Random End Factor",
"Size of random length added to the end of each stroke");
9549 prop,
"Random Noise Offset",
"Smoothly offset each stroke's random value");
9573 "Defines what portion of the stroke is used for the calculation of the extension");
9590 prop,
"Invert Curvature",
"Invert the curvature of the stroke's extension");
9598 prop,
"Point Density",
"Multiplied by Start/End for the total added point count");
9605 "Segment Influence",
9606 "Factor to determine how much the length of the individual segments "
9607 "should influence the final computed curvature. Higher factors makes "
9608 "small segments influence the overall curvature less.");
9614 "Ignore points on the stroke that deviate from their neighbors by more "
9615 "than this angle when determining the extrapolation shape");
9628 srna =
RNA_def_struct(brna,
"GreasePencilMirrorModifier",
"Modifier");
9635 srna,
"rna_GreasePencilMirrorModifier_material_filter_set");
9644 prop,
nullptr,
"rna_GreasePencilMirrorModifier_object_set",
nullptr,
nullptr);
9671 srna =
RNA_def_struct(brna,
"GreasePencilThickModifierData",
"Modifier");
9678 srna,
"rna_GreasePencilThickModifier_material_filter_set");
9680 srna,
"rna_GreasePencilThickModifier_vertex_group_name_set");
9719 srna =
RNA_def_struct(brna,
"GreasePencilArrayModifier",
"Modifier");
9726 srna,
"rna_GreasePencilArrayModifier_material_filter_set");
9748 "Use the location and rotation of another object to determine the distance and "
9749 "rotational change between arrayed items");
9764 "The size of the geometry will determine the distance between arrayed items");
9796 "Index of the material used for generated strokes (0 keep original material)");
9807 prop,
"Use Object Offset",
"Add another object's transformation to the total offset");
9819 prop,
"Uniform Scale",
"Use the same random seed for each scale axis for a uniform scale");
9830 srna =
RNA_def_struct(brna,
"GreasePencilLatticeModifier",
"Modifier");
9832 srna,
"Grease Pencil Lattice Modifier",
"Deform strokes using a lattice object");
9838 srna,
"rna_GreasePencilLatticeModifier_material_filter_set");
9840 srna,
"rna_GreasePencilLatticeModifier_vertex_group_name_set");
9850 "rna_GreasePencilLatticeModifier_object_set",
9852 "rna_Lattice_object_poll");
9870 srna =
RNA_def_struct(brna,
"GreasePencilDashModifierSegment",
nullptr);
9878 prop,
nullptr,
nullptr,
"rna_GreasePencilDashModifierSegment_name_set");
9887 "The number of consecutive points from the original stroke to include in this segment");
9898 prop,
"Radius",
"The factor to apply to the original point's radius for the new points");
9904 prop,
"Opacity",
"The factor to apply to the original point's opacity for the new points");
9913 "Use this index on generated segment. -1 means using the existing material.");
9927 srna =
RNA_def_struct(brna,
"GreasePencilDashModifierData",
"Modifier");
9929 srna,
"Grease Pencil Dash Modifier",
"Create dot-dash effect for strokes");
9935 srna,
"rna_GreasePencilDashModifier_material_filter_set");
9945 "rna_GreasePencilDashModifier_segments_begin",
9946 "rna_iterator_array_next",
9947 "rna_iterator_array_end",
9948 "rna_iterator_array_get",
9963 "Offset into each stroke before the beginning of the dashed segment generation");
9975 {0,
"X", 0,
"X",
""},
9976 {1,
"Y", 0,
"Y",
""},
9977 {2,
"Z", 0,
"Z",
""},
9978 {0,
nullptr, 0,
nullptr,
nullptr},
9984 {0,
nullptr, 0,
nullptr,
nullptr},
9987 srna =
RNA_def_struct(brna,
"GreasePencilWeightAngleModifier",
"Modifier");
9994 srna,
"rna_GreasePencilWeightAngleModifier_material_filter_set");
9996 srna,
"rna_GreasePencilWeightAngleModifier_vertex_group_name_set");
10006 prop,
nullptr,
nullptr,
"rna_GreasePencilWeightAngleModifier_target_vgname_set");
10013 "Multiply Weights",
10014 "Multiply the calculated weights with the existing values in the vertex group");
10053 srna =
RNA_def_struct(brna,
"GreasePencilMultiplyModifier",
"Modifier");
10060 srna,
"rna_GreasePencilMultiModifier_material_filter_set");
10127 {0,
nullptr, 0,
nullptr,
nullptr},
10130 srna =
RNA_def_struct(brna,
"GreasePencilHookModifier",
"Modifier");
10132 srna,
"Hook Modifier",
"Hook modifier to modify the location of stroke points");
10138 srna,
"rna_GreasePencilHookModifier_material_filter_set");
10140 srna,
"rna_GreasePencilHookModifier_vertex_group_name_set");
10150 prop,
"Object",
"Parent Object for hook, also recalculates and clears offset");
10153 prop,
nullptr,
"rna_GreasePencilHookModifier_object_set",
nullptr,
nullptr);
10161 "Name of Parent Bone for hook (if applicable), also recalculates and clears offset");
10182 prop,
"Radius",
"If not zero, the distance from the hook where influence ends");
10194 prop,
"Matrix",
"Reverse the transformation between this object and its target");
10210 srna =
RNA_def_struct(brna,
"GreasePencilWeightProximityModifier",
"Modifier");
10217 srna,
"rna_GreasePencilWeightProximityModifier_material_filter_set");
10219 srna,
"rna_GreasePencilWeightProximityModifier_vertex_group_name_set");
10230 "Multiply Weights",
10231 "Multiply the calculated weights with the existing values in the vertex group");
10244 prop,
nullptr,
nullptr,
"rna_GreasePencilWeightProximityModifier_target_vgname_set");
10251 prop,
nullptr,
"rna_GreasePencilWeightProximityModifier_object_set",
nullptr,
nullptr);
10287 "Delete alternating vertices in the stroke, except extremes"},
10290 ICON_IPO_EASE_IN_OUT,
10292 "Use a Ramer-Douglas-Peucker algorithm to simplify the stroke preserving main shape"},
10295 ICON_IPO_EASE_IN_OUT,
10297 "Re-sample the stroke with segments of the specified length"},
10300 ICON_IPO_EASE_IN_OUT,
10302 "Simplify the stroke by merging vertices closer than a given distance"},
10303 {0,
nullptr, 0,
nullptr,
nullptr},
10306 srna =
RNA_def_struct(brna,
"GreasePencilSimplifyModifier",
"Modifier");
10313 srna,
"rna_GreasePencilSimplifyModifier_material_filter_set");
10315 srna,
"rna_GreasePencilSimplifyModifier_vertex_group_name_set");
10349 prop,
"Sharp Threshold",
"Preserve corners that have sharper angle than this threshold");
10367 srna =
RNA_def_struct(brna,
"GreasePencilArmatureModifier",
"Modifier");
10373 srna,
"rna_GreasePencilArmatureModifier_vertex_group_name_set");
10383 "rna_GreasePencilArmatureModifier_object_set",
10385 "rna_Armature_object_poll");
10402 prop,
"Preserve Volume",
"Deform rotation interpolation with quaternions");
10418 "Apply offset in usual animation direction"},
10423 "Apply offset in reverse animation direction"},
10428 "Loop back and forth"},
10429 {0,
nullptr, 0,
nullptr,
nullptr},
10432 srna =
RNA_def_struct(brna,
"GreasePencilTimeModifierSegment",
nullptr);
10440 prop,
nullptr,
nullptr,
"rna_GreasePencilTimeModifierSegment_name_set");
10476 "Apply offset in usual animation direction"},
10481 "Apply offset in reverse animation direction"},
10486 "Keep frame and do not change with time"},
10491 "Loop back and forth starting in reverse"},
10496 "List of chained animation segments"},
10497 {0,
nullptr, 0,
nullptr,
nullptr},
10500 srna =
RNA_def_struct(brna,
"GreasePencilTimeModifier",
"Modifier");
10516 "rna_GreasePencilTimeModifier_segments_begin",
10517 "rna_iterator_array_next",
10518 "rna_iterator_array_end",
10519 "rna_iterator_array_get",
10540 prop,
"Frame Offset",
"Number of frames to offset original keyframe number or frame to fix");
10553 prop,
nullptr,
"rna_GreasePencilTimeModifier_start_frame_set",
nullptr);
10569 prop,
"Keep Loop",
"Retiming end frames and move to start of animation to keep loop");
10575 prop,
"Custom Range",
"Define a custom range of frames to use in modifier");
10591 "Deform the stroke to best match the envelope shape"},
10596 "Add segments to create the envelope. Keep the original stroke."},
10601 "Add fill segments to create the envelope. Don't keep the original stroke."},
10602 {0,
nullptr, 0,
nullptr,
nullptr},
10605 srna =
RNA_def_struct(brna,
"GreasePencilEnvelopeModifier",
"Modifier");
10607 srna,
"Grease Pencil Envelope Modifier",
"Envelope stroke effect modifier");
10613 srna,
"rna_GreasePencilEnvelopeModifier_material_filter_set");
10615 srna,
"rna_GreasePencilEnvelopeModifier_vertex_group_name_set");
10631 prop,
"Spread Length",
"The number of points to skip to create straight segments");
10659 prop,
"Skip Segments",
"The number of generated segments to skip to reduce complexity");
10670 srna =
RNA_def_struct(brna,
"GreasePencilOutlineModifier",
"Modifier");
10677 srna,
"rna_GreasePencilOutlineModifier_material_filter_set");
10710 "rna_GreasePencilOutlineModifier_outline_material_set",
10712 "rna_GreasePencilModifier_material_poll");
10720 prop,
nullptr,
"rna_GreasePencilOutlineModifier_object_set",
nullptr,
nullptr);
10731 srna =
RNA_def_struct(brna,
"GreasePencilShrinkwrapModifier",
"Modifier");
10733 "Shrinkwrap Modifier",
10734 "Shrink wrapping modifier to shrink wrap an object to a target");
10740 srna,
"rna_GreasePencilShrinkwrapModifier_material_filter_set");
10742 srna,
"rna_GreasePencilShrinkwrapModifier_vertex_group_name_set");
10758 prop,
"Snap Mode",
"Select how vertices are constrained to the target surface");
10765 "rna_GreasePencilShrinkwrapModifier_face_cull_get",
10766 "rna_GreasePencilShrinkwrapModifier_face_cull_set",
10771 "Stop vertices from projecting to a face on the target when facing towards/away");
10778 "rna_GreasePencilShrinkwrapModifier_target_set",
10780 "rna_Mesh_object_poll");
10789 "rna_GreasePencilShrinkwrapModifier_aux_target_set",
10791 "rna_Mesh_object_poll");
10807 prop,
"Project Limit",
"Limit the distance used for projection (zero disables)");
10831 "Subdivision Levels",
10832 "Number of subdivisions that must be performed before extracting vertices' "
10833 "positions and normals");
10840 prop,
"Negative",
"Allow vertices to move in the negative direction of axis");
10847 prop,
"Positive",
"Allow vertices to move in the positive direction of axis");
10853 prop,
"Invert Cull",
"When projecting in the negative direction invert the face cull mode");
10866 prop,
"Steps",
"Number of times to apply smooth (high numbers can reduce FPS)");
10879 "Strokes appear/disappear one after the other, but only a single one changes at a time"},
10884 "Multiple strokes appear/disappear at once"},
10889 "Builds only new strokes (assuming 'additive' drawing)"},
10890 {0,
nullptr, 0,
nullptr,
nullptr},
10898 "Show points in the order they occur in each stroke "
10899 "(e.g. for animating lines being drawn)"},
10904 "Hide points from the end of each stroke to the start "
10905 "(e.g. for animating lines being erased)"},
10910 "Hide points in the order they occur in each stroke "
10911 "(e.g. for animating ink fading or vanishing after getting drawn)"},
10912 {0,
nullptr, 0,
nullptr,
nullptr},
10920 "All strokes start at same time (i.e. short strokes finish earlier)"},
10925 "All strokes end at same time (i.e. short strokes start later)"},
10926 {0,
nullptr, 0,
nullptr,
nullptr},
10932 srna =
RNA_def_struct(brna,
"GreasePencilBuildModifier",
"Modifier");
10939 srna,
"rna_GreasePencilBuildModifier_material_filter_set");
10956 prop,
"Transition",
"How are strokes animated (i.e. are they appearing or disappearing)");
10962 prop,
"Delay",
"Number of frames after each GP keyframe before the modifier has any effect");
10971 "Maximum number of frames that the build effect can run for "
10972 "(unless another GP keyframe occurs before this time has elapsed)");
10990 "Use drawing speed, a number of frames, or a manual factor to build strokes");
11013 prop,
"Restrict Frame Range",
"Only modify strokes during the specified frame range");
11021 prop,
"Restrict Visible Points",
"Use a percentage factor to determine the visible points");
11032 prop,
"Start Frame",
"Start Frame (when Restrict Frame Range is enabled)");
11057 prop,
nullptr,
nullptr,
"rna_GreasePencilBuildModifier_target_vgname_set");
11063 prop,
"Opacity Strength",
"How much strength fading applies on top of stroke opacity");
11070 prop,
"Thickness Strength",
"How much strength fading applies on top of stroke thickness");
11077 prop,
nullptr,
"rna_GreasePencilBuildModifier_object_set",
nullptr,
nullptr);
11094 "Keep the texture at a constant length regardless of the length of each stroke"},
11099 "Scale the texture to fit the length of each stroke"},
11100 {0,
nullptr, 0,
nullptr,
nullptr},
11108 "Manipulate only stroke texture coordinates"},
11113 "Manipulate only fill texture coordinates"},
11118 "Manipulate both stroke and fill texture coordinates"},
11119 {0,
nullptr, 0,
nullptr,
nullptr},
11122 srna =
RNA_def_struct(brna,
"GreasePencilTextureModifier",
"Modifier");
11124 srna,
"Grease Pencil Texture Modifier",
"Transform stroke texture coordinates Modifier");
11130 srna,
"rna_GreasePencilTextureModifier_material_filter_set");
11157 prop,
"Rotation",
"Additional rotation applied to dots and square strokes");
11249 prop,
"rna_Modifier_show_expanded_get",
"rna_Modifier_show_expanded_set");
11275 "is_override_data",
11277 "Override Modifier",
11278 "In a local override object, whether this modifier comes from the linked "
11279 "reference object, or is local to the override");
11289 "Apply this and all preceding deformation modifiers on splines' points rather than "
11290 "on filled curve/surface");
11300 "Time in seconds that the modifier took to evaluate. This is only set on evaluated objects. "
11301 "If multiple modifiers run in parallel, execution time is not a reliable metric.");
11308 "Uniquely identifies the modifier within the modifier stack that it is part of");
void BKE_animdata_fix_paths_rename_all(struct ID *ref_id, const char *prefix, const char *oldName, const char *newName)
Depsgraph * CTX_data_ensure_evaluated_depsgraph(const bContext *C)
Object * CTX_data_active_object(const bContext *C)
void BKE_curveprofile_init(struct CurveProfile *profile, short segments_len)
CustomData interface, see also DNA_customdata_types.h.
const char * CustomData_get_layer_name(const CustomData *data, eCustomDataType type, int n)
int CustomData_number_of_layers(const CustomData *data, eCustomDataType type)
bool CustomData_external_test(CustomData *data, eCustomDataType type)
int BKE_object_data_transfer_get_dttypes_item_types(int dtdata_types)
bool BKE_object_data_transfer_get_dttypes_capacity(int dtdata_types, bool *r_advanced_mixing, bool *r_threshold)
void BKE_fluid_modifier_create_type_data(struct FluidModifierData *fmd)
void BKE_fluid_modifier_free(struct FluidModifierData *fmd)
void id_lib_extern(ID *id)
void id_us_plus_no_lib(ID *id)
General operations, lookup, etc. for materials.
int BKE_object_material_index_get(Object *ob, const Material *ma)
const ModifierTypeInfo * BKE_modifier_get_info(ModifierType type)
void BKE_modifier_unique_name(ListBase *modifiers, ModifierData *md)
void multires_force_external_reload(Object *object)
General operations, lookup, etc. for blender objects.
Mesh * BKE_object_get_evaluated_mesh(const Object *object_eval)
Object * BKE_object_pose_armature_get(Object *ob)
void BKE_object_modifier_hook_reset(Object *ob, HookModifierData *hmd)
void BKE_ocean_free_modifier_cache(struct OceanModifierData *omd)
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
int BLI_findindex(const ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void * BLI_findlink(const ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
#define LISTBASE_FOREACH(type, var, list)
MINLINE int max_ii(int a, int b)
int BLI_sortutil_cmp_int(const void *a_, const void *b_)
char * STRNCPY(char(&dst)[N], const char *src)
size_t BLI_str_escape(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1
#define SNPRINTF_UTF8(dst, format,...)
#define STRNCPY_UTF8(dst, src)
size_t void BLI_uniquename_cb(blender::FunctionRef< bool(blender::StringRefNull)> unique_check, const char *defname, char delim, char *name, size_t name_maxncpy) ATTR_NONNULL(2
#define UNUSED_VARS_NDEBUG(...)
#define SET_FLAG_FROM_TEST(value, test, flag)
#define BLT_I18NCONTEXT_AMOUNT
#define BLT_I18NCONTEXT_MODIFIER
#define BLT_I18NCONTEXT_ID_CACHEFILE
#define BLT_I18NCONTEXT_ID_SIMULATION
#define BLT_I18NCONTEXT_ID_ID
#define BLT_I18NCONTEXT_ID_CURVE_LEGACY
#define BLT_I18NCONTEXT_ID_GPENCIL
#define BLT_I18NCONTEXT_ID_PARTICLESETTINGS
#define BLT_I18NCONTEXT_OPERATOR_DEFAULT
#define BLT_I18NCONTEXT_ID_MESH
void DEG_id_tag_update(ID *id, unsigned int flags)
void DEG_relations_tag_update(Main *bmain)
T * DEG_get_evaluated(const Depsgraph *depsgraph, T *id)
#define ID_IS_LINKED(_id)
#define MAX_CUSTOMDATA_LAYER_NAME_NO_PREFIX
@ GP_WEIGHT_INVERT_OUTPUT
@ GP_WEIGHT_MULTIPLY_DATA
@ MOD_LINEART_EDGE_FLAG_PROJECTED_SHADOW
@ MOD_LINEART_EDGE_FLAG_CONTOUR
@ MOD_LINEART_EDGE_FLAG_LIGHT_CONTOUR
@ MOD_LINEART_EDGE_FLAG_INTERSECTION
@ MOD_LINEART_EDGE_FLAG_CREASE
@ MOD_LINEART_EDGE_FLAG_MATERIAL
@ MOD_LINEART_EDGE_FLAG_EDGE_MARK
@ MOD_LINEART_EDGE_FLAG_LOOSE
@ MOD_LINEART_FILTER_FACE_MARK
@ MOD_LINEART_FILTER_FACE_MARK_BOUNDARIES
@ MOD_LINEART_USE_CREASE_ON_SMOOTH_SURFACES
@ MOD_LINEART_USE_IMAGE_BOUNDARY_TRIMMING
@ MOD_LINEART_LOOSE_AS_CONTOUR
@ MOD_LINEART_CHAIN_PRESERVE_DETAILS
@ MOD_LINEART_USE_BACK_FACE_CULLING
@ MOD_LINEART_CHAIN_LOOSE_EDGES
@ MOD_LINEART_USE_CUSTOM_CAMERA
@ MOD_LINEART_USE_CREASE_ON_SHARP_EDGES
@ MOD_LINEART_INVERT_SOURCE_VGROUP
@ MOD_LINEART_EVERYTHING_AS_CONTOUR
@ MOD_LINEART_ALLOW_DUPLI_OBJECTS
@ MOD_LINEART_MATCH_OUTPUT_VGROUP
@ MOD_LINEART_CHAIN_GEOMETRY_SPACE
@ MOD_LINEART_FILTER_FACE_MARK_KEEP_CONTOUR
@ MOD_LINEART_INTERSECTION_AS_CONTOUR
@ MOD_LINEART_ALLOW_OVERLAP_EDGE_TYPES
@ MOD_LINEART_ALLOW_OVERLAPPING_EDGES
@ MOD_LINEART_ALLOW_CLIPPING_BOUNDARIES
@ MOD_LINEART_FILTER_FACE_MARK_INVERT
@ GP_LENGTH_INVERT_CURVATURE
@ GP_LENGTH_USE_CURVATURE
@ DT_LAYERS_VGROUP_SRC_BONE_SELECT
@ DT_LAYERS_VGROUP_SRC_BONE_DEFORM
#define MOD_SHRINKWRAP_CULL_TARGET_MASK
@ DT_MULTILAYER_INDEX_MDEFORMVERT
@ DT_MULTILAYER_INDEX_VCOL_VERT
@ DT_MULTILAYER_INDEX_VCOL_LOOP
@ MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Z_AXIS
@ MREMAP_MODE_VERT_EDGE_NEAREST
@ MREMAP_MODE_LOOP_POLYINTERP_NEAREST
@ MREMAP_MODE_VERT_POLYINTERP_VNORPROJ
@ MREMAP_MODE_VERT_FACE_NEAREST
@ MREMAP_MODE_EDGE_POLY_NEAREST
@ MREMAP_MODE_VERT_EDGEINTERP_NEAREST
@ MREMAP_MODE_VERT_NEAREST
@ MREMAP_MODE_LOOP_NEAREST_POLYNOR
@ MREMAP_MODE_EDGE_VERT_NEAREST
@ MREMAP_MODE_EDGE_NEAREST
@ MREMAP_MODE_LOOP_POLYINTERP_LNORPROJ
@ MREMAP_MODE_LOOP_NEAREST_LOOPNOR
@ MREMAP_MODE_LOOP_POLY_NEAREST
@ MREMAP_MODE_EDGE_EDGEINTERP_VNORPROJ
@ MREMAP_MODE_POLY_POLYINTERP_PNORPROJ
@ MREMAP_MODE_POLY_NEAREST
@ MREMAP_MODE_VERT_POLYINTERP_NEAREST
@ MOD_SHRINKWRAP_TARGET_PROJECT
@ MOD_SHRINKWRAP_NEAREST_VERTEX
@ MOD_SHRINKWRAP_NEAREST_SURFACE
@ MOD_SHRINKWRAP_ON_SURFACE
@ MOD_SHRINKWRAP_ABOVE_SURFACE
@ MOD_SHRINKWRAP_OUTSIDE_SURFACE
@ CDT_MIX_REPLACE_BELOW_THRESHOLD
@ CDT_MIX_REPLACE_ABOVE_THRESHOLD
@ GP_NOISE_RANDOM_KEYFRAME
@ MOD_SHRINKWRAP_PROJECT_ALLOW_POS_DIR
@ MOD_SHRINKWRAP_CULL_TARGET_FRONTFACE
@ MOD_SHRINKWRAP_PROJECT_ALLOW_NEG_DIR
@ MOD_SHRINKWRAP_CULL_TARGET_BACKFACE
@ MOD_SHRINKWRAP_INVERT_VGROUP
@ MOD_SHRINKWRAP_INVERT_CULL_TARGET
@ MOD_BEVEL_HARDEN_NORMALS
@ MOD_BEVEL_INVERT_VGROUP
@ MOD_SMOOTH_INVERT_VGROUP
@ eModifierFlag_OverrideLibrary_Local
@ NODES_MODIFIER_BAKE_TARGET_PACKED
@ NODES_MODIFIER_BAKE_TARGET_INHERIT
@ NODES_MODIFIER_BAKE_TARGET_DISK
@ MOD_GREASE_PENCIL_MULTIPLY_ENABLE_FADING
@ MOD_REMESH_SMOOTH_SHADING
@ MOD_TRIANGULATE_QUAD_SHORTEDGE
@ MOD_TRIANGULATE_QUAD_FIXED
@ MOD_TRIANGULATE_QUAD_LONGEDGE
@ MOD_TRIANGULATE_QUAD_BEAUTY
@ MOD_TRIANGULATE_QUAD_ALTERNATE
@ eWarp_Falloff_InvSquare
@ LINEART_SHADOW_FILTER_ILLUMINATED_ENCLOSED_SHAPES
@ LINEART_SHADOW_FILTER_NONE
@ LINEART_SHADOW_FILTER_SHADED
@ LINEART_SHADOW_FILTER_ILLUMINATED
@ MOD_DATATRANSFER_USE_VERT
@ MOD_DATATRANSFER_USE_EDGE
@ MOD_DATATRANSFER_OBSRC_TRANSFORM
@ MOD_DATATRANSFER_MAP_MAXDIST
@ MOD_DATATRANSFER_INVERT_VGROUP
@ MOD_DATATRANSFER_USE_LOOP
@ MOD_DATATRANSFER_USE_POLY
@ MOD_GREASE_PENCIL_SMOOTH_MOD_LOCATION
@ MOD_GREASE_PENCIL_SMOOTH_MOD_STRENGTH
@ MOD_GREASE_PENCIL_SMOOTH_KEEP_SHAPE
@ MOD_GREASE_PENCIL_SMOOTH_MOD_UV
@ MOD_GREASE_PENCIL_SMOOTH_SMOOTH_ENDS
@ MOD_GREASE_PENCIL_SMOOTH_MOD_THICKNESS
@ eMultiresModifierFlag_UseSculptBaseMesh
@ eMultiresModifierFlag_UseCrease
@ eMultiresModifierFlag_UseCustomNormals
@ eMultiresModifierFlag_ControlEdges
@ MOD_OCEAN_GENERATE_NORMALS
@ MOD_OCEAN_GENERATE_FOAM
@ MOD_OCEAN_GENERATE_SPRAY
@ LINEART_GPENCIL_INTERSECTION_MATCH
@ LINEART_GPENCIL_MATERIAL_MASK_MATCH
@ LINEART_GPENCIL_MATERIAL_MASK_ENABLE
@ eModifierMode_ApplyOnSpline
@ GREASE_PENCIL_INFLUENCE_USE_LAYER_GROUP_FILTER
@ GREASE_PENCIL_INFLUENCE_INVERT_VERTEX_GROUP
@ GREASE_PENCIL_INFLUENCE_USE_MATERIAL_PASS_FILTER
@ GREASE_PENCIL_INFLUENCE_USE_LAYER_PASS_FILTER
@ GREASE_PENCIL_INFLUENCE_INVERT_LAYER_FILTER
@ GREASE_PENCIL_INFLUENCE_USE_CUSTOM_CURVE
@ GREASE_PENCIL_INFLUENCE_INVERT_MATERIAL_PASS_FILTER
@ GREASE_PENCIL_INFLUENCE_INVERT_MATERIAL_FILTER
@ GREASE_PENCIL_INFLUENCE_INVERT_LAYER_PASS_FILTER
@ MOD_LAPLACIANSMOOTH_PRESERVE_VOLUME
@ MOD_LAPLACIANSMOOTH_NORMALIZED
@ MOD_LAPLACIANSMOOTH_INVERT_VGROUP
@ MOD_WEIGHTEDNORMAL_MODE_FACE
@ MOD_WEIGHTEDNORMAL_MODE_FACE_ANGLE
@ MOD_WEIGHTEDNORMAL_MODE_ANGLE
@ MOD_LATTICE_INVERT_VGROUP
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_EVEN
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_FIXED
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_CONSTRAINTS
@ eBooleanModifierSolver_Float
@ eBooleanModifierSolver_Manifold
@ eBooleanModifierSolver_Mesh_Arr
@ MOD_SKIN_SMOOTH_SHADING
@ MOD_GREASE_PENCIL_WEIGHT_ANGLE_SPACE_WORLD
@ MOD_GREASE_PENCIL_WEIGHT_ANGLE_SPACE_LOCAL
@ LINEART_SILHOUETTE_FILTER_NONE
@ LINEART_SILHOUETTE_FILTER_INDIVIDUAL
@ LINEART_SILHOUETTE_FILTER_GROUP
@ eParticleInstanceFlag_Parents
@ eParticleInstanceFlag_Alive
@ eParticleInstanceFlag_Dead
@ eParticleInstanceFlag_Children
@ eParticleInstanceFlag_Unborn
@ eParticleInstanceFlag_Path
@ eParticleInstanceFlag_UseSize
@ eParticleInstanceFlag_KeepShape
@ MOD_GREASE_PENCIL_HOOK_UNIFORM_SPACE
@ MOD_SIMPLEDEFORM_LOCK_AXIS_Z
@ MOD_SIMPLEDEFORM_LOCK_AXIS_X
@ MOD_SIMPLEDEFORM_LOCK_AXIS_Y
@ MOD_GREASE_PENCIL_OFFSET_UNIFORM_RANDOM_SCALE
@ MOD_GREASE_PENCIL_MIRROR_AXIS_Z
@ MOD_GREASE_PENCIL_MIRROR_AXIS_X
@ MOD_GREASE_PENCIL_MIRROR_AXIS_Y
@ SUBSURF_TYPE_CATMULL_CLARK
@ MOD_BEVEL_PROFILE_CUSTOM
@ MOD_BEVEL_PROFILE_SUPERELLIPSE
@ MOD_REMESH_SHARP_FEATURES
@ MOD_MESHCACHE_INVERT_VERTEX_GROUP
@ eBooleanModifierMaterialMode_Index
@ eBooleanModifierMaterialMode_Transfer
@ MOD_GREASE_PENCIL_OPACITY_USE_WEIGHT_AS_FACTOR
@ MOD_GREASE_PENCIL_OPACITY_USE_UNIFORM_OPACITY
@ MOD_GREASE_PENCIL_ARRAY_USE_OFFSET
@ MOD_GREASE_PENCIL_ARRAY_USE_RELATIVE
@ MOD_GREASE_PENCIL_ARRAY_USE_OB_OFFSET
@ MOD_GREASE_PENCIL_ARRAY_UNIFORM_RANDOM_SCALE
@ MOD_NORMALEDIT_MODE_RADIAL
@ MOD_NORMALEDIT_MODE_DIRECTIONAL
@ MOD_WIREFRAME_OFS_RELATIVE
@ MOD_WIREFRAME_INVERT_VGROUP
@ MOD_MESHCACHE_FLIP_AXIS_X
@ MOD_WVG_EDIT_INVERT_VGROUP_MASK
@ MOD_WVG_EDIT_WEIGHTS_NORMALIZE
@ SUBSURF_BOUNDARY_SMOOTH_ALL
@ SUBSURF_BOUNDARY_SMOOTH_PRESERVE_CORNERS
@ eBooleanModifierBMeshFlag_BMesh_NoDissolve
@ eBooleanModifierBMeshFlag_BMesh_Separate
@ eBooleanModifierBMeshFlag_BMesh_NoConnectRegions
@ MOD_EDGESPLIT_FROMANGLE
@ MOD_WVG_PROXIMITY_WEIGHTS_NORMALIZE
@ MOD_WVG_PROXIMITY_INVERT_VGROUP_MASK
@ MOD_WVG_PROXIMITY_GEOM_VERTS
@ MOD_WVG_PROXIMITY_INVERT_FALLOFF
@ MOD_WVG_PROXIMITY_GEOM_EDGES
@ MOD_WVG_PROXIMITY_GEOM_FACES
@ MOD_GREASE_PENCIL_BUILD_TIMEMODE_PERCENTAGE
@ MOD_GREASE_PENCIL_BUILD_TIMEMODE_DRAWSPEED
@ MOD_GREASE_PENCIL_BUILD_TIMEMODE_FRAMES
@ MOD_GREASE_PENCIL_BUILD_TIMEALIGN_START
@ MOD_GREASE_PENCIL_BUILD_TIMEALIGN_END
@ MOD_GREASE_PENCIL_THICK_WEIGHT_FACTOR
@ MOD_GREASE_PENCIL_THICK_NORMALIZE
@ MOD_GREASE_PENCIL_SIMPLIFY_FIXED
@ MOD_GREASE_PENCIL_SIMPLIFY_MERGE
@ MOD_GREASE_PENCIL_SIMPLIFY_ADAPTIVE
@ MOD_GREASE_PENCIL_SIMPLIFY_SAMPLE
@ NODES_MODIFIER_PANEL_MANAGE
@ NODES_MODIFIER_PANEL_WARNINGS
@ NODES_MODIFIER_PANEL_OUTPUT_ATTRIBUTES
@ NODES_MODIFIER_PANEL_NAMED_ATTRIBUTES
@ NODES_MODIFIER_PANEL_BAKE
@ NODES_MODIFIER_PANEL_BAKE_DATA_BLOCKS
@ MOD_GREASE_PENCIL_TIME_MODE_FIX
@ MOD_GREASE_PENCIL_TIME_MODE_CHAIN
@ MOD_GREASE_PENCIL_TIME_MODE_PINGPONG
@ MOD_GREASE_PENCIL_TIME_MODE_NORMAL
@ MOD_GREASE_PENCIL_TIME_MODE_REVERSE
@ MOD_OCEAN_GEOM_GENERATE
@ MOD_OCEAN_GEOM_SIM_ONLY
@ MOD_OCEAN_GEOM_DISPLACE
@ NODES_MODIFIER_BAKE_CUSTOM_PATH
@ NODES_MODIFIER_BAKE_CUSTOM_SIMULATION_FRAME_RANGE
@ MOD_GREASE_PENCIL_SUBDIV_CATMULL
@ MOD_GREASE_PENCIL_SUBDIV_SIMPLE
@ MOD_GREASE_PENCIL_COLOR_FILL
@ MOD_GREASE_PENCIL_COLOR_STROKE
@ MOD_GREASE_PENCIL_COLOR_BOTH
@ MOD_GREASE_PENCIL_COLOR_HARDNESS
@ MOD_GREASE_PENCIL_BUILD_MODE_SEQUENTIAL
@ MOD_GREASE_PENCIL_BUILD_MODE_ADDITIVE
@ MOD_GREASE_PENCIL_BUILD_MODE_CONCURRENT
@ MOD_SIMPLEDEFORM_FLAG_INVERT_VGROUP
@ MOD_GREASE_PENCIL_TIME_KEEP_LOOP
@ MOD_GREASE_PENCIL_TIME_CUSTOM_RANGE
@ MOD_GREASE_PENCIL_BUILD_RESTRICT_TIME
@ MOD_GREASE_PENCIL_BUILD_USE_FADING
@ MOD_GREASE_PENCIL_DASH_USE_CYCLIC
@ NODES_MODIFIER_PANEL_OPEN
@ MOD_WELD_MODE_CONNECTED
@ eBooleanModifierFlag_Collection
@ eBooleanModifierFlag_Self
@ eBooleanModifierFlag_HoleTolerant
@ eBooleanModifierFlag_Object
@ MOD_CURVE_INVERT_VGROUP
@ MOD_SIMPLEDEFORM_MODE_TAPER
@ MOD_SIMPLEDEFORM_MODE_STRETCH
@ MOD_SIMPLEDEFORM_MODE_BEND
@ MOD_SIMPLEDEFORM_MODE_TWIST
@ MOD_MESHCACHE_DEFORM_INTEGRATE
@ MOD_MESHCACHE_DEFORM_OVERWRITE
@ MOD_MESHCACHE_PLAY_CFEA
@ MOD_MESHCACHE_PLAY_EVAL
@ MOD_DECIM_MODE_UNSUBDIV
@ MOD_DECIM_MODE_COLLAPSE
@ MOD_DECIM_MODE_DISSOLVE
@ MOD_GREASE_PENCIL_TINT_UNIFORM
@ MOD_GREASE_PENCIL_TINT_GRADIENT
@ MOD_GREASE_PENCIL_OUTLINE_KEEP_SHAPE
@ NODES_MODIFIER_HIDE_DATABLOCK_SELECTOR
@ NODES_MODIFIER_HIDE_MANAGE_PANEL
@ MOD_MESHCACHE_TIME_FRAME
@ MOD_MESHCACHE_TIME_FACTOR
@ MOD_MESHCACHE_TIME_SECONDS
@ MOD_CORRECTIVESMOOTH_ONLY_SMOOTH
@ MOD_CORRECTIVESMOOTH_PIN_BOUNDARY
@ MOD_CORRECTIVESMOOTH_INVERT_VGROUP
@ LINEART_SOURCE_COLLECTION
@ MOD_WVG_MASK_TEX_USE_SAT
@ MOD_WVG_MASK_TEX_USE_BLUE
@ MOD_WVG_MASK_TEX_USE_INT
@ MOD_WVG_MASK_TEX_USE_ALPHA
@ MOD_WVG_MASK_TEX_USE_RED
@ MOD_WVG_MASK_TEX_USE_HUE
@ MOD_WVG_MASK_TEX_USE_VAL
@ MOD_WVG_MASK_TEX_USE_GREEN
@ MOD_GREASE_PENCIL_TINT_USE_WEIGHT_AS_FACTOR
@ eModifierType_MeshToVolume
@ eModifierType_GreasePencilSmooth
@ eModifierType_ParticleSystem
@ eModifierType_GreasePencilWeightProximity
@ eModifierType_MeshDeform
@ eModifierType_LaplacianSmooth
@ eModifierType_GreasePencilMirror
@ eModifierType_WeightVGProximity
@ eModifierType_GreasePencilOffset
@ eModifierType_SimpleDeform
@ eModifierType_GreasePencilThickness
@ eModifierType_GreasePencilEnvelope
@ eModifierType_NormalEdit
@ eModifierType_GreasePencilArmature
@ eModifierType_GreasePencilSubdiv
@ eModifierType_GreasePencilTint
@ eModifierType_GreasePencilNoise
@ eModifierType_VolumeToMesh
@ eModifierType_Shrinkwrap
@ eModifierType_MeshSequenceCache
@ eModifierType_EdgeSplit
@ eModifierType_GreasePencilMultiply
@ eModifierType_Wireframe
@ eModifierType_WeightVGMix
@ eModifierType_GreasePencilBuild
@ eModifierType_GreasePencilTime
@ eModifierType_VolumeDisplace
@ eModifierType_GreasePencilTexture
@ eModifierType_GreasePencilSimplify
@ eModifierType_LaplacianDeform
@ eModifierType_GreasePencilColor
@ eModifierType_DataTransfer
@ eModifierType_UVProject
@ eModifierType_GreasePencilDash
@ eModifierType_SurfaceDeform
@ eModifierType_GreasePencilLineart
@ eModifierType_CorrectiveSmooth
@ eModifierType_ParticleInstance
@ eModifierType_Collision
@ eModifierType_DynamicPaint
@ eModifierType_MeshCache
@ eModifierType_WeightVGEdit
@ eModifierType_GreasePencilOutline
@ eModifierType_GreasePencilWeightAngle
@ eModifierType_GreasePencilOpacity
@ eModifierType_GreasePencilLength
@ eModifierType_GreasePencilShrinkwrap
@ eModifierType_GreasePencilLattice
@ eModifierType_WeightedNormal
@ eModifierType_GreasePencilHook
@ eModifierType_GreasePencilArray
@ eModifierType_Triangulate
@ MOD_MESHCACHE_INTERP_LINEAR
@ MOD_MESHCACHE_INTERP_NONE
@ MOD_CAST_USE_OB_TRANSFORM
@ MOD_CAST_SIZE_FROM_RADIUS
@ MOD_NORMALEDIT_NO_POLYNORS_FIX
@ MOD_NORMALEDIT_INVERT_VGROUP
@ MOD_NORMALEDIT_USE_DIRECTION_PARALLEL
@ MOD_UVWARP_INVERT_VGROUP
@ MOD_MESHSEQ_INTERPOLATE_VERTICES
@ MOD_MESHSEQ_READ_ATTRIBUTES
@ LINEART_GPENCIL_INVERT_COLLECTION
@ LINEART_GPENCIL_OFFSET_TOWARDS_CUSTOM_CAMERA
@ LINEART_GPENCIL_INVERT_SILHOUETTE_FILTER
@ LINEART_GPENCIL_IS_BAKED
@ LINEART_GPENCIL_USE_CACHE
@ MOD_WARP_VOLUME_PRESERVE
@ MOD_SOLIDIFY_MODE_NONMANIFOLD
@ MOD_SOLIDIFY_MODE_EXTRUDE
@ MOD_CORRECTIVESMOOTH_SMOOTH_LENGTH_WEIGHT
@ MOD_CORRECTIVESMOOTH_SMOOTH_SIMPLE
@ MOD_WVG_PROXIMITY_OBJECT
@ MOD_WVG_PROXIMITY_GEOMETRY
@ MOD_WVG_MIX_INVERT_VGROUP_MASK
@ MOD_WVG_MIX_INVERT_VGROUP_B
@ MOD_WVG_MIX_WEIGHTS_NORMALIZE
@ MOD_WVG_MIX_INVERT_VGROUP_A
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_FLAT
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_ROUND
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_NONE
@ MOD_MIR_BISECT_FLIP_AXIS_X
@ MOD_SCREW_SMOOTH_SHADING
@ MOD_SCREW_OBJECT_OFFSET
@ MOD_GREASE_PENCIL_HOOK_Falloff_None
@ MOD_GREASE_PENCIL_HOOK_Falloff_Root
@ MOD_GREASE_PENCIL_HOOK_Falloff_InvSquare
@ MOD_GREASE_PENCIL_HOOK_Falloff_Const
@ MOD_GREASE_PENCIL_HOOK_Falloff_Linear
@ MOD_GREASE_PENCIL_HOOK_Falloff_Sphere
@ MOD_GREASE_PENCIL_HOOK_Falloff_Smooth
@ MOD_GREASE_PENCIL_HOOK_Falloff_Curve
@ MOD_GREASE_PENCIL_HOOK_Falloff_Sharp
@ VOLUME_TO_MESH_USE_SMOOTH_SHADE
@ MOD_BEVEL_FACE_STRENGTH_NONE
@ MOD_BEVEL_FACE_STRENGTH_AFFECTED
@ MOD_BEVEL_FACE_STRENGTH_NEW
@ MOD_BEVEL_FACE_STRENGTH_ALL
@ MOD_WEIGHTEDNORMAL_KEEP_SHARP
@ MOD_WEIGHTEDNORMAL_FACE_INFLUENCE
@ MOD_WEIGHTEDNORMAL_INVERT_VGROUP
@ eExplodeFlag_INVERT_VGROUP
@ eSubsurfModifierFlag_UseRecursiveSubdivision
@ eSubsurfModifierFlag_UseCrease
@ eSubsurfModifierFlag_UseAdaptiveSubdivision
@ eSubsurfModifierFlag_ControlEdges
@ eSubsurfModifierFlag_UseCustomNormals
@ MOD_GREASE_PENCIL_TEXTURE_STROKE_AND_FILL
@ MOD_GREASE_PENCIL_TEXTURE_FILL
@ MOD_GREASE_PENCIL_TEXTURE_STROKE
@ MOD_LAPLACIANDEFORM_BIND
@ MOD_LAPLACIANDEFORM_INVERT_VGROUP
@ MOD_BUILD_FLAG_RANDOMIZE
@ SUBSURF_ADAPTIVE_SPACE_PIXEL
@ SUBSURF_ADAPTIVE_SPACE_OBJECT
@ MOD_NORMALEDIT_MIX_COPY
@ MESH_TO_VOLUME_RESOLUTION_MODE_VOXEL_SIZE
@ MESH_TO_VOLUME_RESOLUTION_MODE_VOXEL_AMOUNT
@ VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_SIZE
@ VOLUME_TO_MESH_RESOLUTION_MODE_GRID
@ VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_AMOUNT
@ MOD_GREASE_PENCIL_WEIGHT_PROXIMITY_INVERT_OUTPUT
@ MOD_GREASE_PENCIL_WEIGHT_PROXIMITY_MULTIPLY_DATA
@ MOD_GREASE_PENCIL_ENVELOPE_SEGMENTS
@ MOD_GREASE_PENCIL_ENVELOPE_FILLS
@ MOD_GREASE_PENCIL_ENVELOPE_DEFORM
@ MOD_VOLUME_DISPLACE_MAP_GLOBAL
@ MOD_VOLUME_DISPLACE_MAP_LOCAL
@ MOD_VOLUME_DISPLACE_MAP_OBJECT
@ MOD_GREASE_PENCIL_BUILD_TRANSITION_VANISH
@ MOD_GREASE_PENCIL_BUILD_TRANSITION_SHRINK
@ MOD_GREASE_PENCIL_BUILD_TRANSITION_GROW
@ MOD_TRIANGULATE_KEEP_CUSTOMLOOP_NORMALS
#define MOD_UVPROJECT_MAXPROJECTORS
@ MOD_DECIM_FLAG_INVERT_VGROUP
@ MOD_DECIM_FLAG_SYMMETRY
@ MOD_DECIM_FLAG_TRIANGULATE
@ MOD_DECIM_FLAG_ALL_BOUNDARY_VERTS
@ MOD_CORRECTIVESMOOTH_RESTSOURCE_ORCO
@ MOD_CORRECTIVESMOOTH_RESTSOURCE_BIND
@ MOD_GREASE_PENCIL_TEXTURE_FIT_STROKE
@ MOD_GREASE_PENCIL_TEXTURE_CONSTANT_LENGTH
@ eBooleanModifierOp_Intersect
@ eBooleanModifierOp_Union
@ eBooleanModifierOp_Difference
@ MOD_OCEAN_SPECTRUM_TEXEL_MARSEN_ARSLOE
@ MOD_OCEAN_SPECTRUM_JONSWAP
@ MOD_OCEAN_SPECTRUM_PHILLIPS
@ MOD_OCEAN_SPECTRUM_PIERSON_MOSKOWITZ
@ eParticleInstanceSpace_World
@ eParticleInstanceSpace_Local
@ MOD_GREASE_PENCIL_OFFSET_STROKE
@ MOD_GREASE_PENCIL_OFFSET_MATERIAL
@ MOD_GREASE_PENCIL_OFFSET_LAYER
@ MOD_GREASE_PENCIL_OFFSET_RANDOM
@ MOD_TRIANGULATE_NGON_BEAUTY
@ MOD_TRIANGULATE_NGON_EARCLIP
@ MOD_GREASE_PENCIL_TIME_SEG_MODE_NORMAL
@ MOD_GREASE_PENCIL_TIME_SEG_MODE_REVERSE
@ MOD_GREASE_PENCIL_TIME_SEG_MODE_PINGPONG
@ NODES_MODIFIER_BAKE_MODE_STILL
@ NODES_MODIFIER_BAKE_MODE_ANIMATION
@ SUBSURF_UV_SMOOTH_PRESERVE_CORNERS_AND_JUNCTIONS
@ SUBSURF_UV_SMOOTH_PRESERVE_CORNERS
@ SUBSURF_UV_SMOOTH_PRESERVE_BOUNDARIES
@ SUBSURF_UV_SMOOTH_PRESERVE_CORNERS_JUNCTIONS_AND_CONCAVE
@ MOD_SOLIDIFY_NORMAL_CALC
@ MOD_SOLIDIFY_OFFSET_ANGLE_CLAMP
@ MOD_SOLIDIFY_NONMANIFOLD_FLAT_FACES
@ MOD_SOLIDIFY_VGROUP_INV
@ MOD_BEVEL_AFFECT_VERTICES
@ GEO_NODE_ASSET_MODIFIER
Object is a sort of wrapper for general info.
@ UI_PANEL_DATA_EXPAND_ROOT
void MOD_nodes_update_interface(Object *object, NodesModifierData *nmd)
#define RNA_PROP_BEGIN(sptr, itemptr, prop)
StructRNA * ID_code_to_RNA_type(short idcode)
#define RNA_MAX_ARRAY_LENGTH
#define RNA_MAX_ARRAY_DIMENSION
@ PROP_STRING_SEARCH_SUGGESTION
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
@ PROPOVERRIDE_NO_COMPARISON
@ PROP_PATH_SUPPORTS_BLEND_RELATIVE
#define RNA_ENUM_ITEM_HEADING(name, description)
BPy_StructRNA * depsgraph
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
const ComputeContextHash & hash() const
constexpr bool contains_ptr(const T *ptr) const
float length(VecOp< float, D >) RET
void * MEM_malloc_arrayN(size_t len, size_t size, const char *str)
void MEM_freeN(void *vmemh)
Segment< FEdge *, Vec3r > segment
bool allow_procedural_attribute_access(StringRef attribute_name)
bool modifier_move_to_index(ReportList *reports, eReportType error_type, Object *ob, ModifierData *md, int index, bool allow_partial)
void free_shared_data(T **data, const ImplicitSharingInfo **sharing_info)
const EnumPropertyItem rna_enum_id_type_items[]
PropertyRNA * RNA_struct_find_property(PointerRNA *ptr, const char *identifier)
const PointerRNA PointerRNA_NULL
PointerRNA RNA_property_pointer_get(PointerRNA *ptr, PropertyRNA *prop)
int RNA_int_get(PointerRNA *ptr, const char *name)
void RNA_property_update_main(Main *bmain, Scene *scene, PointerRNA *ptr, PropertyRNA *prop)
void rna_iterator_array_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, void *data, size_t itemsize, int64_t length, bool free_ptr, IteratorSkipFunc skip)
PointerRNA RNA_pointer_create_discrete(ID *id, StructRNA *type, void *data)
int RNA_enum_get(PointerRNA *ptr, const char *name)
PointerRNA RNA_pointer_create_with_parent(const PointerRNA &parent, StructRNA *type, void *data)
const char * RNA_property_identifier(const PropertyRNA *prop)
PointerRNA RNA_id_pointer_create(ID *id)
PropertyRNA * RNA_def_float_factor(StructOrFunctionRNA *cont_, const char *identifier, const float default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_struct_name_property(StructRNA *srna, PropertyRNA *prop)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, const int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_struct_refine_func(StructRNA *srna, const char *refine)
PropertyRNA * RNA_def_int_array(StructOrFunctionRNA *cont_, const char *identifier, const int len, const int *default_value, const int hardmin, const int hardmax, const char *ui_name, const char *ui_description, const int softmin, const int softmax)
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)
void RNA_def_struct_system_idprops_func(StructRNA *srna, const char *system_idproperties)
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_enum_default(PropertyRNA *prop, int value)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_property_string_search_func(PropertyRNA *prop, const char *search, const eStringPropertySearchFlag search_flag)
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_srna(PropertyRNA *prop, const char *type)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, const float default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
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_boolean_bitset_array_sdna(PropertyRNA *prop, const char *structname, const char *propname, const int64_t booleanbit, const int length)
void RNA_def_property_boolean_default(PropertyRNA *prop, bool value)
void RNA_def_property_boolean_funcs(PropertyRNA *prop, const char *get, const char *set)
void RNA_def_property_dynamic_array_funcs(PropertyRNA *prop, const char *getlength)
void RNA_def_property_multi_array(PropertyRNA *prop, int dimension, const int length[])
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, const int default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_range(PropertyRNA *prop, double min, double max)
void RNA_def_property_string_maxlength(PropertyRNA *prop, int maxlength)
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_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
const int rna_matrix_dimsize_4x4[]
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item)
void RNA_def_property_enum_bitflag_sdna(PropertyRNA *prop, const char *structname, const char *propname)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
PropertyRNA * RNA_def_enum_flag(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, const int default_value, const char *ui_name, const char *ui_description)
void RNA_enum_item_end(EnumPropertyItem **items, int *totitem)
void RNA_def_function_flag(FunctionRNA *func, int flag)
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)
void RNA_def_property_enum_sdna(PropertyRNA *prop, const char *structname, const char *propname)
PropertyRNA * RNA_def_float_array(StructOrFunctionRNA *cont_, const char *identifier, const int len, const float *default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
void RNA_enum_item_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
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)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, const bool default_value, const char *ui_name, const char *ui_description)
void RNA_def_struct_idprops_func(StructRNA *srna, const char *idproperties)
void RNA_def_property_override_funcs(PropertyRNA *prop, const char *diff, const char *store, const char *apply)
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_override_clear_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
void RNA_enum_item_add_separator(EnumPropertyItem **items, int *totitem)
void RNA_def_property_subtype(PropertyRNA *prop, PropertySubType subtype)
void RNA_def_property_float_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_enum_items_add_value(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item, int value)
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)
void RNA_def_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
const EnumPropertyItem rna_enum_prop_dynamicpaint_type_items[]
int rna_object_vgroup_name_index_length(PointerRNA *ptr, int index)
void rna_object_vgroup_name_index_set(PointerRNA *ptr, const char *value, short *index)
void rna_object_vgroup_name_index_get(PointerRNA *ptr, char *value, int index)
const EnumPropertyItem rna_enum_mesh_delimit_mode_items[]
const EnumPropertyItem rna_enum_axis_xy_items[]
static void rna_def_modifier_nodes(BlenderRNA *brna)
static void rna_def_modifier_fluid(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_hook(BlenderRNA *brna)
static void rna_def_modifier_smooth(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_weight_angle(BlenderRNA *brna)
const EnumPropertyItem rna_enum_subdivision_uv_smooth_items[]
const EnumPropertyItem rna_enum_dt_method_loop_items[]
static void rna_def_modifier_nodes_warning(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_vertex_group(StructRNA *srna, const char *vertex_group_name_set_fn)
static void rna_def_modifier_screw(BlenderRNA *brna)
static void rna_def_modifier_uvproject(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_lattice(BlenderRNA *brna)
static void rna_def_modifier_particleinstance(BlenderRNA *brna)
static void rna_def_modifier_nodes_panels(BlenderRNA *brna)
static void rna_def_modifier_edgesplit(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_dash(BlenderRNA *brna)
static void rna_def_modifier_bevel(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_method_edge_items[]
static void rna_def_modifier_cloth(BlenderRNA *brna)
static void rna_def_modifier_shrinkwrap(BlenderRNA *brna)
static void rna_def_modifier_uvwarp(BlenderRNA *brna)
static void rna_def_modifier_meshseqcache(BlenderRNA *brna)
static void rna_def_modifier_simpledeform(BlenderRNA *brna)
static void rna_def_modifier_datatransfer(BlenderRNA *brna)
static void rna_def_modifier_weightvgmix(BlenderRNA *brna)
static void rna_def_modifier_meshdeform(BlenderRNA *brna)
static void rna_def_modifier_laplaciandeform(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_method_poly_items[]
static void rna_def_modifier_grease_pencil_dash_segment(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_weight_proximity(BlenderRNA *brna)
static void rna_def_modifier_nodes_bakes(BlenderRNA *brna)
static void rna_def_modifier_explode(BlenderRNA *brna)
const EnumPropertyItem rna_enum_axis_flag_xyz_items[]
static void rna_def_modifier_grease_pencil_multiply(BlenderRNA *brna)
static const EnumPropertyItem modifier_warp_falloff_items[]
static void rna_def_modifier_particlesystem(BlenderRNA *brna)
static void rna_def_modifier_dynamic_paint(BlenderRNA *brna)
static void rna_def_modifier_generic_map_info(StructRNA *srna)
static void rna_def_modifier_grease_pencil_armature(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_layer_filter(StructRNA *srna)
const EnumPropertyItem rna_enum_modifier_triangulate_ngon_method_items[]
static void rna_def_modifier_nodes_panel(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_lineart(BlenderRNA *brna)
static void rna_def_modifier_mirror(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_custom_curve(StructRNA *srna)
static void rna_def_modifier_normaledit(BlenderRNA *brna)
static void rna_def_modifier_displace(BlenderRNA *brna)
const EnumPropertyItem rna_enum_shrinkwrap_face_cull_items[]
static void rna_def_modifier_meshcache(BlenderRNA *brna)
static void rna_def_modifier_skin(BlenderRNA *brna)
const EnumPropertyItem rna_enum_object_modifier_type_items[]
static void rna_def_modifier_weightvgedit(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_mix_mode_items[]
static void rna_def_modifier_weld(BlenderRNA *brna)
static void rna_def_modifier_cast(BlenderRNA *brna)
static void rna_def_modifier_surface(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_simplify(BlenderRNA *brna)
static void rna_def_modifier_nodes_data_block(BlenderRNA *brna)
static void rna_def_modifier_panel_open_prop(StructRNA *srna, const char *identifier, const int id)
static void rna_def_modifier_curve(BlenderRNA *brna)
static void rna_def_modifier_wireframe(BlenderRNA *brna)
static void rna_def_modifier_softbody(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_shrinkwrap(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_layers_select_src_items[]
static void rna_def_modifier_nodes_bake_data_blocks(BlenderRNA *brna)
static void rna_def_modifier_subsurf(BlenderRNA *brna)
static void rna_def_modifier_volume_displace(BlenderRNA *brna)
const EnumPropertyItem rna_enum_shrinkwrap_type_items[]
const EnumPropertyItem rna_enum_node_warning_type_items[]
static void rna_def_modifier_wave(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_time_segment(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_opacity(BlenderRNA *brna)
static EnumPropertyItem bake_target_in_node_items[]
static void rna_def_modifier_surfacedeform(BlenderRNA *brna)
const EnumPropertyItem rna_enum_axis_xyz_items[]
static void rna_def_modifier_lattice(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_thickness(BlenderRNA *brna)
static void rna_def_property_subdivision_common(StructRNA *srna)
static void rna_def_modifier_grease_pencil_material_filter(StructRNA *srna, const char *material_set_fn)
const EnumPropertyItem rna_enum_dt_method_vertex_items[]
const EnumPropertyItem rna_enum_modifier_triangulate_quad_method_items[]
void RNA_def_modifier(BlenderRNA *brna)
static void rna_def_modifier_multires(BlenderRNA *brna)
static void rna_def_modifier_triangulate(BlenderRNA *brna)
static void rna_def_modifier_mask(BlenderRNA *brna)
static void rna_def_modifier_warp(BlenderRNA *brna)
static void rna_def_modifier_weightvgproximity(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_mirror(BlenderRNA *brna)
static const EnumPropertyItem grease_pencil_build_time_mode_items[]
static void rna_def_modifier_grease_pencil_subdiv(BlenderRNA *brna)
static void rna_def_modifier_laplaciansmooth(BlenderRNA *brna)
static void rna_def_modifier_hook(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_envelope(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_array(BlenderRNA *brna)
static void rna_def_modifier_solidify(BlenderRNA *brna)
static void rna_def_modifier_nodes_bake(BlenderRNA *brna)
static void rna_def_modifier_ocean(BlenderRNA *brna)
static void rna_def_modifier_array(BlenderRNA *brna)
static void rna_def_modifier_collision(BlenderRNA *brna)
static void rna_def_modifier_armature(BlenderRNA *brna)
static void rna_def_modifier_weightednormal(BlenderRNA *brna)
static void rna_def_modifier_decimate(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_texture(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_color(BlenderRNA *brna)
static EnumPropertyItem bake_target_in_modifier_items[]
static void rna_def_modifier_grease_pencil_outline(BlenderRNA *brna)
static void rna_def_modifier_mesh_to_volume(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_offset(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_tint(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_length(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_layers_select_dst_items[]
static void rna_def_modifier_grease_pencil_time(BlenderRNA *brna)
static void rna_def_modifier_boolean(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_smooth(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_build(BlenderRNA *brna)
const EnumPropertyItem rna_enum_subdivision_boundary_smooth_items[]
static void rna_def_modifier_remesh(BlenderRNA *brna)
static void rna_def_modifier_build(BlenderRNA *brna)
static void rna_def_modifier_grease_pencil_noise(BlenderRNA *brna)
static void rna_def_modifier_weightvg_mask(BlenderRNA *, StructRNA *srna, const char *mask_flags, const int invert_vgroup_mask_flag, const char *mask_vgroup_setter, const char *mask_uvlayer_setter)
const EnumPropertyItem rna_enum_modifier_shrinkwrap_mode_items[]
static void rna_def_modifier_correctivesmooth(BlenderRNA *brna)
static void rna_def_modifier_volume_to_mesh(BlenderRNA *brna)
const EnumPropertyItem rna_enum_object_axis_items[]
static const EnumPropertyItem space_items[]
static const EnumPropertyItem prop_solver_items[]
static const EnumPropertyItem prop_direction_items[]
union CollectionPropertyIterator::@220100362304005352221007113371015217044252346141 internal
GreasePencilDashModifierSegment * segments_array
struct Material * target_material
struct Material * outline_material
GreasePencilTimeModifierSegment * segments_array
struct ModifierData * next
struct ModifierData * prev
uint16_t layout_panel_open_flag
struct bNodeTree * node_group
NodesModifierRuntimeHandle * runtime
struct NodesModifierSettings settings
NodesModifierBake * bakes
struct IDProperty * properties
IDOverrideLibraryPropertyOperation * liboverride_operation
struct PointCache * pointcache
struct SoftBody_Shared * shared
struct GeometryNodeAssetTraits * geometry_node_asset_traits
void WM_main_add_notifier(uint type, void *reference)