63 {0,
"", 0,
N_(
"Modify"),
""},
66 ICON_MOD_DATA_TRANSFER,
68 "Transfer several types of data (vertex groups, UV maps, vertex colors, custom normals) from "
69 "one mesh to another"},
74 "Deform the mesh using an external frame-by-frame vertex transform cache"},
76 "MESH_SEQUENCE_CACHE",
78 "Mesh Sequence Cache",
79 "Deform the mesh or curve using an external mesh cache in Alembic format"},
84 "Modify the direction of the surface normals"},
89 "Modify the direction of the surface normals using a weighting method"},
94 "Project the UV map coordinates from the negative Z axis of another object"},
99 "Transform the UV map using the difference between two objects"},
101 "VERTEX_WEIGHT_EDIT",
102 ICON_MOD_VERTEX_WEIGHT,
103 "Vertex Weight Edit",
104 "Modify of the weights of a vertex group"},
107 ICON_MOD_VERTEX_WEIGHT,
109 "Mix the weights of two vertex groups"},
111 "VERTEX_WEIGHT_PROXIMITY",
112 ICON_MOD_VERTEX_WEIGHT,
113 "Vertex Weight Proximity",
114 "Set the vertex group weights based on the distance to another target object"},
115 {0,
"", 0,
N_(
"Generate"),
""},
120 "Create copies of the shape with offsets"},
125 "Generate sloped corners by adding geometry to the mesh's edges or vertices"},
130 "Use another shape to cut, combine or perform a difference operation"},
135 "Cause the faces of the mesh object to appear or disappear one after the other over time"},
140 "Reduce the geometry density"},
145 "Split away joined faces at the edges"},
151 "Dynamically hide vertices based on a vertex group or armature"},
156 "Mirror along the local X, Y and/or Z axes, over the object origin"},
166 "Subdivide the mesh in a way that allows editing the higher subdivision levels"},
171 "Generate new mesh topology based on the current shape"},
176 "Lathe around an axis, treating the input mesh as a profile"},
181 "Create a solid shape from vertices and edges, using the vertex radius to define the "
187 "Subdivision Surface",
188 "Split the faces into smaller parts, giving it a smoother appearance"},
191 ICON_MOD_TRIANGULATE,
193 "Convert all polygons to triangles"},
203 "Find groups of vertices closer than dist and merge them together"},
208 "Convert faces into thickened edges"},
209 {0,
"", 0,
N_(
"Deform"),
""},
214 "Deform the shape using an armature object"},
219 "Shift the shape towards a predefined primitive"},
220 {
eModifierType_Curve,
"CURVE", ICON_MOD_CURVE,
"Curve",
"Bend the mesh using a curve object"},
225 "Offset vertices based on a texture"},
226 {
eModifierType_Hook,
"HOOK", ICON_HOOK,
"Hook",
"Deform specific points using another object"},
231 "Deform based a series of anchor points"},
236 "Deform using the shape of a lattice object"},
241 "Deform using a different mesh, which acts as a deformation cage"},
246 "Project the shape onto another object"},
249 ICON_MOD_SIMPLEDEFORM,
251 "Deform the shape by twisting, bending, tapering or stretching"},
256 "Smooth the mesh by flattening the angles between adjacent faces"},
261 "Smooth the mesh while still preserving the volume"},
266 "Reduce the noise on a mesh surface with minimal changes to its shape"},
271 "Transfer motion from another mesh"},
276 "Warp parts of a mesh to a new location in a very flexible way thanks to 2 specified "
282 "Adds a ripple-like motion to an object's geometry"},
287 "Deform volume based on noise or other vector fields"},
288 {0,
"", 0,
N_(
"Physics"),
""},
296 "Break apart the mesh faces and let them follow particles"},
298 {
eModifierType_Ocean,
"OCEAN", ICON_MOD_OCEAN,
"Ocean",
"Generate a moving ocean surface"},
301 ICON_MOD_PARTICLE_INSTANCE,
308 "Spawn particles from the shape"},
319 "Split the quads in nice triangles, slower method"},
324 "Split the quads on the first and third vertices"},
329 "Split the quads on the 2nd and 4th vertices"},
334 "Split the quads based on the distance between the vertices"},
343 "Arrange the new triangles evenly (slow)"},
348 "Split the polygons with an ear clipping algorithm"},
357 "The point is constrained to the surface of the target object, "
358 "with distance offset towards the original point location"},
363 "The point is constrained to be inside the target object"},
368 "The point is constrained to be outside the target object"},
373 "The point is constrained to the surface of the target object, "
374 "with distance offset always to the outside, towards or away from the original location"},
379 "The point is constrained to the surface of the target object, "
380 "with distance offset applied exactly along the target normal"},
408 "Nearest Edge Vertex",
409 "Copy from closest vertex of closest edge"},
411 "EDGEINTERP_NEAREST",
413 "Nearest Edge Interpolated",
414 "Copy from interpolated values of vertices from closest point on closest edge"},
418 "Nearest Face Vertex",
419 "Copy from closest vertex of closest face"},
421 "POLYINTERP_NEAREST",
423 "Nearest Face Interpolated",
424 "Copy from interpolated values of vertices from closest point on closest face"},
426 "POLYINTERP_VNORPROJ",
428 "Projected Face Interpolated",
429 "Copy from interpolated values of vertices from point on closest face hit by "
430 "normal-projection"},
440 "Copy from most similar edge (edge which vertices are the closest of destination edge's "
446 "Copy from closest edge (using midpoints)"},
451 "Copy from closest edge of closest face (using midpoints)"},
453 "EDGEINTERP_VNORPROJ",
455 "Projected Edge Interpolated",
456 "Interpolate all source edges hit by the projection of destination one along its own normal "
466 "Nearest Corner and Best Matching Normal",
467 "Copy from nearest corner which has the best matching normal"},
471 "Nearest Corner and Best Matching Face Normal",
472 "Copy from nearest corner which has the face with the best matching normal to destination "
473 "corner's face one"},
477 "Nearest Corner of Nearest Face",
478 "Copy from nearest corner of nearest polygon"},
480 "POLYINTERP_NEAREST",
482 "Nearest Face Interpolated",
483 "Copy from interpolated corners of the nearest source polygon"},
485 "POLYINTERP_LNORPROJ",
487 "Projected Face Interpolated",
488 "Copy from interpolated corners of the source polygon hit by corner normal projection"},
498 "Copy from nearest polygon (using center points)"},
502 "Best Normal-Matching",
503 "Copy from source polygon which normal is the closest to destination one"},
505 "POLYINTERP_PNORPROJ",
507 "Projected Face Interpolated",
508 "Interpolate all source polygons intersected by the projection of destination one along its "
514 {
CDT_MIX_TRANSFER,
"REPLACE", 0,
"Replace",
"Overwrite all elements' data"},
519 "Only replace destination elements where data is above given threshold (exact behavior "
520 "depends on data type)"},
525 "Only replace destination elements where data is below given threshold (exact behavior "
526 "depends on data type)"},
531 "Mix source value into destination one, using given threshold as factor"},
536 "Add source value to destination one, using given threshold as factor"},
541 "Subtract source value to destination one, using given threshold as factor"},
546 "Multiply source value to destination one, using given threshold as factor"},
557 "Selected Pose Bones",
558 "Transfer all vertex groups used by selected pose bones"},
563 "Transfer all vertex groups used by deform bones"},
569 {
DT_LAYERS_NAME_DST,
"NAME", 0,
"By Name",
"Match target data layers to affect by name"},
574 "Match target data layers to affect by order (indices)"},
579 {0,
"X", 0,
"X",
""},
580 {1,
"Y", 0,
"Y",
""},
585 {0,
"X", 0,
"X",
""},
586 {1,
"Y", 0,
"Y",
""},
587 {2,
"Z", 0,
"Z",
""},
592 {(1 << 0),
"X", 0,
"X",
""},
593 {(1 << 1),
"Y", 0,
"Y",
""},
594 {(1 << 2),
"Z", 0,
"Z",
""},
631 if (modifier_type !=
NULL) {
632 return modifier_type->
srna;
637 static void rna_Modifier_name_set(
PointerRNA *
ptr,
const char *value)
640 char oldname[
sizeof(md->
name)];
661 char name_esc[
sizeof(md->
name) * 2];
675 rna_Modifier_update(bmain,
scene,
ptr);
679 static void rna_Modifier_is_active_set(
PointerRNA *
ptr,
bool value)
698 # define RNA_MOD_VGROUP_NAME_SET(_type, _prop) \
699 static void rna_##_type##Modifier_##_prop##_set(PointerRNA *ptr, const char *value) \
701 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
702 rna_object_vgroup_name_set(ptr, value, tmd->_prop, sizeof(tmd->_prop)); \
705 RNA_MOD_VGROUP_NAME_SET(Armature, defgrp_name);
706 RNA_MOD_VGROUP_NAME_SET(
Bevel, defgrp_name);
707 RNA_MOD_VGROUP_NAME_SET(Cast, defgrp_name);
708 RNA_MOD_VGROUP_NAME_SET(
Curve, name);
709 RNA_MOD_VGROUP_NAME_SET(DataTransfer, defgrp_name);
710 RNA_MOD_VGROUP_NAME_SET(Decimate, defgrp_name);
711 RNA_MOD_VGROUP_NAME_SET(CorrectiveSmooth, defgrp_name);
712 RNA_MOD_VGROUP_NAME_SET(Displace, defgrp_name);
713 RNA_MOD_VGROUP_NAME_SET(Hook, name);
714 RNA_MOD_VGROUP_NAME_SET(LaplacianDeform, anchor_grp_name);
715 RNA_MOD_VGROUP_NAME_SET(LaplacianSmooth, defgrp_name);
716 RNA_MOD_VGROUP_NAME_SET(
Lattice, name);
717 RNA_MOD_VGROUP_NAME_SET(
Mask, vgroup);
718 RNA_MOD_VGROUP_NAME_SET(MeshDeform, defgrp_name);
719 RNA_MOD_VGROUP_NAME_SET(NormalEdit, defgrp_name);
720 RNA_MOD_VGROUP_NAME_SET(Shrinkwrap, vgroup_name);
721 RNA_MOD_VGROUP_NAME_SET(SimpleDeform, vgroup_name);
722 RNA_MOD_VGROUP_NAME_SET(Smooth, defgrp_name);
723 RNA_MOD_VGROUP_NAME_SET(Solidify, defgrp_name);
724 RNA_MOD_VGROUP_NAME_SET(Solidify, shell_defgrp_name);
725 RNA_MOD_VGROUP_NAME_SET(Solidify, rim_defgrp_name);
726 RNA_MOD_VGROUP_NAME_SET(SurfaceDeform, defgrp_name);
727 RNA_MOD_VGROUP_NAME_SET(UVWarp, vgroup_name);
728 RNA_MOD_VGROUP_NAME_SET(Warp, defgrp_name);
729 RNA_MOD_VGROUP_NAME_SET(Wave, defgrp_name);
730 RNA_MOD_VGROUP_NAME_SET(WeightVGEdit, defgrp_name);
731 RNA_MOD_VGROUP_NAME_SET(WeightVGEdit, mask_defgrp_name);
732 RNA_MOD_VGROUP_NAME_SET(WeightVGMix, defgrp_name_a);
733 RNA_MOD_VGROUP_NAME_SET(WeightVGMix, defgrp_name_b);
734 RNA_MOD_VGROUP_NAME_SET(WeightVGMix, mask_defgrp_name);
735 RNA_MOD_VGROUP_NAME_SET(WeightVGProximity, defgrp_name);
736 RNA_MOD_VGROUP_NAME_SET(WeightVGProximity, mask_defgrp_name);
737 RNA_MOD_VGROUP_NAME_SET(WeightedNormal, defgrp_name);
738 RNA_MOD_VGROUP_NAME_SET(Weld, defgrp_name);
739 RNA_MOD_VGROUP_NAME_SET(Wireframe, defgrp_name);
741 static void rna_ExplodeModifier_vgroup_get(
PointerRNA *
ptr,
char *value)
747 static int rna_ExplodeModifier_vgroup_length(
PointerRNA *
ptr)
753 static void rna_ExplodeModifier_vgroup_set(
PointerRNA *
ptr,
const char *value)
759 # undef RNA_MOD_VGROUP_NAME_SET
763 # define RNA_MOD_UVLAYER_NAME_SET(_type, _prop) \
764 static void rna_##_type##Modifier_##_prop##_set(PointerRNA *ptr, const char *value) \
766 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
767 rna_object_uvlayer_name_set(ptr, value, tmd->_prop, sizeof(tmd->_prop)); \
770 RNA_MOD_UVLAYER_NAME_SET(MappingInfo, uvlayer_name);
771 RNA_MOD_UVLAYER_NAME_SET(UVProject, uvlayer_name);
772 RNA_MOD_UVLAYER_NAME_SET(UVWarp, uvlayer_name);
773 RNA_MOD_UVLAYER_NAME_SET(WeightVGEdit, mask_tex_uvlayer_name);
774 RNA_MOD_UVLAYER_NAME_SET(WeightVGMix, mask_tex_uvlayer_name);
775 RNA_MOD_UVLAYER_NAME_SET(WeightVGProximity, mask_tex_uvlayer_name);
777 # undef RNA_MOD_UVLAYER_NAME_SET
785 if (!
self || ob !=
self) {
793 # define RNA_MOD_OBJECT_SET(_type, _prop, _obtype) \
794 static void rna_##_type##Modifier_##_prop##_set( \
795 PointerRNA *ptr, PointerRNA value, struct ReportList *UNUSED(reports)) \
797 _type##ModifierData *tmd = (_type##ModifierData *)ptr->data; \
798 modifier_object_set((Object *)ptr->owner_id, &tmd->_prop, _obtype, value); \
802 RNA_MOD_OBJECT_SET(Array, start_cap,
OB_MESH);
803 RNA_MOD_OBJECT_SET(Array, end_cap,
OB_MESH);
804 RNA_MOD_OBJECT_SET(Array, curve_ob,
OB_CURVE);
805 RNA_MOD_OBJECT_SET(Boolean,
object,
OB_MESH);
806 RNA_MOD_OBJECT_SET(Cast,
object,
OB_EMPTY);
808 RNA_MOD_OBJECT_SET(DataTransfer, ob_source,
OB_MESH);
811 RNA_MOD_OBJECT_SET(MeshDeform,
object,
OB_MESH);
812 RNA_MOD_OBJECT_SET(NormalEdit, target,
OB_EMPTY);
813 RNA_MOD_OBJECT_SET(Shrinkwrap, target,
OB_MESH);
814 RNA_MOD_OBJECT_SET(Shrinkwrap, auxTarget,
OB_MESH);
815 RNA_MOD_OBJECT_SET(SurfaceDeform, target,
OB_MESH);
830 static bool rna_HookModifier_object_override_apply(
Main *
UNUSED(bmain),
839 const int len_storage,
845 BLI_assert(len_dst == len_src && (!ptr_storage || len_dst == len_storage) && len_dst == 0);
847 "Unsupported RNA override operation on Hook modifier target object pointer");
859 if (target_src == target_dst) {
864 if (target_src ==
NULL) {
871 static void rna_HookModifier_subtarget_set(
PointerRNA *
ptr,
const char *value)
880 static int rna_HookModifier_vertex_indices_get_length(
PointerRNA *
ptr,
885 return (
length[0] = totindex);
888 static void rna_HookModifier_vertex_indices_get(
PointerRNA *
ptr,
int *values)
901 if (indices_len == 0) {
907 for (
int i = 0; i < indices_len; i++) {
915 size_t size =
sizeof(int) * indices_len;
922 for (
int i = 1; i < indices_len; i++) {
953 # undef RNA_MOD_OBJECT_SET
984 rna_Modifier_dependency_update(bmain,
scene,
ptr);
987 static void rna_MultiresModifier_level_range(
996 static bool rna_MultiresModifier_external_get(
PointerRNA *
ptr)
1004 static void rna_MultiresModifier_filepath_get(
PointerRNA *
ptr,
char *value)
1009 BLI_strncpy(value, (external) ? external->filename :
"",
sizeof(external->filename));
1012 static void rna_MultiresModifier_filepath_set(
PointerRNA *
ptr,
const char *value)
1017 if (external && !
STREQ(external->filename, value)) {
1018 BLI_strncpy(external->filename, value,
sizeof(external->filename));
1023 static int rna_MultiresModifier_filepath_length(
PointerRNA *
ptr)
1028 return strlen((external) ? external->filename :
"");
1031 static int rna_ShrinkwrapModifier_face_cull_get(
PointerRNA *
ptr)
1037 static void rna_ShrinkwrapModifier_face_cull_set(
struct PointerRNA *
ptr,
int value)
1043 static bool rna_MeshDeformModifier_is_bound_get(
PointerRNA *
ptr)
1075 rna_Modifier_update(bmain,
scene,
ptr);
1078 static void rna_UVProjectModifier_num_projectors_set(
PointerRNA *
ptr,
int value)
1094 rna_Modifier_update(bmain,
scene,
ptr);
1097 static void rna_OceanModifier_ocean_chop_set(
PointerRNA *
ptr,
float value)
1104 if ((old_value == 0.0f && value > 0.0f) || (old_value > 0.0f && value == 0.0f)) {
1109 static bool rna_LaplacianDeformModifier_is_bind_get(
PointerRNA *
ptr)
1126 rna_Modifier_update(bmain,
scene,
ptr);
1139 rna_Modifier_update(bmain,
scene,
ptr);
1166 rna_Modifier_dependency_update(bmain,
scene,
ptr);
1187 rna_Modifier_dependency_update(bmain,
scene,
ptr);
1190 static void rna_DataTransferModifier_verts_data_types_set(
struct PointerRNA *
ptr,
int value)
1198 static void rna_DataTransferModifier_edges_data_types_set(
struct PointerRNA *
ptr,
int value)
1206 static void rna_DataTransferModifier_loops_data_types_set(
struct PointerRNA *
ptr,
int value)
1214 static void rna_DataTransferModifier_polys_data_types_set(
struct PointerRNA *
ptr,
int value)
1259 tmp_item.identifier = tmp_item.name = dg->
name;
1285 for (i = 0; i < num_data; i++) {
1311 for (i = 0; i < num_data; i++) {
1358 tmp_item.identifier = tmp_item.name = dg->
name;
1372 if (ob_dst && ob_dst->
data) {
1377 me_dst = ob_dst->
data;
1378 ldata = &me_dst->
ldata;
1383 for (i = 0; i < num_data; i++) {
1396 if (ob_dst && ob_dst->
data) {
1401 me_dst = ob_dst->
data;
1402 ldata = &me_dst->
ldata;
1407 for (i = 0; i < num_data; i++) {
1431 bool support_advanced_mixing, support_threshold;
1440 dtmd->
data_types, &support_advanced_mixing, &support_threshold);
1442 if (support_threshold) {
1449 if (support_advanced_mixing) {
1469 rna_Modifier_update(bmain,
scene,
ptr);
1472 static void rna_CorrectiveSmoothModifier_rest_source_update(
Main *bmain,
1483 rna_CorrectiveSmoothModifier_update(bmain,
scene,
ptr);
1486 static bool rna_CorrectiveSmoothModifier_is_bind_get(
PointerRNA *
ptr)
1492 static bool rna_SurfaceDeformModifier_is_bound_get(
PointerRNA *
ptr)
1497 static bool rna_ParticleInstanceModifier_particle_system_poll(
PointerRNA *
ptr,
1526 static void rna_ParticleInstanceModifier_particle_system_set(
PointerRNA *
ptr,
1544 static void rna_Modifier_show_expanded_set(
PointerRNA *
ptr,
bool value)
1561 static int rna_MeshSequenceCacheModifier_has_velocity_get(
PointerRNA *
ptr)
1563 # ifdef WITH_ALEMBIC
1572 static int rna_MeshSequenceCacheModifier_read_velocity_get(
PointerRNA *
ptr)
1574 # ifdef WITH_ALEMBIC
1586 "Mesh Cache Velocities");
1595 if (num_read == -1 || num_read != mcmd->
num_vertices) {
1616 rna_Modifier_dependency_update(bmain,
scene,
ptr);
1639 "UVs are not smoothed, boundaries are kept sharp"},
1644 "UVs are smoothed, corners on discontinuous boundary are kept sharp"},
1646 "PRESERVE_CORNERS_AND_JUNCTIONS",
1648 "Keep Corners, Junctions",
1649 "UVs are smoothed, corners on discontinuous boundary and "
1650 "junctions of 3 or more regions are kept sharp"},
1652 "PRESERVE_CORNERS_JUNCTIONS_AND_CONCAVE",
1654 "Keep Corners, Junctions, Concave",
1655 "UVs are smoothed, corners on discontinuous boundary, "
1656 "junctions of 3 or more regions and darts and concave corners are kept sharp"},
1658 "PRESERVE_BOUNDARIES",
1661 "UVs are smoothed, boundaries are kept sharp"},
1671 "Smooth boundaries, but corners are kept sharp"},
1691 prop,
"Quality",
"Accuracy of vertex positions, lower value is faster but less precise");
1742 prop,
"Render Levels",
"Number of subdivisions to perform when rendering");
1752 prop,
"Use Creases",
"Use mesh edge crease information to sharpen edges");
1758 prop,
"Use Custom Normals",
"Interpolates existing custom normals to resulting mesh");
1765 "Use Limit Surface",
1766 "Place vertices at the surface that would be produced with infinite "
1767 "levels of subdivision (smoothest possible shape)");
1780 "Use the local coordinate system for the texture coordinates"},
1785 "Use the global coordinate system for the texture coordinates"},
1790 "Use the linked object's local coordinate system for the texture coordinates"},
1791 {
MOD_DISP_MAP_UV,
"UV", 0,
"UV",
"Use UV coordinates for the texture coordinates"},
1819 prop,
"Texture Coordinate Object",
"Object to set the texture coordinates");
1942 prop,
"Total Levels",
"Number of subdivisions for which displacements are stored");
1948 prop,
"External",
"Store multires displacements outside the .blend file, to save memory");
1952 "rna_MultiresModifier_filepath_get",
1953 "rna_MultiresModifier_filepath_length",
1954 "rna_MultiresModifier_filepath_set");
1961 prop,
"Optimal Display",
"Skip drawing/rendering of interior subdivided edges");
1967 prop,
"Use Creases",
"Use mesh edge crease information to sharpen edges");
1973 prop,
"Use Custom Normals",
"Interpolates existing custom normals to resulting mesh");
1980 "Make Sculpt Mode tools deform the base mesh while previewing the "
1981 "displacement of higher subdivision levels");
2002 prop,
NULL,
"rna_LatticeModifier_object_set",
NULL,
"rna_Lattice_object_poll");
2011 "Name of Vertex Group which determines influence of modifier per point");
2054 prop,
NULL,
"rna_CurveModifier_object_set",
NULL,
"rna_Curve_object_poll");
2063 "Name of Vertex Group which determines influence of modifier per point");
2156 prop,
"Clip",
"Prevent vertices from going through the mirror during transform");
2172 prop,
"Mirror U",
"Mirror the U texture coordinate around the flip offset point");
2178 prop,
"Mirror V",
"Mirror the V texture coordinate around the flip offset point");
2184 prop,
"Mirror UDIM",
"Mirror the texture coordinate around each tile center");
2194 "Amount to offset mirrored UVs flipping point from the 0.5 on the U axis");
2204 "Amount to offset mirrored UVs flipping point from the 0.5 point on the V axis");
2226 prop,
"Merge Distance",
"Distance within which mirrored vertices are merged");
2234 prop,
"Bisect Distance",
"Distance from the bisect plane within which vertices are removed");
2255 "Dissolve geometry to form planar polygons"},
2291 prop,
"Iterations",
"Number of times reduce the geometry (unsubdivide only)");
2317 prop,
"Triangulate",
"Keep triangulated faces resulting from decimation (collapse only)");
2343 prop,
"All Boundaries",
"Dissolve all vertices in between face boundaries (planar only)");
2358 prop,
"Face Count",
"The current number of faces in the decimated mesh");
2416 "Either the starting frame (for positive speed) or ending frame (for negative speed.)");
2423 prop,
"Lifetime",
"Lifetime of the wave in frames, zero means infinite");
2430 prop,
"Damping Time",
"Number of frames in which the wave damps out after it dies");
2475 prop,
"Speed",
"Speed of the wave, towards the starting point when negative");
2497 "Distance between the top and the base of a wave, the higher the value, "
2498 "the more narrow the wave");
2521 prop,
NULL,
"rna_ArmatureModifier_object_set",
NULL,
"rna_Armature_object_poll");
2540 prop,
"Preserve Volume",
"Deform rotation interpolation with quaternions");
2548 "Use same input as previous modifier, and mix results using overall vgroup");
2556 "Name of Vertex Group which determines influence of modifier per point");
2577 srna,
"Hook Modifier",
"Hook modifier to modify the location of vertices");
2600 prop,
"Radius",
"If not zero, the distance from the hook where influence ends");
2611 prop,
"Hook Center",
"Center of the hook, used for falloff and display");
2618 prop,
"Matrix",
"Reverse the transformation between this object and its target");
2623 prop,
"Object",
"Parent Object for hook, also recalculates and clears offset");
2634 "Name of Parent Bone for hook (if applicable), also recalculates and clears offset");
2648 "Name of Vertex Group which determines influence of modifier per point");
2660 "Indices of vertices bound to the modifier. For bezier curves, "
2661 "handles count as additional vertices");
2663 func =
RNA_def_function(srna,
"vertex_indices_set",
"rna_HookModifier_vertex_indices_set");
2665 func,
"Validates and assigns the array of vertex indices bound to the modifier");
2668 func,
"indices", 1,
NULL, INT_MIN, INT_MAX,
"",
"Vertex Indices", 0, INT_MAX);
2713 "Use a mesh object as the operand for the Boolean operation"},
2718 "Use a collection of mesh objects as the operand for the Boolean operation"},
2727 "Keep the part of the mesh that is common between all operands"},
2733 "Combine meshes in a subtractive way"},
2742 "Simple solver for the best performance, without support for overlapping geometry"},
2757 prop,
NULL,
"rna_BooleanModifier_object_set",
NULL,
"rna_Mesh_object_poll");
2766 prop,
"Collection",
"Use mesh objects in this collection for Boolean operation");
2786 prop,
"Overlap Threshold",
"Threshold for checking overlapping geometry");
2812 "NO_CONNECT_REGIONS",
2814 "No Connect Regions",
2839 "Duplicate the object a certain number of times"},
2844 "Duplicate the object as many times as fits in a certain length"},
2845 {
MOD_ARR_FITCURVE,
"FIT_CURVE", 0,
"Fit Curve",
"Fit the duplicated objects to a curve"},
2879 prop,
NULL,
"rna_ArrayModifier_curve_ob_set",
NULL,
"rna_Curve_object_poll");
2892 prop,
"Constant Offset Displacement",
"Value for the distance between arrayed items");
2899 prop,
"Relative Offset",
"Add an offset relative to the object's bounding box");
2907 "Relative Offset Displacement",
2908 "The size of the geometry will determine the distance between arrayed items");
2920 prop,
"Merge End Vertices",
"Merge vertices in first and last duplicates");
2934 prop,
"Object Offset",
"Add another object's transformation to the total offset");
2942 "Use the location and rotation of another object to determine the distance and "
2943 "rotational change between arrayed items");
2951 prop,
NULL,
"rna_ArrayModifier_start_cap_set",
NULL,
"rna_Mesh_object_poll");
2958 prop,
NULL,
"rna_ArrayModifier_end_cap_set",
NULL,
"rna_Mesh_object_poll");
2986 srna,
"EdgeSplit Modifier",
"Edge splitting modifier to create sharp edges");
3021 "Use the texture's intensity value to displace in the X direction"},
3026 "Use the texture's intensity value to displace in the Y direction"},
3031 "Use the texture's intensity value to displace in the Z direction"},
3036 "Use the texture's intensity value to displace along the vertex normal"},
3041 "Use the texture's intensity value to displace along the (averaged) custom normal (falls "
3047 "Use the texture's RGB values to displace the mesh in the XYZ direction"},
3069 "Name of Vertex Group which determines influence of modifier per point");
3113 srna,
"UV Project Modifier",
"UV projection modifier to set UVs from a projector");
3135 "rna_UVProject_projectors_begin",
3136 "rna_iterator_array_next",
3137 "rna_iterator_array_end",
3138 "rna_iterator_array_get",
3151 prop,
"Aspect X",
"Horizontal aspect ratio (only used for camera projectors)");
3160 prop,
"Aspect Y",
"Vertical aspect ratio (only used for camera projectors)");
3185 prop,
"rna_UVProjector_object_get",
"rna_UVProjector_object_set",
NULL,
NULL);
3238 "Name of Vertex Group which determines influence of modifier per point");
3260 "Use the average of adjacent edge-vertices"},
3265 "Use the average of adjacent edge-vertices weighted by their length"},
3274 "Use base mesh vertex coords as the rest position"},
3279 "Use bind vertex coords for rest position"},
3283 srna =
RNA_def_struct(brna,
"CorrectiveSmoothModifier",
"Modifier");
3285 srna,
"Corrective Smooth Modifier",
"Correct distortion caused by deformation");
3333 "Name of Vertex Group which determines influence of modifier per point");
3346 prop,
"Only Smooth",
"Apply smoothing without reconstructing the surface");
3352 prop,
"Pin Boundaries",
"Excludes boundary vertices from being smoothed");
3363 srna =
RNA_def_struct(brna,
"LaplacianSmoothModifier",
"Modifier");
3420 "Name of Vertex Group which determines influence of modifier per point");
3461 "Control object: if available, its location determines the center of the effect");
3489 prop,
"Size from Radius",
"Use radius as size of projection shape (0 = auto)");
3495 prop,
"Use Transform",
"Use object transform to control projection shape");
3511 "Only deform vertices within this distance from the center of the effect "
3512 "(leave as 0 for infinite.)");
3536 {0,
"VOLUME", 0,
"Volume",
"Bind to volume inside cage mesh"},
3537 {1,
"SURFACE", 0,
"Surface",
"Bind to surface of cage mesh"},
3544 srna,
"MeshDeform Modifier",
"Mesh deformation modifier to deform with other meshes");
3553 prop,
NULL,
"rna_MeshDeformModifier_object_set",
NULL,
"rna_Mesh_object_poll");
3583 "Recompute binding dynamically on top of other deformers "
3584 "(slower and more memory consuming)");
3602 srna =
RNA_def_struct(brna,
"ParticleSystemModifier",
"Modifier");
3627 "Use offset from the particle object in the instance object"},
3632 "Use world space offset in the instance object"},
3636 srna =
RNA_def_struct(brna,
"ParticleInstanceModifier",
"Modifier");
3659 "rna_ParticleInstanceModifier_particle_system_get",
3660 "rna_ParticleInstanceModifier_particle_system_set",
3662 "rna_ParticleInstanceModifier_particle_system_poll");
3753 "Relative offset of particles to use for instancing, to avoid overlap "
3754 "of multiple instances");
3765 prop,
"Value Layer Name",
"Custom data layer name for the randomized value");
3778 srna,
"Explode Modifier",
"Explosion effect modifier based on a particle system");
3786 "rna_ExplodeModifier_vgroup_get",
3787 "rna_ExplodeModifier_vgroup_length",
3788 "rna_ExplodeModifier_vgroup_set");
3890 {0,
"NONE", 0,
"None",
""},
3962 "Collision Modifier",
3963 "Collision modifier defining modifier stack position used for collision");
3984 {0,
"NONE", 0,
"None",
"Bevel the entire mesh by a constant amount"},
3989 "Only bevel edges with sharp enough angles between faces"},
3994 "Use bevel weights to determine how much bevel is applied in edge mode"},
3999 "Use vertex group weights to select whether vertex or edge is beveled"},
4010 "Amount is perpendicular distance from original edge to bevel face"},
4015 "Amount is percent of adjacent edge length"},
4020 "Amount is absolute distance along adjacent edge"},
4029 "The profile can be a concave or convex curve"},
4034 "The profile can be any arbitrary path between its endpoints"},
4045 "Set face strength on new and affected faces only"},
4069 "A cut-off at the end of each profile before the intersection"},
4081 srna,
"Bevel Modifier",
"Bevel modifier to make edges and vertices more rounded");
4152 prop,
"Profile Type",
"The type of shape used to rebuild a beveled section");
4165 prop,
"Material Index",
"Material index of generated faces, -1 for automatic");
4192 prop,
"Face Strength",
"Whether to set face strength, and which faces to set it on");
4224 prop,
"Vertex Mesh Method",
"The method to use to create the mesh at intersections");
4237 "NEAREST_SURFACEPOINT",
4239 "Nearest Surface Point",
4240 "Shrink the mesh to the nearest target surface"},
4245 "Shrink the mesh to the nearest target surface along a given axis"},
4250 "Shrink the mesh to the nearest target vertex"},
4254 "Target Normal Project",
4255 "Shrink the mesh to the nearest target surface "
4256 "along the interpolated vertex normals of the target"},
4261 {0,
"OFF", 0,
"Off",
"No culling"},
4266 "No projection when in front of the face"},
4271 "No projection when behind the face"},
4277 "Shrinkwrap Modifier",
4278 "Shrink wrapping modifier to shrink wrap and object to a target");
4294 prop,
"Snap Mode",
"Select how vertices are constrained to the target surface");
4301 prop,
"rna_ShrinkwrapModifier_face_cull_get",
"rna_ShrinkwrapModifier_face_cull_set",
NULL);
4305 "Stop vertices from projecting to a face on the target when facing towards/away");
4311 prop,
NULL,
"rna_ShrinkwrapModifier_target_set",
NULL,
"rna_Mesh_object_poll");
4319 prop,
NULL,
"rna_ShrinkwrapModifier_auxTarget_set",
NULL,
"rna_Mesh_object_poll");
4341 prop,
"Project Limit",
"Limit the distance used for projection (zero disables)");
4365 "Subdivision Levels",
4366 "Number of subdivisions that must be performed before extracting vertices' "
4367 "positions and normals");
4373 prop,
"Negative",
"Allow vertices to move in the negative direction of axis");
4379 prop,
"Positive",
"Allow vertices to move in the positive direction of axis");
4385 prop,
"Invert Cull",
"When projecting in the negative direction invert the face cull mode");
4423 prop,
NULL,
"rna_MaskModifier_ob_arm_set",
NULL,
"rna_Armature_object_poll");
4458 "Rotate around the Z axis of the modifier space"},
4463 "Bend the mesh over the Z axis of the modifier space"},
4468 "Linearly scale along Z axis of the modifier space"},
4473 "Stretch the object along the Z axis of the modifier space"},
4480 "SimpleDeform Modifier",
4481 "Simple deformation modifier to apply effects such as twisting and bending");
4561 "Surface modifier defining modifier stack position used for surface fields");
4573 "Output a solidified version of a mesh by simple extrusion"},
4578 "Output a manifold mesh even if the base mesh is non-manifold, "
4579 "where edges have 3 or more connecting faces. "
4580 "This method is slower"},
4589 "Most basic thickness calculation"},
4594 "Even thickness calculation which takes the angle between faces into account"},
4599 "Thickness calculation using constraints, most advanced"},
4609 "Round open perimeter shape"},
4614 "Flat open perimeter shape"},
4623 srna,
"Solidify Modifier",
"Create a solid skin, compensating for sharp angles");
4659 prop,
"Vertex Group Factor",
"Thickness factor to use for zero vertex group influence");
4700 prop,
"Rim Material Offset",
"Offset material index of generated rim faces");
4712 "Shell Vertex Group",
4713 "Vertex group that the generated shell geometry will be weighted to");
4721 "Vertex group that the generated rim geometry will be weighted to");
4729 "Create edge loops between the inner and outer surfaces on face edges "
4730 "(slow, disable when not needed)");
4738 "Maintain thickness by adjusting for sharp corners (slow, disable when not needed)");
4745 "High Quality Normals",
4746 "Calculate normals which result in more even thickness (slow, disable when not needed)");
4758 "Make faces use the minimal vertex weight assigned to their vertices"
4759 "(ensures new faces remain parallel to their original ones, slow, "
4760 "disable when not needed)");
4790 prop,
"Merge Threshold",
"Distance within which degenerated geometry is merged");
4871 prop,
"Calculate Order",
"Calculate the order of edges (needed for meshes, but not curves)");
4877 prop,
"Object Screw",
"Use the distance between the objects to make a screw");
4884 prop,
"Merge Vertices",
"Merge adjacent vertices (screw offset must be zero)");
4890 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
4896 prop,
"Stretch U",
"Stretch the U coordinates between 0 and 1 when UV's are present");
4902 prop,
"Stretch V",
"Stretch the V coordinates between 0 and 1 when UV's are present");
4909 prop,
"Object Angle",
"Use the angle between the objects rather than the fixed angle");
5004 const char *mask_flags,
5005 const char *mask_vgroup_setter,
5006 const char *mask_uvlayer_setter)
5015 "Use local generated coordinates of another object"},
5040 prop,
"Influence",
"Global influence of current modifications on vgroup");
5067 "Texture Coordinates",
5068 "Which texture coordinates "
5069 "to use for mapping");
5081 "Texture Coordinate Object",
5082 "Which object to take texture "
5083 "coordinates from");
5090 prop,
"Texture Coordinate Bone",
"Which bone to take texture coordinates from");
5110 "Map all values below 0.5 to 0.0, and all others to 1.0"},
5117 srna =
RNA_def_struct(brna,
"VertexWeightEditModifier",
"Modifier");
5119 srna,
"WeightVG Edit Modifier",
"Edit the weights of vertices in a group");
5146 "Normalize Weights",
5147 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
5159 "Add vertices with weight over threshold "
5167 "Remove vertices with weight below threshold "
5176 "Default weight a vertex will have if "
5177 "it is not in the vgroup");
5186 "Lower bound for a vertex's weight "
5187 "to be added to the vgroup");
5196 "Upper bound for a vertex's weight "
5197 "to be removed from the vgroup");
5206 "rna_WeightVGEditModifier_mask_defgrp_name_set",
5207 "rna_WeightVGEditModifier_mask_tex_uvlayer_name_set");
5213 {
MOD_WVG_MIX_SET,
"SET", 0,
"Replace",
"Replace VGroup A's weights by VGroup B's ones"},
5214 {
MOD_WVG_MIX_ADD,
"ADD", 0,
"Add",
"Add VGroup B's weights to VGroup A's ones"},
5215 {
MOD_WVG_MIX_SUB,
"SUB", 0,
"Subtract",
"Subtract VGroup B's weights from VGroup A's ones"},
5216 {
MOD_WVG_MIX_MUL,
"MUL", 0,
"Multiply",
"Multiply VGroup A's weights by VGroup B's ones"},
5217 {
MOD_WVG_MIX_DIV,
"DIV", 0,
"Divide",
"Divide VGroup A's weights by VGroup B's ones"},
5222 "Difference between VGroup A's and VGroup B's weights"},
5223 {
MOD_WVG_MIX_AVG,
"AVG", 0,
"Average",
"Average value of VGroup A's and VGroup B's weights"},
5228 {
MOD_WVG_SET_ALL,
"ALL", 0,
"All",
"Affect all vertices (might add some to VGroup A)"},
5229 {
MOD_WVG_SET_A,
"A", 0,
"VGroup A",
"Affect vertices in VGroup A"},
5234 "Affect vertices in VGroup B (might add some to VGroup A)"},
5239 "Affect vertices in at least one of both VGroups (might add some to VGroup A)"},
5240 {
MOD_WVG_SET_AND,
"AND", 0,
"VGroup A and B",
"Affect vertices in both groups"},
5247 srna =
RNA_def_struct(brna,
"VertexWeightMixModifier",
"Modifier");
5281 "Default weight a vertex will have if "
5282 "it is not in the first A vgroup");
5290 "Default weight a vertex will have if "
5291 "it is not in the second B vgroup");
5298 "How weights from vgroup B affect weights "
5311 "Normalize Weights",
5312 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
5321 "rna_WeightVGMixModifier_mask_defgrp_name_set",
5322 "rna_WeightVGMixModifier_mask_tex_uvlayer_name_set");
5332 "Use distance between affected and target objects"},
5337 "Use distance between affected object's vertices and target "
5338 "object, or target object's geometry"},
5361 "Map all values below 0.5 to 0.0, and all others to 1.0"},
5368 srna =
RNA_def_struct(brna,
"VertexWeightProximityModifier",
"Modifier");
5370 "WeightVG Proximity Modifier",
5371 "Set the weights of vertices in a group from a target object's "
5396 "Proximity Geometry",
5397 "Use the shortest computed distance to target object's geometry "
5435 "Normalize Weights",
5436 "Normalize the resulting weights (otherwise they are only clamped within 0.0 to 1.0 range)");
5450 "rna_WeightVGProximityModifier_mask_defgrp_name_set",
5451 "rna_WeightVGProximityModifier_mask_tex_uvlayer_name_set");
5457 {
MOD_REMESH_CENTROID,
"BLOCKS", 0,
"Blocks",
"Output a blocky surface with no smoothing"},
5462 "Output a smooth surface with no sharp-features detection"},
5467 "Output a surface that reproduces sharp edges and corners from the input mesh"},
5472 "Output a mesh corresponding to the volume of the original mesh"},
5483 "Generate a new surface with regular topology that follows the shape of the input mesh");
5498 prop,
"Scale",
"The ratio of the largest dimension of the model over the size of the grid");
5507 "If removing disconnected pieces, minimum size of components to preserve as a ratio "
5508 "of the number of polygons in the largest component");
5516 prop,
"Octree Depth",
"Resolution of the octree; higher values give finer details");
5525 "Tolerance for outliers; lower values filter noise while higher values will reproduce "
5526 "edges closer to the input");
5535 "Size of the voxel in object space used for volume evaluation. Lower "
5536 "values preserve finer details");
5545 "Reduces the final face count by simplifying geometry where detail is not needed, "
5546 "generating triangles. A value greater than 0 disables Fix Poles");
5557 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
5573 "Generate ocean surface geometry at the specified resolution"},
5578 "Displace existing geometry according to simulation"},
5584 "Leaves geometry unchanged, but still runs simulation (to be used from texture)"},
5594 "Use for turbulent seas with foam"},
5596 "PIERSON_MOSKOWITZ",
5598 "Established Ocean",
5599 "Use for a large area, established ocean (Pierson-Moskowitz method)"},
5603 "Established Ocean (Sharp Peaks)",
5604 "Use for sharp peaks ('JONSWAP', Pierson-Moskowitz method) with peak sharpening"},
5606 "TEXEL_MARSEN_ARSLOE",
5609 "Use for shallow water ('JONSWAP', 'TMA' - Texel-Marsen-Arsloe method)"},
5629 prop,
"Size",
"Surface scale factor (does not affect the height of the waves)");
5655 "Output normals for bump mapping - disabling can speed up performance if its not needed");
5668 prop,
"Generate Spray Map",
"Generate map of spray direction as a vertex color channel");
5681 prop,
"Spray Map",
"Name of the vertex color layer used for the spray direction map");
5690 prop,
"Render Resolution",
"Resolution of the generated surface for rendering and baking");
5699 prop,
"Viewport Resolution",
"Viewport resolution of the generated surface");
5709 "Size of the simulation domain (in meters), and of the generated geometry (in BU)");
5722 prop,
"Damping",
"Damp reflected waves going in opposite direction to the wind");
5743 prop,
"Wave Direction",
"Main direction of the waves when they are (partially) aligned");
5767 prop,
"Foam Fade",
"How much foam accumulates over time (baked ocean only)");
5774 prop,
"Foam Layer Name",
"Name of the vertex color layer used for foam");
5782 "Choppiness of the wave's crest (adds some horizontal component to the displacement)");
5807 "This is the distance from a lee shore, "
5808 "called the fetch, or the distance over which the wind blows with constant velocity. "
5809 "Used by 'JONSWAP' and 'TMA' models");
5841 prop,
"Ocean is Cached",
"Whether the ocean is using cached data or simulating");
5872 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
5923 "Triangulate only polygons with vertex count greater than or equal to this number");
5931 "Try to preserve custom normals.\n"
5932 "Warning: Depending on chosen triangulation method, "
5933 "shading may not be fully preserved, \"Fixed\" method usually gives the best result here");
5952 "Replace vertex coords with cached values"},
5957 "Integrate deformation from this modifiers input with the mesh-cache coords (useful for "
5976 "Control playback using a frame-number "
5977 "(ignoring time FPS and start frame from the file)"},
5985 "Control playback using a value between 0 and 1"},
6124 srna =
RNA_def_struct(brna,
"MeshSequenceCacheModifier",
"Modifier");
6142 "Path to the object in the Alembic archive used to lookup geometric data");
6163 prop,
"Vertex Interpolation",
"Allow interpolation of vertex positions");
6172 "Multiplier used to control the magnitude of the velocity vectors for time effects");
6181 prop,
"Fluid Mesh Vertices",
"Vertices of the fluid mesh generated by simulation");
6203 srna =
RNA_def_struct(brna,
"LaplacianDeformModifier",
"Modifier");
6213 prop,
"Anchor Weights",
"Name of Vertex Group which determines Anchors");
6215 prop,
NULL,
NULL,
"rna_LaplacianDeformModifier_anchor_grp_name_set");
6271 prop,
"Vertex Group",
"Vertex group name for selecting the affected areas");
6307 prop,
"Vertex Group Factor",
"Thickness factor to use for zero vertex group influence");
6340 prop,
"Offset Relative",
"Crease hub edges for improved subdivision surface");
6359 prop,
"Vertex Group",
"Vertex group name for selecting the affected areas");
6381 "Transfer active or all vertex groups"},
6383 {
DT_TYPE_SHAPEKEY,
"SHAPEKEYS", 0,
"Shapekey(s)",
"Transfer active or all shape keys"},
6388 {
DT_TYPE_SKIN,
"SKIN", 0,
"Skin Weight",
"Transfer skin weights"},
6396 {
DT_TYPE_SEAM,
"SEAM", 0,
"UV Seam",
"Transfer UV seam mark"},
6397 {
DT_TYPE_CREASE,
"CREASE", 0,
"Crease",
"Transfer subdivision crease values"},
6404 {
DT_TYPE_LNOR,
"CUSTOM_NORMAL", 0,
"Custom Normals",
"Transfer custom normals"},
6405 {
DT_TYPE_VCOL,
"VCOL", 0,
"Vertex Colors",
"Vertex (face corners) colors"},
6406 {
DT_TYPE_UV,
"UV", 0,
"UVs",
"Transfer UV layers"},
6416 "Transfer Freestyle face mark"},
6422 srna,
"Data Transfer Modifier",
"Modifier transferring some data from a source mesh");
6433 prop,
NULL,
"rna_DataTransferModifier_ob_source_set",
NULL,
"rna_Mesh_object_poll");
6437 "use_object_transform",
6440 "Evaluate source and destination meshes in global space");
6446 srna,
"use_vert_data",
false,
"Vertex Data",
"Enable vertex data transfer");
6450 prop =
RNA_def_boolean(srna,
"use_edge_data",
false,
"Edge Data",
"Enable edge data transfer");
6455 srna,
"use_loop_data",
false,
"Face Corner Data",
"Enable face corner data transfer");
6459 prop =
RNA_def_boolean(srna,
"use_poly_data",
false,
"Face Data",
"Enable face data transfer");
6466 DT_layer_vert_items,
6468 "Vertex Data Types",
6469 "Which vertex data layers to transfer");
6477 DT_layer_edge_items,
6480 "Which edge data layers to transfer");
6488 DT_layer_loop_items,
6490 "Face Corner Data Types",
6491 "Which face corner data layers to transfer");
6499 DT_layer_poly_items,
6502 "Which poly data layers to transfer");
6514 "Method used to map source vertices to destination ones");
6523 "Method used to map source edges to destination ones");
6531 "Face Corner Mapping",
6532 "Method used to map source faces' corners to destination ones");
6541 "Method used to map source faces to destination ones");
6550 "Only Neighbor Geometry",
6551 "Source elements must be closer than given distance from destination one");
6562 "Maximum allowed distance between source and destination element, for non-topology mappings",
6576 "'Width' of rays (especially useful when raycasting against vertices or edges)",
6585 "islands_precision",
6589 "Islands Precision",
6590 "Factor controlling precision of islands handling "
6591 "(typically, 0.1 should be enough, higher values can make things really slow)",
6599 "layers_vgroup_select_src",
6602 "Source Layers Selection",
6603 "Which layers to transfer, in case of multi-layers types");
6606 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_src_itemf");
6611 "layers_shapekey_select_src",
6614 "Source Layers Selection",
6615 "Which layers to transfer, in case of multi-layers types");
6618 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_src_itemf");
6623 "layers_vcol_select_src",
6626 "Source Layers Selection",
6627 "Which layers to transfer, in case of multi-layers types");
6630 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_src_itemf");
6634 "layers_uv_select_src",
6637 "Source Layers Selection",
6638 "Which layers to transfer, in case of multi-layers types");
6641 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_src_itemf");
6645 "layers_vgroup_select_dst",
6648 "Destination Layers Matching",
6649 "How to match source and destination layers");
6652 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_dst_itemf");
6657 "layers_shapekey_select_dst",
6660 "Destination Layers Matching",
6661 "How to match source and destination layers");
6664 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_dst_itemf");
6669 "layers_vcol_select_dst",
6672 "Destination Layers Matching",
6673 "How to match source and destination layers");
6676 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_dst_itemf");
6680 "layers_uv_select_dst",
6683 "Destination Layers Matching",
6684 "How to match source and destination layers");
6687 prop,
NULL,
NULL,
"rna_DataTransferModifier_layers_select_dst_itemf");
6696 "How to affect destination elements with source values");
6707 "Factor to use when applying data to destination (exact behavior depends on mix mode, "
6708 "multiplied with weights from vertex group when defined)",
6718 "Vertex group name for selecting the affected areas");
6724 srna,
"invert_vertex_group",
false,
"Invert",
"Invert vertex group influence");
6741 "From an ellipsoid (shape defined by the boundbox's dimensions, target is optional)"},
6746 "Normals 'track' (point to) the target object"},
6758 "Copy product of old and new normals (not cross product)"},
6764 srna,
"Normal Edit Modifier",
"Modifier affecting/generating custom normals");
6782 "Offset from object's center",
6796 prop,
"Mix Factor",
"How much of generated normals to mix with exiting ones");
6808 "Lock Polygon Normals",
6809 "Do not flip polygons when their normals are not consistent "
6810 "with their newly computed custom vertex normals");
6816 prop,
"Vertex Group",
"Vertex group name for selecting/weighting the affected areas");
6836 "Use same direction for all normals, from origin to target's center "
6837 "(Directional mode only)");
6848 srna =
RNA_def_struct(brna,
"SurfaceDeformModifier",
"Modifier");
6858 prop,
NULL,
"rna_SurfaceDeformModifier_target_set",
NULL,
"rna_Mesh_object_poll");
6865 prop,
"Interpolation Falloff",
"Controls how much nearby polygons influence deformation");
6876 prop,
"Vertex Group",
"Vertex group name for selecting/weighting the affected areas");
6904 "Generate face area weighted normals"},
6909 "Generate corner angle weighted normals"},
6911 "FACE_AREA_WITH_ANGLE",
6913 "Face Area And Angle",
6914 "Generated normals weighted by both face area and angle"},
6918 srna =
RNA_def_struct(brna,
"WeightedNormalModifier",
"Modifier");
6930 "Corrective factor applied to faces' weights, 50 is neutral, "
6931 "lower values increase weight of weak faces, "
6932 "higher values increase weight of strong faces");
6944 prop,
"Threshold",
"Threshold value for different weights to be considered equal");
6951 "Keep sharp edges as computed for default split normals, "
6952 "instead of setting a single weighted normal for each vertex");
6958 prop,
"Vertex Group",
"Vertex group name for modifying the selected areas");
7007 "Desired number of voxels along one axis"},
7012 "Desired voxel side length"},
7031 prop,
"Resolution Mode",
"Mode for how the desired voxel size is specified");
7036 prop,
"Voxel Size",
"Smaller values result in a higher resolution output");
7049 prop,
"Fill Volume",
"Initialize the density grid in every cell inside the enclosed volume");
7077 "Use the local coordinate system for the texture coordinates"},
7082 "Use the global coordinate system for the texture coordinates"},
7087 "Use the linked object's local coordinate system for the texture coordinates"},
7094 srna =
RNA_def_struct(brna,
"VolumeDisplaceModifier",
"Modifier");
7123 prop,
"Texture Mid Level",
"Subtracted from the texture color to get a displacement vector");
7131 "Texture Sample Radius",
7132 "Smaller values result in better performance but might cut off the volume");
7150 "Use resolution of the volume grid"},
7155 "Desired number of voxels along one axis"},
7160 "Desired voxel side length"},
7178 prop,
"Threshold",
"Voxels with a larger value are inside the generated mesh");
7187 "Reduces the final face count by simplifying geometry where detail is not needed");
7194 prop,
"Smooth Shading",
"Output faces with smooth shading rather than flat shaded");
7199 prop,
"Grid Name",
"Grid in the volume object that is converted to a mesh");
7205 prop,
"Resolution Mode",
"Mode for how the desired voxel size is specified");
7210 prop,
"Voxel Size",
"Smaller values result in a higher resolution output");
7279 prop,
"rna_Modifier_show_expanded_get",
"rna_Modifier_show_expanded_set");
7301 "Apply this and all preceding deformation modifiers on splines' points rather than "
7302 "on filled curve/surface");
bool ABC_has_vec3_array_property_named(struct CacheReader *reader, const char *name)
int ABC_read_velocity_cache(struct CacheReader *reader, const char *velocity_name, float time, float velocity_scale, int num_vertices, float *r_vertex_velocities)
void BKE_animdata_fix_paths_rename_all(struct ID *ref_id, const char *prefix, const char *oldName, const char *newName)
struct Depsgraph * CTX_data_ensure_evaluated_depsgraph(const bContext *C)
struct Object * CTX_data_active_object(const bContext *C)
void BKE_curveprofile_init(struct CurveProfile *profile, short segments_len)
const char * CustomData_get_layer_name(const struct CustomData *data, int type, int n)
int CustomData_number_of_layers(const struct CustomData *data, int type)
@ CDT_MIX_REPLACE_BELOW_THRESHOLD
@ CDT_MIX_REPLACE_ABOVE_THRESHOLD
const CustomData_MeshMasks CD_MASK_BAREMESH
bool CustomData_external_test(struct CustomData *data, int type)
@ DT_LAYERS_VGROUP_SRC_BONE_SELECT
@ DT_LAYERS_VGROUP_SRC_BONE_DEFORM
int BKE_object_data_transfer_get_dttypes_item_types(const int dtdata_types)
bool BKE_object_data_transfer_get_dttypes_capacity(const int dtdata_types, bool *r_advanced_mixing, bool *r_threshold)
@ DT_MULTILAYER_INDEX_MDEFORMVERT
@ DT_MULTILAYER_INDEX_VCOL
void BKE_fluid_modifier_create_type_data(struct FluidModifierData *fmd)
void BKE_fluid_modifier_free(struct FluidModifierData *fmd)
struct IDProperty * IDP_New(const char type, const IDPropertyTemplate *val, const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
void id_lib_extern(struct ID *id)
@ MREMAP_MODE_VERT_EDGE_NEAREST
@ MREMAP_MODE_LOOP_POLYINTERP_NEAREST
@ MREMAP_MODE_VERT_POLYINTERP_VNORPROJ
@ 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_VERT_POLY_NEAREST
@ MREMAP_MODE_POLY_NEAREST
@ MREMAP_MODE_VERT_POLYINTERP_NEAREST
struct Mesh * mesh_get_eval_final(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob, const struct CustomData_MeshMasks *dataMask)
const ModifierTypeInfo * BKE_modifier_get_info(ModifierType type)
bool BKE_modifier_unique_name(struct ListBase *modifiers, struct ModifierData *md)
void multires_force_external_reload(struct Object *object)
General operations, lookup, etc. for blender objects.
void BKE_object_modifier_hook_reset(struct Object *ob, struct HookModifierData *hmd)
struct Object * BKE_object_pose_armature_get(struct Object *ob)
void BKE_ocean_free_modifier_cache(struct OceanModifierData *omd)
void BKE_reportf(ReportList *reports, ReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
int BLI_findindex(const struct ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
MINLINE int max_ii(int a, int b)
int BLI_sortutil_cmp_int(const void *a_, const void *b_)
size_t size_t char * BLI_sprintfN(const char *__restrict format,...) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) ATTR_MALLOC ATTR_PRINTF_FORMAT(1
size_t size_t char size_t BLI_str_escape(char *__restrict dst, const char *__restrict src, const size_t dst_maxncpy) ATTR_NONNULL()
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, const size_t maxncpy) ATTR_NONNULL()
char * BLI_strncpy_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL()
#define UNUSED_VARS_NDEBUG(...)
#define SET_FLAG_FROM_TEST(value, test, flag)
#define BLT_I18NCONTEXT_ID_CURVE
#define BLT_I18NCONTEXT_ID_PARTICLESETTINGS
struct Depsgraph Depsgraph
void DEG_id_tag_update(struct ID *id, int flag)
void DEG_relations_tag_update(struct Main *bmain)
struct Object * DEG_get_evaluated_object(const struct Depsgraph *depsgraph, struct Object *object)
struct Scene * DEG_get_evaluated_scene(const struct Depsgraph *graph)
@ IDOVERRIDE_LIBRARY_OP_REPLACE
#define MAX_CUSTOMDATA_LAYER_NAME
@ MOD_DECIM_FLAG_INVERT_VGROUP
@ MOD_DECIM_FLAG_SYMMETRY
@ MOD_DECIM_FLAG_TRIANGULATE
@ MOD_DECIM_FLAG_ALL_BOUNDARY_VERTS
@ MOD_REMESH_SMOOTH_SHADING
@ MOD_TRIANGULATE_QUAD_SHORTEDGE
@ MOD_TRIANGULATE_QUAD_FIXED
@ MOD_TRIANGULATE_QUAD_BEAUTY
@ MOD_TRIANGULATE_QUAD_ALTERNATE
@ MOD_WEIGHTEDNORMAL_KEEP_SHARP
@ MOD_WEIGHTEDNORMAL_FACE_INFLUENCE
@ MOD_WEIGHTEDNORMAL_INVERT_VGROUP
@ eWarp_Falloff_InvSquare
@ MOD_WVG_MIX_INVERT_VGROUP_B
@ MOD_WVG_MIX_WEIGHTS_NORMALIZE
@ MOD_WVG_MIX_INVERT_VGROUP_A
@ eMultiresModifierFlag_UseSculptBaseMesh
@ eMultiresModifierFlag_UseCrease
@ eMultiresModifierFlag_UseCustomNormals
@ eMultiresModifierFlag_ControlEdges
@ eModifierMode_ApplyOnSpline
@ MOD_MESHSEQ_INTERPOLATE_VERTICES
@ MOD_SIMPLEDEFORM_LOCK_AXIS_Z
@ MOD_SIMPLEDEFORM_LOCK_AXIS_X
@ MOD_SIMPLEDEFORM_LOCK_AXIS_Y
@ eBooleanModifierSolver_Exact
@ eBooleanModifierSolver_Fast
@ MOD_CAST_USE_OB_TRANSFORM
@ MOD_CAST_SIZE_FROM_RADIUS
@ MOD_BEVEL_PROFILE_CUSTOM
@ MOD_BEVEL_PROFILE_SUPERELLIPSE
@ eParticleInstanceFlag_Parents
@ eParticleInstanceFlag_Alive
@ eParticleInstanceFlag_Dead
@ eParticleInstanceFlag_Children
@ eParticleInstanceFlag_Unborn
@ eParticleInstanceFlag_Path
@ eParticleInstanceFlag_UseSize
@ eParticleInstanceFlag_KeepShape
@ MOD_SHRINKWRAP_ON_SURFACE
@ MOD_SHRINKWRAP_ABOVE_SURFACE
@ MOD_SHRINKWRAP_OUTSIDE_SURFACE
@ MOD_MESHCACHE_INTERP_LINEAR
@ MOD_MESHCACHE_INTERP_NONE
@ SUBSURF_TYPE_CATMULL_CLARK
@ MOD_REMESH_SHARP_FEATURES
@ eBooleanModifierBMeshFlag_BMesh_NoDissolve
@ eBooleanModifierBMeshFlag_BMesh_Separate
@ eBooleanModifierBMeshFlag_BMesh_NoConnectRegions
@ MOD_LAPLACIANSMOOTH_PRESERVE_VOLUME
@ MOD_LAPLACIANSMOOTH_NORMALIZED
@ MOD_LAPLACIANSMOOTH_INVERT_VGROUP
#define MOD_SHRINKWRAP_CULL_TARGET_MASK
@ MOD_VOLUME_DISPLACE_MAP_GLOBAL
@ MOD_VOLUME_DISPLACE_MAP_LOCAL
@ MOD_VOLUME_DISPLACE_MAP_OBJECT
@ MOD_OCEAN_SPECTRUM_TEXEL_MARSEN_ARSLOE
@ MOD_OCEAN_SPECTRUM_JONSWAP
@ MOD_OCEAN_SPECTRUM_PHILLIPS
@ MOD_OCEAN_SPECTRUM_PIERSON_MOSKOWITZ
@ SUBSURF_BOUNDARY_SMOOTH_ALL
@ SUBSURF_BOUNDARY_SMOOTH_PRESERVE_CORNERS
@ MOD_SHRINKWRAP_PROJECT_OVER_X_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Y_AXIS
@ MOD_SHRINKWRAP_PROJECT_OVER_Z_AXIS
@ MOD_WVG_PROXIMITY_OBJECT
@ MOD_WVG_PROXIMITY_GEOMETRY
@ eBooleanModifierFlag_Collection
@ eBooleanModifierFlag_Self
@ eBooleanModifierFlag_HoleTolerant
@ eBooleanModifierFlag_Object
@ MOD_BEVEL_HARDEN_NORMALS
@ MOD_BEVEL_INVERT_VGROUP
@ MOD_OCEAN_GEOM_GENERATE
@ MOD_OCEAN_GEOM_SIM_ONLY
@ MOD_OCEAN_GEOM_DISPLACE
@ MOD_UVWARP_INVERT_VGROUP
@ MOD_SHRINKWRAP_TARGET_PROJECT
@ MOD_SHRINKWRAP_NEAREST_VERTEX
@ MOD_SHRINKWRAP_NEAREST_SURFACE
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_EVEN
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_FIXED
@ MOD_SOLIDIFY_NONMANIFOLD_OFFSET_MODE_CONSTRAINTS
@ MOD_CORRECTIVESMOOTH_ONLY_SMOOTH
@ MOD_CORRECTIVESMOOTH_PIN_BOUNDARY
@ MOD_CORRECTIVESMOOTH_INVERT_VGROUP
@ MOD_CORRECTIVESMOOTH_RESTSOURCE_ORCO
@ MOD_CORRECTIVESMOOTH_RESTSOURCE_BIND
@ MOD_SMOOTH_INVERT_VGROUP
@ MOD_SCREW_SMOOTH_SHADING
@ MOD_SCREW_OBJECT_OFFSET
@ MOD_LAPLACIANDEFORM_BIND
@ MOD_LAPLACIANDEFORM_INVERT_VGROUP
@ MOD_WEIGHTEDNORMAL_MODE_FACE
@ MOD_WEIGHTEDNORMAL_MODE_FACE_ANGLE
@ MOD_WEIGHTEDNORMAL_MODE_ANGLE
@ MOD_SOLIDIFY_MODE_NONMANIFOLD
@ MOD_SOLIDIFY_MODE_EXTRUDE
@ MOD_NORMALEDIT_MODE_RADIAL
@ MOD_NORMALEDIT_MODE_DIRECTIONAL
@ MOD_WIREFRAME_OFS_RELATIVE
@ MOD_WIREFRAME_INVERT_VGROUP
@ MOD_MESHCACHE_DEFORM_INTEGRATE
@ MOD_MESHCACHE_DEFORM_OVERWRITE
@ eModifierType_MeshToVolume
@ eModifierType_ParticleSystem
@ eModifierType_MeshDeform
@ eModifierType_LaplacianSmooth
@ eModifierType_WeightVGProximity
@ eModifierType_SimpleDeform
@ eModifierType_NormalEdit
@ eModifierType_VolumeToMesh
@ eModifierType_Shrinkwrap
@ eModifierType_MeshSequenceCache
@ eModifierType_EdgeSplit
@ eModifierType_Wireframe
@ eModifierType_WeightVGMix
@ eModifierType_VolumeDisplace
@ eModifierType_LaplacianDeform
@ eModifierType_DataTransfer
@ eModifierType_UVProject
@ eModifierType_SurfaceDeform
@ eModifierType_CorrectiveSmooth
@ eModifierType_ParticleInstance
@ eModifierType_Collision
@ eModifierType_DynamicPaint
@ eModifierType_MeshCache
@ eModifierType_WeightVGEdit
@ eModifierType_WeightedNormal
@ eModifierType_Triangulate
@ MOD_TRIANGULATE_NGON_BEAUTY
@ MOD_TRIANGULATE_NGON_EARCLIP
@ MOD_WELD_MODE_CONNECTED
@ MOD_MESHCACHE_PLAY_CFEA
@ MOD_MESHCACHE_PLAY_EVAL
@ MOD_SIMPLEDEFORM_MODE_TAPER
@ MOD_SIMPLEDEFORM_MODE_STRETCH
@ MOD_SIMPLEDEFORM_MODE_BEND
@ MOD_SIMPLEDEFORM_MODE_TWIST
@ 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_DECIM_MODE_UNSUBDIV
@ MOD_DECIM_MODE_COLLAPSE
@ MOD_DECIM_MODE_DISSOLVE
@ MOD_NORMALEDIT_NO_POLYNORS_FIX
@ MOD_NORMALEDIT_INVERT_VGROUP
@ MOD_NORMALEDIT_USE_DIRECTION_PARALLEL
@ MOD_WARP_VOLUME_PRESERVE
@ MOD_NORMALEDIT_MIX_COPY
@ MOD_CURVE_INVERT_VGROUP
@ MOD_WVG_PROXIMITY_WEIGHTS_NORMALIZE
@ MOD_WVG_PROXIMITY_GEOM_VERTS
@ MOD_WVG_PROXIMITY_INVERT_FALLOFF
@ MOD_WVG_PROXIMITY_GEOM_EDGES
@ MOD_WVG_PROXIMITY_GEOM_FACES
@ MOD_EDGESPLIT_FROMANGLE
@ VOLUME_TO_MESH_USE_SMOOTH_SHADE
@ eExplodeFlag_INVERT_VGROUP
@ MOD_LATTICE_INVERT_VGROUP
@ eSubsurfModifierFlag_UseRecursiveSubdivision
@ eSubsurfModifierFlag_UseCrease
@ eSubsurfModifierFlag_ControlEdges
@ eSubsurfModifierFlag_UseCustomNormals
@ 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_SIMPLEDEFORM_FLAG_INVERT_VGROUP
@ MOD_SKIN_SMOOTH_SHADING
@ MOD_BEVEL_AFFECT_VERTICES
@ MOD_MIR_BISECT_FLIP_AXIS_X
@ MOD_BEVEL_FACE_STRENGTH_NONE
@ MOD_BEVEL_FACE_STRENGTH_AFFECTED
@ MOD_BEVEL_FACE_STRENGTH_NEW
@ MOD_BEVEL_FACE_STRENGTH_ALL
@ 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_CORRECTIVESMOOTH_SMOOTH_LENGTH_WEIGHT
@ MOD_CORRECTIVESMOOTH_SMOOTH_SIMPLE
@ MOD_WVG_EDIT_INVERT_VGROUP_MASK
@ MOD_WVG_EDIT_WEIGHTS_NORMALIZE
#define MOD_UVPROJECT_MAXPROJECTORS
@ eBooleanModifierOp_Intersect
@ eBooleanModifierOp_Union
@ eBooleanModifierOp_Difference
@ MOD_SOLIDIFY_NORMAL_CALC
@ MOD_SOLIDIFY_OFFSET_ANGLE_CLAMP
@ MOD_SOLIDIFY_NONMANIFOLD_FLAT_FACES
@ MOD_SOLIDIFY_VGROUP_INV
@ eParticleInstanceSpace_World
@ eParticleInstanceSpace_Local
@ MOD_OCEAN_GENERATE_NORMALS
@ MOD_OCEAN_GENERATE_FOAM
@ MOD_OCEAN_GENERATE_SPRAY
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_FLAT
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_ROUND
@ MOD_SOLIDIFY_NONMANIFOLD_BOUNDARY_MODE_NONE
@ 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_BUILD_FLAG_RANDOMIZE
@ MOD_MESHCACHE_TIME_FRAME
@ MOD_MESHCACHE_TIME_FACTOR
@ MOD_MESHCACHE_TIME_SECONDS
@ 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_TRIANGULATE_KEEP_CUSTOMLOOP_NORMALS
Object is a sort of wrapper for general info.
@ UI_PANEL_DATA_EXPAND_ROOT
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
Read Guarded memory(de)allocation.
void MOD_nodes_update_interface(Object *object, NodesModifierData *nmd)
Group RGB to Bright Vector Camera Vector Combine Material Light Line Style Layer Add Ambient Diffuse Glossy Refraction Transparent Toon Principled Hair Volume Principled Light Particle Volume Image Sky Noise Wave Voronoi Brick Texture Vector Combine Vertex Separate Bevel
StructRNA RNA_SoftBodySettings
StructRNA RNA_ParticleSystem
StructRNA RNA_CollisionSettings
#define RNA_MAX_ARRAY_LENGTH
#define RNA_MAX_ARRAY_DIMENSION
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
return(oflags[bm->toolflag_index].f &oflag) !=0
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
SIMD_FORCE_INLINE btScalar length(const btQuaternion &q)
Return the length of a quaternion.
const Depsgraph * depsgraph
__kernel void ccl_constant KernelData ccl_global void ccl_global char ccl_global int ccl_global char ccl_global unsigned int ccl_global float * buffer
void(* MEM_freeN)(void *vmemh)
void *(* MEM_mallocN)(size_t len, const char *str)
static const EnumPropertyItem mode_items[]
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
const char * RNA_property_identifier(const PropertyRNA *prop)
const PointerRNA PointerRNA_NULL
PointerRNA RNA_property_pointer_get(PointerRNA *ptr, PropertyRNA *prop)
void rna_iterator_array_begin(CollectionPropertyIterator *iter, void *ptr, int itemsize, int length, bool free_ptr, IteratorSkipFunc skip)
int RNA_int_get(PointerRNA *ptr, const char *name)
PointerRNA rna_pointer_inherit_refine(PointerRNA *ptr, StructRNA *type, void *data)
int RNA_enum_get(PointerRNA *ptr, const char *name)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_struct_refine_func(StructRNA *srna, const char *refine)
void RNA_def_property_pointer_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_define_lib_overridable(const bool make_overridable)
void RNA_def_struct_path_func(StructRNA *srna, const char *path)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
PropertyRNA * RNA_def_int_array(StructOrFunctionRNA *cont_, const char *identifier, int len, const int *default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
PropertyRNA * RNA_def_float_array(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
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_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)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
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_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[])
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_range(PropertyRNA *prop, double min, double max)
PropertyRNA * RNA_def_float_factor(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
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[]
void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item)
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
void RNA_def_property_enum_bitflag_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_enum_item_end(EnumPropertyItem **items, int *totitem)
void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *prop)
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)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_def_property_enum_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_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_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, 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_flag(PropertyRNA *prop, PropertyFlag 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)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
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[]
void rna_object_vgroup_name_index_set(struct PointerRNA *ptr, const char *value, short *index)
void rna_object_vgroup_name_index_get(struct PointerRNA *ptr, char *value, int index)
int rna_object_vgroup_name_index_length(struct PointerRNA *ptr, 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_smooth(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_method_loop_items[]
static void rna_def_modifier_screw(BlenderRNA *brna)
static void rna_def_modifier_uvproject(BlenderRNA *brna)
static void rna_def_modifier_particleinstance(BlenderRNA *brna)
static void rna_def_modifier_edgesplit(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_explode(BlenderRNA *brna)
const EnumPropertyItem rna_enum_axis_flag_xyz_items[]
static const EnumPropertyItem modifier_warp_falloff_items[]
static void rna_def_modifier_particlesystem(BlenderRNA *brna)
static void rna_def_modifier_weightvg_mask(BlenderRNA *UNUSED(brna), StructRNA *srna, const char *mask_flags, const char *mask_vgroup_setter, const char *mask_uvlayer_setter)
static void rna_def_modifier_dynamic_paint(BlenderRNA *brna)
static void rna_def_modifier_generic_map_info(StructRNA *srna)
const EnumPropertyItem rna_enum_modifier_triangulate_ngon_method_items[]
static void rna_def_modifier_mirror(BlenderRNA *brna)
static void rna_def_modifier_normaledit(BlenderRNA *brna)
static void rna_def_modifier_displace(BlenderRNA *brna)
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_curve(BlenderRNA *brna)
static void rna_def_modifier_wireframe(BlenderRNA *brna)
static void rna_def_modifier_softbody(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_layers_select_src_items[]
static void rna_def_modifier_subsurf(BlenderRNA *brna)
static void rna_def_modifier_volume_displace(BlenderRNA *brna)
static void rna_def_modifier_wave(BlenderRNA *brna)
static void rna_def_mesh_cache_velocities(BlenderRNA *brna)
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_property_subdivision_common(StructRNA *srna)
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_laplaciansmooth(BlenderRNA *brna)
static void rna_def_modifier_hook(BlenderRNA *brna)
static void rna_def_modifier_solidify(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_mesh_to_volume(BlenderRNA *brna)
const EnumPropertyItem rna_enum_dt_layers_select_dst_items[]
static void rna_def_modifier_boolean(BlenderRNA *brna)
static void rna_def_modifier_remesh(BlenderRNA *brna)
static void rna_def_modifier_build(BlenderRNA *brna)
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 prop_solver_items[]
static const EnumPropertyItem prop_direction_items[]
struct CurveProfile * custom_profile
unsigned int bind_coords_num
CorrectiveSmoothDeltaCache delta_cache
struct Object * ob_source
struct FluidDomainSettings * domain
struct MeshCacheVertexVelocity * vertex_velocities
struct CacheReader * reader
struct CacheFile * cache_file
struct CustomData pdata ldata
struct ModifierData * next
struct ModifierData * prev
struct NodesModifierSettings settings
struct IDProperty * properties
struct PointCache * pointcache
struct SoftBody_Shared * shared
struct Object * projectors[10]
void WM_main_add_notifier(unsigned int type, void *reference)