66 {
OB_MODE_OBJECT,
"OBJECT", ICON_OBJECT_DATAMODE,
"Object Mode",
""},
67 {
OB_MODE_EDIT,
"EDIT", ICON_EDITMODE_HLT,
"Edit Mode",
""},
69 {
OB_MODE_SCULPT,
"SCULPT", ICON_SCULPTMODE_HLT,
"Sculpt Mode",
""},
78 "Edit Grease Pencil Strokes"},
83 "Sculpt Grease Pencil Strokes"},
88 "Paint Grease Pencil Strokes"},
93 "Grease Pencil Weight Paint Strokes"},
98 "Grease Pencil Vertex Paint Strokes"},
104 {
OB_MODE_OBJECT,
"OBJECT", ICON_OBJECT_DATAMODE,
"Object Mode",
""},
105 {
OB_MODE_EDIT,
"EDIT", ICON_EDITMODE_HLT,
"Edit Mode",
""},
107 {
OB_MODE_SCULPT,
"SCULPT", ICON_SCULPTMODE_HLT,
"Sculpt Mode",
""},
115 "Grease Pencil Edit Mode",
116 "Edit Grease Pencil Strokes"},
120 "Grease Pencil Sculpt Mode",
121 "Sculpt Grease Pencil Strokes"},
125 "Grease Pencil Draw",
126 "Paint Grease Pencil Strokes"},
130 "Grease Pencil Vertex Paint",
131 "Grease Pencil Vertex Paint Strokes"},
135 "Grease Pencil Weight Paint",
136 "Grease Pencil Weight Paint Strokes"},
141 {
OB_PLAINAXES,
"PLAIN_AXES", ICON_EMPTY_AXIS,
"Plain Axes",
""},
142 {
OB_ARROWS,
"ARROWS", ICON_EMPTY_ARROWS,
"Arrows",
""},
143 {
OB_SINGLE_ARROW,
"SINGLE_ARROW", ICON_EMPTY_SINGLE_ARROW,
"Single Arrow",
""},
144 {
OB_CIRCLE,
"CIRCLE", ICON_MESH_CIRCLE,
"Circle",
""},
145 {
OB_CUBE,
"CUBE", ICON_CUBE,
"Cube",
""},
160 {
GP_EMPTY,
"EMPTY", ICON_EMPTY_AXIS,
"Blank",
"Create an empty grease pencil object"},
161 {
GP_STROKE,
"STROKE", ICON_STROKE,
"Stroke",
"Create a simple stroke with basic colors"},
162 {
GP_MONKEY,
"MONKEY", ICON_MONKEY,
"Monkey",
"Construct a Suzanne grease pencil object"},
168 "Quickly set up line art for the entire scene"},
171 ICON_OUTLINER_COLLECTION,
172 "Collection Line Art",
173 "Quickly set up line art for the active collection"},
178 "Quickly set up line art for the active object"},
182 {
PAROBJECT,
"OBJECT", 0,
"Object",
"The object is parented to an object"},
183 {
PARSKEL,
"ARMATURE", 0,
"Armature",
""},
185 {
PARSKEL,
"LATTICE", 0,
"Lattice",
"The object is parented to a lattice"},
186 {
PARVERT1,
"VERTEX", 0,
"Vertex",
"The object is parented to a vertex"},
187 {
PARVERT3,
"VERTEX_3", 0,
"3 Vertices",
""},
188 {
PARBONE,
"BONE", 0,
"Bone",
"The object is parented to a bone"},
192 #define INSTANCE_ITEMS_SHARED \
193 {0, "NONE", 0, "None", ""}, \
194 {OB_DUPLIVERTS, "VERTS", 0, "Vertices", "Instantiate child objects on all vertices"}, \
196 OB_DUPLIFACES, "FACES", 0, "Faces", "Instantiate child objects on all faces" \
199 #define INSTANCE_ITEM_COLLECTION \
201 OB_DUPLICOLLECTION, "COLLECTION", 0, "Collection", "Enable collection instancing" \
215 {0,
"NONE", 0,
"None",
""},
216 {
OB_DUPLIVERTS,
"POINTS", 0,
"Points",
"Instantiate child objects on all points"},
220 #undef INSTANCE_ITEMS_SHARED
221 #undef INSTANCE_ITEM_COLLECTION
224 {
MB_BALL,
"BALL", ICON_META_BALL,
"Ball",
""},
225 {
MB_TUBE,
"CAPSULE", ICON_META_CAPSULE,
"Capsule",
""},
226 {
MB_PLANE,
"PLANE", ICON_META_PLANE,
"Plane",
""},
228 {
MB_ELIPSOID,
"ELLIPSOID", ICON_META_ELLIPSOID,
"Ellipsoid",
""},
229 {
MB_CUBE,
"CUBE", ICON_META_CUBE,
"Cube",
""},
241 #define OBTYPE_CU_CURVE \
243 OB_CURVE, "CURVE", ICON_OUTLINER_OB_CURVE, "Curve", "" \
245 #define OBTYPE_CU_SURF \
247 OB_SURF, "SURFACE", ICON_OUTLINER_OB_SURFACE, "Surface", "" \
249 #define OBTYPE_CU_FONT \
251 OB_FONT, "FONT", ICON_OUTLINER_OB_FONT, "Text", "" \
255 {
OB_MESH,
"MESH", ICON_OUTLINER_OB_MESH,
"Mesh",
""},
258 {
OB_MBALL,
"META", ICON_OUTLINER_OB_META,
"Metaball",
""},
260 {
OB_HAIR,
"HAIR", ICON_OUTLINER_OB_HAIR,
"Hair",
""},
261 {
OB_POINTCLOUD,
"POINTCLOUD", ICON_OUTLINER_OB_POINTCLOUD,
"Point Cloud",
""},
262 {
OB_VOLUME,
"VOLUME", ICON_OUTLINER_OB_VOLUME,
"Volume",
""},
263 {
OB_GPENCIL,
"GPENCIL", ICON_OUTLINER_OB_GREASEPENCIL,
"Grease Pencil",
""},
265 {
OB_ARMATURE,
"ARMATURE", ICON_OUTLINER_OB_ARMATURE,
"Armature",
""},
266 {
OB_LATTICE,
"LATTICE", ICON_OUTLINER_OB_LATTICE,
"Lattice",
""},
268 {
OB_EMPTY,
"EMPTY", ICON_OUTLINER_OB_EMPTY,
"Empty",
""},
270 {
OB_LAMP,
"LIGHT", ICON_OUTLINER_OB_LIGHT,
"Light",
""},
271 {
OB_LIGHTPROBE,
"LIGHT_PROBE", ICON_OUTLINER_OB_LIGHTPROBE,
"Light Probe",
""},
273 {
OB_CAMERA,
"CAMERA", ICON_OUTLINER_OB_CAMERA,
"Camera",
""},
275 {
OB_SPEAKER,
"SPEAKER", ICON_OUTLINER_OB_SPEAKER,
"Speaker",
""},
287 {
ROT_MODE_QUAT,
"QUATERNION", 0,
"Quaternion (WXYZ)",
"No Gimbal Lock"},
288 {
ROT_MODE_XYZ,
"XYZ", 0,
"XYZ Euler",
"XYZ Rotation Order - prone to Gimbal Lock (default)"},
289 {
ROT_MODE_XZY,
"XZY", 0,
"XZY Euler",
"XZY Rotation Order - prone to Gimbal Lock"},
290 {
ROT_MODE_YXZ,
"YXZ", 0,
"YXZ Euler",
"YXZ Rotation Order - prone to Gimbal Lock"},
291 {
ROT_MODE_YZX,
"YZX", 0,
"YZX Euler",
"YZX Rotation Order - prone to Gimbal Lock"},
292 {
ROT_MODE_ZXY,
"ZXY", 0,
"ZXY Euler",
"ZXY Rotation Order - prone to Gimbal Lock"},
293 {
ROT_MODE_ZYX,
"ZYX", 0,
"ZYX Euler",
"ZYX Rotation Order - prone to Gimbal Lock"},
298 "Axis Angle (W+XYZ), defines a rotation around some axis defined by 3D-Vector"},
303 {
OB_POSX,
"POS_X", 0,
"+X",
""},
304 {
OB_POSY,
"POS_Y", 0,
"+Y",
""},
305 {
OB_POSZ,
"POS_Z", 0,
"+Z",
""},
306 {
OB_NEGX,
"NEG_X", 0,
"-X",
""},
307 {
OB_NEGY,
"NEG_Y", 0,
"-Y",
""},
308 {
OB_NEGZ,
"NEG_Z", 0,
"-Z",
""},
352 static void rna_Object_internal_update_draw(
Main *
UNUSED(bmain),
364 rna_Object_internal_update(bmain,
scene,
ptr);
376 static void rna_Object_duplicator_visibility_flag_update(
Main *
UNUSED(bmain),
403 static void rna_Object_matrix_local_get(
PointerRNA *
ptr,
float values[16])
409 static void rna_Object_matrix_local_set(
PointerRNA *
ptr,
const float values[16])
412 float local_mat[4][4];
420 mul_m4_m4m4(local_mat, invmat, (
float(*)[4])values);
431 static void rna_Object_matrix_basis_get(
PointerRNA *
ptr,
float values[16])
437 static void rna_Object_matrix_basis_set(
PointerRNA *
ptr,
const float values[16])
451 rna_Object_internal_update_data_impl(
ptr);
457 rna_Object_internal_update_data_impl(
ptr);
493 rna_Object_internal_update_data_impl(
ptr);
511 rna_Object_internal_update_data_dependency(bmain,
scene,
ptr);
531 "Can only assign evaluated data to evaluated object, or original data to "
604 # ifdef WITH_HAIR_NODES
610 # ifdef WITH_POINT_CLOUD
647 static bool rna_Object_parent_override_apply(
Main *
UNUSED(bmain),
656 const int len_storage,
662 BLI_assert(len_dst == len_src && (!ptr_storage || len_dst == len_storage) && len_dst == 0);
664 "Unsupported RNA override operation on object parent pointer");
673 if (parent_src == parent_dst) {
677 if (parent_src ==
NULL) {
687 static void rna_Object_parent_type_set(
PointerRNA *
ptr,
int value)
730 static void rna_Object_empty_display_type_set(
PointerRNA *
ptr,
int value)
737 static void rna_Object_parent_bone_set(
PointerRNA *
ptr,
const char *value)
756 item = instance_items_pointcloud;
759 item = instance_items_nogroup;
787 "Cannot set instance-collection as object belongs in group being instanced, thus "
792 static void rna_VertexGroup_name_set(
PointerRNA *
ptr,
const char *value)
814 static void rna_Object_active_vertex_group_set(
PointerRNA *
ptr,
823 "VertexGroup '%s' not found in object '%s'",
832 static int rna_Object_active_vertex_group_index_get(
PointerRNA *
ptr)
838 static void rna_Object_active_vertex_group_index_set(
PointerRNA *
ptr,
int value)
844 static void rna_Object_active_vertex_group_index_range(
874 return (dg) ? strlen(dg->name) : 0;
896 static void rna_FaceMap_name_set(
PointerRNA *
ptr,
const char *value)
917 static int rna_Object_active_face_map_index_get(
PointerRNA *
ptr)
923 static void rna_Object_active_face_map_index_set(
PointerRNA *
ptr,
int value)
929 static void rna_Object_active_face_map_index_range(
938 void rna_object_BKE_object_facemap_name_index_get(
PointerRNA *
ptr,
char *value,
int index)
946 BLI_strncpy(value, fmap->name,
sizeof(fmap->name));
953 int rna_object_BKE_object_facemap_name_index_length(
PointerRNA *
ptr,
int index)
959 return (fmap) ? strlen(fmap->name) : 0;
962 void rna_object_BKE_object_facemap_name_index_set(
PointerRNA *
ptr,
const char *value,
short *index)
968 void rna_object_fmap_name_set(
PointerRNA *
ptr,
const char *value,
char *
result,
int maxlen)
991 for (
a = 0;
a < me->ldata.totlayer;
a++) {
992 layer = &me->ldata.layers[
a];
1014 for (
a = 0;
a < me->fdata.totlayer;
a++) {
1015 layer = &me->fdata.layers[
a];
1017 if (layer->type ==
CD_MCOL &&
STREQ(layer->name, value)) {
1027 static int rna_Object_active_material_index_get(
PointerRNA *
ptr)
1033 static void rna_Object_active_material_index_set(
PointerRNA *
ptr,
int value)
1047 static void rna_Object_active_material_index_range(
1082 static int rna_Object_active_material_editable(
PointerRNA *
ptr,
const char **
UNUSED(r_info))
1097 static void rna_Object_active_particle_system_index_range(
1105 static int rna_Object_active_particle_system_index_get(
PointerRNA *
ptr)
1111 static void rna_Object_active_particle_system_index_set(
PointerRNA *
ptr,
int value)
1130 static void rna_Object_rotation_axis_angle_get(
PointerRNA *
ptr,
float *value)
1140 static void rna_Object_rotation_axis_angle_set(
PointerRNA *
ptr,
const float *value)
1151 static void rna_Object_rotation_mode_set(
PointerRNA *
ptr,
int value)
1163 static void rna_Object_dimensions_get(
PointerRNA *
ptr,
float *value)
1169 static void rna_Object_dimensions_set(
PointerRNA *
ptr,
const float *value)
1175 static int rna_Object_location_editable(
PointerRNA *
ptr,
int index)
1194 static int rna_Object_scale_editable(
PointerRNA *
ptr,
int index)
1213 static int rna_Object_rotation_euler_editable(
PointerRNA *
ptr,
int index)
1232 static int rna_Object_rotation_4d_editable(
PointerRNA *
ptr,
int index)
1256 static int rna_MaterialSlot_material_editable(
PointerRNA *
ptr,
const char **
UNUSED(r_info))
1301 return (ma->gp_style !=
NULL);
1305 return (ma->gp_style ==
NULL);
1314 return ob->
matbits[index] != 0;
1317 static void rna_MaterialSlot_link_set(
PointerRNA *
ptr,
int value)
1343 return strlen(ma->id.name + 2);
1358 strcpy(
str, ma->id.name + 2);
1367 rna_Object_internal_update(bmain,
scene,
ptr);
1399 static void rna_Object_active_shape_key_index_range(
1417 static int rna_Object_active_shape_key_index_get(
PointerRNA *
ptr)
1424 static void rna_Object_active_shape_key_index_set(
PointerRNA *
ptr,
int value)
1482 static void rna_Object_active_constraint_set(
PointerRNA *
ptr,
1500 static void rna_Object_constraints_remove(
Object *
object,
1509 "Constraint '%s' not found in object '%s'",
1523 static void rna_Object_constraints_clear(
Object *
object,
Main *bmain)
1533 static void rna_Object_constraints_move(
1560 bool rna_Object_constraints_override_apply(
Main *
UNUSED(bmain),
1567 const int UNUSED(len_dst),
1568 const int UNUSED(len_src),
1569 const int UNUSED(len_storage),
1576 "Unsupported RNA override operation on constraints collection");
1602 con_src = con_src ? con_src->
next : ob_src->constraints.first;
1604 if (con_src ==
NULL) {
1633 static void rna_Object_modifier_remove(
Object *
object,
1676 reports,
RPT_ERROR,
"Modifier \"%s\" is not in the object's modifier list", md->
name);
1683 bool rna_Object_modifiers_override_apply(
Main *bmain,
1690 const int UNUSED(len_dst),
1691 const int UNUSED(len_src),
1692 const int UNUSED(len_storage),
1699 "Unsupported RNA override operation on modifiers collection");
1725 mod_src = mod_src ? mod_src->
next : ob_src->modifiers.first;
1727 if (mod_src ==
NULL) {
1768 static void rna_Object_greasepencil_modifier_remove(
Object *
object,
1784 static void rna_Object_greasepencil_modifier_clear(
Object *
object,
bContext *
C)
1790 bool rna_Object_greasepencil_modifiers_override_apply(
Main *bmain,
1797 const int UNUSED(len_dst),
1798 const int UNUSED(len_src),
1799 const int UNUSED(len_storage),
1806 "Unsupported RNA override operation on modifiers collection");
1832 mod_src = mod_src ? mod_src->
next : ob_src->greasepencil_modifiers.first;
1834 if (mod_src ==
NULL) {
1860 static void rna_Object_shaderfx_remove(
Object *
object,
1882 static void rna_Object_boundbox_get(
PointerRNA *
ptr,
float *values)
1887 memcpy(values, bb->vec,
sizeof(bb->vec));
1890 copy_vn_fl(values,
sizeof(bb->vec) /
sizeof(
float), 0.0f);
1900 const char *ob_type_name =
"Unknown";
1903 reports,
RPT_ERROR,
"VertexGroups.new(): is not supported for '%s' objects", ob_type_name);
1915 static void rna_Object_vgroup_remove(
Object *ob,
1924 "DeformGroup '%s' not in object '%s'",
1937 static void rna_Object_vgroup_clear(
Object *ob,
Main *bmain)
1945 static void rna_VertexGroup_vertex_add(
ID *
id,
1957 reports,
RPT_ERROR,
"VertexGroup.add(): cannot be called while object is in edit mode");
1961 while (index_len--) {
1963 ob, def, *index++, weight, assignmode);
1970 static void rna_VertexGroup_vertex_remove(
1977 reports,
RPT_ERROR,
"VertexGroup.remove(): cannot be called while object is in edit mode");
1981 while (index_len--) {
1999 static bFaceMap *rna_Object_fmap_new(
Object *ob,
const char *name)
2023 static void rna_Object_fmap_clear(
Object *ob)
2030 static void rna_FaceMap_face_add(
2036 BKE_report(reports,
RPT_ERROR,
"FaceMap.add(): cannot be called while object is in edit mode");
2040 while (index_len--) {
2047 static void rna_FaceMap_face_remove(
2053 BKE_report(reports,
RPT_ERROR,
"FaceMap.add(): cannot be called while object is in edit mode");
2057 while (index_len--) {
2100 int rna_Object_use_dynamic_topology_sculpting_get(
PointerRNA *
ptr)
2103 return (ss && ss->
bm);
2156 static void rna_Object_mesh_symmetry_x_set(
PointerRNA *
ptr,
bool value)
2161 static void rna_Object_mesh_symmetry_y_set(
PointerRNA *
ptr,
bool value)
2166 static void rna_Object_mesh_symmetry_z_set(
PointerRNA *
ptr,
bool value)
2171 static int rna_Object_mesh_symmetry_yz_editable(
PointerRNA *
ptr,
const char **
UNUSED(r_info))
2206 srna,
"Vertex Group",
"Group of vertices, used for armature deform and other purposes");
2234 parm =
RNA_def_float(func,
"weight", 0, 0.0f, 1.0f,
"",
"Vertex weight", 0.0f, 1.0f);
2236 parm =
RNA_def_enum(func,
"type", assign_mode_items, 0,
"",
"Vertex assign mode");
2249 parm =
RNA_def_int(func,
"index", 0, 0, INT_MAX,
"Index",
"The index of the vertex", 0, INT_MAX);
2251 parm =
RNA_def_float(func,
"weight", 0, 0.0f, 1.0f,
"",
"Vertex weight", 0.0f, 1.0f);
2266 srna,
"Face Map",
"Group of faces, each face can only be part of one map");
2307 {1,
"OBJECT", 0,
"Object",
""},
2308 {0,
"DATA", 0,
"Data",
""},
2328 prop,
"rna_MaterialSlot_link_get",
"rna_MaterialSlot_link_set",
NULL);
2337 "rna_MaterialSlot_material_get",
2338 "rna_MaterialSlot_material_set",
2340 "rna_MaterialSlot_material_poll");
2346 prop,
"rna_MaterialSlot_name_get",
"rna_MaterialSlot_name_length",
NULL);
2375 prop,
"rna_Object_active_constraint_get",
"rna_Object_active_constraint_set",
NULL,
NULL);
2388 parm =
RNA_def_pointer(func,
"constraint",
"Constraint",
"",
"New constraint");
2395 parm =
RNA_def_pointer(func,
"constraint",
"Constraint",
"",
"Removed constraint");
2407 func,
"from_index", -1, INT_MIN, INT_MAX,
"From Index",
"Index to move", 0, 10000);
2409 parm =
RNA_def_int(func,
"to_index", -1, INT_MIN, INT_MAX,
"To Index",
"Target index", 0, 10000);
2420 "Constraint to copy - may belong to a different object");
2424 parm =
RNA_def_pointer(func,
"new_constraint",
"Constraint",
"",
"New constraint");
2459 parm =
RNA_def_string(func,
"name",
"Name", 0,
"",
"New name for the modifier");
2466 parm =
RNA_def_pointer(func,
"modifier",
"Modifier",
"",
"Newly created modifier");
2474 parm =
RNA_def_pointer(func,
"modifier",
"Modifier",
"",
"Modifier to remove");
2487 prop,
"rna_Object_active_modifier_get",
"rna_Object_active_modifier_set",
NULL,
NULL);
2507 srna,
"Object Grease Pencil Modifiers",
"Collection of object grease pencil modifiers");
2510 func =
RNA_def_function(srna,
"new",
"rna_Object_greasepencil_modifier_new");
2513 parm =
RNA_def_string(func,
"name",
"Name", 0,
"",
"New name for the greasepencil_modifier");
2521 "Modifier type to add");
2525 func,
"greasepencil_modifier",
"GpencilModifier",
"",
"Newly created modifier");
2529 func =
RNA_def_function(srna,
"remove",
"rna_Object_greasepencil_modifier_remove");
2532 "Remove an existing greasepencil_modifier from the object");
2535 func,
"greasepencil_modifier",
"GpencilModifier",
"",
"Modifier to remove");
2540 func =
RNA_def_function(srna,
"clear",
"rna_Object_greasepencil_modifier_clear");
2562 parm =
RNA_def_string(func,
"name",
"Name", 0,
"",
"New name for the effect");
2569 parm =
RNA_def_pointer(func,
"shader_fx",
"ShaderFx",
"",
"Newly created effect");
2577 parm =
RNA_def_pointer(func,
"shader_fx",
"ShaderFx",
"",
"Effect to remove");
2606 prop,
"Active Particle System",
"Active particle system being displayed");
2612 "rna_Object_active_particle_system_index_get",
2613 "rna_Object_active_particle_system_index_set",
2614 "rna_Object_active_particle_system_index_range");
2616 prop,
"Active Particle System Index",
"Index of active particle system slot");
2638 "rna_Object_active_vertex_group_get",
2639 "rna_Object_active_vertex_group_set",
2650 "rna_Object_active_vertex_group_index_get",
2651 "rna_Object_active_vertex_group_index_set",
2652 "rna_Object_active_vertex_group_index_range");
2654 prop,
"Active Vertex Group Index",
"Active index in vertex group array");
2661 RNA_def_string(func,
"name",
"Group", 0,
"",
"Vertex group name");
2662 parm =
RNA_def_pointer(func,
"group",
"VertexGroup",
"",
"New vertex group");
2668 parm =
RNA_def_pointer(func,
"group",
"VertexGroup",
"",
"Vertex group to remove");
2695 prop,
"rna_Object_active_face_map_get",
"rna_Object_active_face_map_set",
NULL,
NULL);
2703 "rna_Object_active_face_map_index_get",
2704 "rna_Object_active_face_map_index_set",
2705 "rna_Object_active_face_map_index_range");
2719 parm =
RNA_def_pointer(func,
"group",
"FaceMap",
"",
"Face map to remove");
2755 {
OBJECT_LRT_INHERIT,
"INHERIT", 0,
"Inherit",
"Use settings from the parent collection"},
2760 "Generate feature lines for this object's data"},
2765 "Only use the object data to produce occlusion"},
2770 "Don't use this object for Line Art rendering"},
2772 "INTERSECTION_ONLY",
2774 "Intersection Only",
2775 "Only generate intersection lines for this collection"},
2780 "Include this object but do not generate intersection lines"},
2796 prop,
"Use Crease",
"Use this object's crease setting to overwrite scene global");
2819 {
OB_BOUNDBOX,
"BOUNDS", 0,
"Bounds",
"Display the bounds of the object"},
2820 {
OB_WIRE,
"WIRE", 0,
"Wire",
"Display the object as a wireframe"},
2825 "Display the object as a solid (if solid drawing is enabled in the viewport)"},
2830 "Display the object with textures (if textures are enabled in the viewport)"},
2835 {
OB_BOUND_BOX,
"BOX", 0,
"Box",
"Display bounds as box"},
2838 {
OB_BOUND_CONE,
"CONE", 0,
"Cone",
"Display bounds as cone"},
2843 static int boundbox_dimsize[] = {8, 3};
2855 prop,
NULL,
"rna_Object_data_set",
"rna_Object_data_typef",
"rna_Object_data_poll");
2884 "Object's bounding box in object-space coordinates, all values are -1.0 when "
2899 prop,
NULL,
"rna_Object_parent_type_set",
"rna_Object_parent_type_itemf");
2907 prop,
"Parent Vertices",
"Indices of vertices in case of a vertex parenting relation");
2914 prop,
"Parent Bone",
"Name of parent bone in case of a bone parenting relation");
2921 "Camera Parent Lock",
2922 "View Lock 3D viewport camera transformation affects the object's "
2935 "Axis that points in the 'forward' direction (applies to Instance Vertices when "
2936 "Align to Vertex Normal is enabled)");
2945 "Axis that points in the upward direction (applies to Instance Vertices when "
2946 "Align to Vertex Normal is enabled)");
2960 prop,
"Proxy Collection",
"Library collection duplicator object this proxy object controls");
2975 "rna_Object_active_material_get",
2976 "rna_Object_active_material_set",
2978 "rna_MaterialSlot_material_poll");
2988 "rna_Object_active_material_index_get",
2989 "rna_Object_active_material_index_set",
2990 "rna_Object_active_material_index_range");
3014 prop,
"rna_Object_rotation_axis_angle_get",
"rna_Object_rotation_axis_angle_set",
NULL);
3018 prop,
"Axis-Angle Rotation",
"Angle of Rotation for Axis-Angle rotation representation");
3048 prop,
"rna_Object_dimensions_get",
"rna_Object_dimensions_set",
NULL);
3052 "Absolute bounding box dimensions of the object.\n"
3053 "Warning: Assigning to it or its members multiple consecutive times "
3054 "will not work correctly, as this needs up-to-date evaluated data");
3061 prop,
"Delta Location",
"Extra translation added to the location of the object");
3069 "Delta Rotation (Euler)",
3070 "Extra rotation added to the rotation of the object (when using Euler rotations)");
3077 "Delta Rotation (Quaternion)",
3078 "Extra rotation added to the rotation of the object (when using Quaternion rotations)");
3088 "Delta Rotation (Axis Angle)",
3089 "Extra rotation added to the rotation of the object (when using Axis-Angle rotations)");
3122 "Lock Rotation (4D Angle)",
3123 "Lock editing of 'angle' component of four-component rotations when transforming");
3129 "Lock Rotations (4D)",
3130 "Lock editing of four component rotations by components (instead of as Eulers)");
3157 "Parent relative transformation matrix.\n"
3158 "Warning: Only takes into account object parenting, so e.g. in case of bone parenting "
3159 "you get a matrix relative to the Armature object, not to the actual parent bone");
3161 prop,
"rna_Object_matrix_local_get",
"rna_Object_matrix_local_set",
NULL);
3171 "Matrix access to location, rotation and scale (including deltas), "
3172 "before constraints and parenting are applied");
3174 prop,
"rna_Object_matrix_basis_get",
"rna_Object_matrix_basis_set",
NULL);
3182 prop,
"Parent Inverse Matrix",
"Inverse of object's parent matrix at time of parenting");
3189 prop,
"Modifiers",
"Modifiers affecting the geometric data of the object");
3199 prop,
"Grease Pencil Modifiers",
"Modifiers affecting the data of the grease pencil object");
3201 prop,
NULL,
NULL,
"rna_Object_greasepencil_modifiers_override_apply");
3219 prop,
"Constraints",
"Constraints affecting the transformation of the object");
3256 prop,
"Empty Display Size",
"Size of display for empties in the viewport");
3271 "Parameters defining which layer, pass and frame of the image is displayed");
3277 prop,
"Empty Image Depth",
"Determine which other objects will occlude the image");
3284 prop,
"Display in Perspective Mode",
"Display image in perspective mode");
3291 prop,
"Display in Orthographic Mode",
"Display image in orthographic mode");
3298 "Display Only Axis Aligned",
3299 "Only display the image when it is aligned with the view axis");
3307 "Use alpha blending instead of alpha test (can produce sorting artifacts)");
3311 {0,
"DOUBLE_SIDED", 0,
"Both",
""},
3326 prop,
"Pass Index",
"Index number for the \"Object Index\" render pass");
3331 prop,
"Color",
"Object color and alpha, used when faces have the ObColor mode enabled");
3340 prop,
"Field Settings",
"Settings for using the object as a field in physics simulation");
3347 "Collision Settings",
3348 "Settings for using the object as a collider in physics simulation");
3395 prop,
NC_OBJECT |
ND_DRAW,
"rna_Object_duplicator_visibility_flag_update");
3401 prop,
NC_OBJECT |
ND_DRAW,
"rna_Object_duplicator_visibility_flag_update");
3414 prop,
"Orient with Normals",
"Rotate instance according to vertex normal");
3478 prop,
"Display Wire",
"Display the object's wireframe over solid shading");
3495 prop,
"Display Transparent",
"Display material transparency in the object");
3519 prop,
"Shape Key Lock",
"Always show the current shape for this object");
3526 prop,
"Shape Key Edit Mode",
"Apply shape keys in edit mode (for meshes only)");
3541 "rna_Object_active_shape_key_index_get",
3542 "rna_Object_active_shape_key_index_set",
3543 "rna_Object_active_shape_key_index_range");
3584 prop,
"rna_Object_mesh_symmetry_x_get",
"rna_Object_mesh_symmetry_x_set");
3590 prop,
"rna_Object_mesh_symmetry_y_get",
"rna_Object_mesh_symmetry_y_set");
3597 prop,
"rna_Object_mesh_symmetry_z_get",
"rna_Object_mesh_symmetry_z_set");
void BKE_pose_rebuild(struct Main *bmain, struct Object *ob, struct bArmature *arm, const bool do_id_user)
void BKE_rotMode_change_values(float quat[4], float eul[3], float axis[3], float *angle, short oldMode, short newMode)
Camera data-block and utility functions.
bool BKE_collection_has_object_recursive(struct Collection *collection, struct Object *ob)
bool BKE_constraint_remove(ListBase *list, struct bConstraint *con)
struct bConstraint * BKE_constraint_copy_for_object(struct Object *ob, struct bConstraint *src)
void BKE_constraints_free(struct ListBase *list)
struct bConstraint * BKE_constraint_duplicate_ex(struct bConstraint *src, const int flag, const bool do_extern)
struct bConstraint * BKE_constraint_add_for_object(struct Object *ob, const char *name, short type)
struct bConstraint * BKE_constraints_active_get(struct ListBase *list)
void BKE_constraints_active_set(ListBase *list, struct bConstraint *con)
void BKE_constraint_unique_name(struct bConstraint *con, struct ListBase *list)
struct Scene * CTX_data_scene(const bContext *C)
struct Main * CTX_data_main(const bContext *C)
void BKE_curve_type_test(struct Object *ob)
void BKE_editlattice_load(struct Object *obedit)
void BKE_editlattice_make(struct Object *obedit)
void BKE_editmesh_looptri_calc(BMEditMesh *em)
struct PartDeflect * BKE_partdeflect_new(int type)
struct Key * BKE_key_from_object(const struct Object *ob)
void BKE_main_collection_sync_remap(const struct Main *bmain)
void id_us_min(struct ID *id)
void id_us_plus(struct ID *id)
bool BKE_id_is_in_global_main(struct ID *id)
General operations, lookup, etc. for materials.
struct Material * BKE_object_material_get(struct Object *ob, short act)
@ BKE_MAT_ASSIGN_EXISTING
void BKE_object_materials_test(struct Main *bmain, struct Object *ob, struct ID *id)
void BKE_object_material_assign(struct Main *bmain, struct Object *ob, struct Material *ma, short act, int assign_type)
void BKE_mesh_assign_object(struct Main *bmain, struct Object *ob, struct Mesh *me)
void BKE_modifier_copydata(struct ModifierData *md, struct ModifierData *target)
General operations, lookup, etc. for blender objects.
void BKE_object_dimensions_set(struct Object *ob, const float value[3], int axis_mask)
void BKE_object_dimensions_get(struct Object *ob, float r_vec[3])
void BKE_object_empty_draw_type_set(struct Object *ob, const int value)
bool BKE_object_is_in_editmode_vgroup(const struct Object *ob)
void BKE_object_modifier_set_active(struct Object *ob, struct ModifierData *md)
void BKE_object_to_mat4(struct Object *ob, float r_mat[4][4])
struct BoundBox * BKE_object_boundbox_get(struct Object *ob)
struct ModifierData * BKE_object_active_modifier(const struct Object *ob)
void BKE_object_matrix_local_get(struct Object *ob, float r_mat[4][4])
void BKE_object_apply_mat4(struct Object *ob, const float mat[4][4], const bool use_compat, const bool use_parent)
bool BKE_object_is_in_editmode(const struct Object *ob)
Functions for dealing with object face-maps.
int BKE_object_facemap_name_index(struct Object *ob, const char *name)
void BKE_object_facemap_remove(struct Object *ob, struct bFaceMap *fmap)
void BKE_object_facemap_clear(struct Object *ob)
void BKE_object_facemap_unique_name(struct Object *ob, struct bFaceMap *fmap)
struct bFaceMap * BKE_object_facemap_find_name(struct Object *ob, const char *name)
struct bFaceMap * BKE_object_facemap_add_name(struct Object *ob, const char *name)
void BKE_sculpt_ensure_orig_mesh_data(struct Scene *scene, struct Object *object)
void psys_set_current_num(struct Object *ob, int index)
short psys_get_current_num(struct Object *ob)
struct ParticleSystem * psys_get_current(struct Object *ob)
void BKE_report(ReportList *reports, ReportType type, const char *message)
void BKE_reportf(ReportList *reports, ReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
bool BLI_listbase_move_index(ListBase *listbase, int from, int to) ATTR_NONNULL()
void BLI_insertlinkafter(struct ListBase *listbase, void *vprevlink, void *vnewlink) ATTR_NONNULL(1)
void * BLI_findstring(const struct ListBase *listbase, const char *id, const int offset) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void BLI_remlink(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
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)
int BLI_listbase_count(const struct ListBase *listbase) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
MINLINE int max_ii(int a, int b)
void mul_m4_m4m4(float R[4][4], const float A[4][4], const float B[4][4])
bool invert_m4_m4(float R[4][4], const float A[4][4])
void copy_m4_m4(float m1[4][4], const float m2[4][4])
void copy_vn_fl(float *array_tar, const int size, const float val)
MINLINE void copy_v3_v3(float r[3], const float a[3])
size_t size_t char * BLI_sprintfN(const char *__restrict format,...) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1) ATTR_MALLOC ATTR_PRINTF_FORMAT(1
char * BLI_strdup(const char *str) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL() ATTR_MALLOC
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 BLT_I18NCONTEXT_ID_ID
void DEG_id_tag_update(struct ID *id, int flag)
void DEG_relations_tag_update(struct Main *bmain)
ID and Library types, which are fundamental for sdna.
@ ID_RECALC_COPY_ON_WRITE
#define ID_IS_LINKED(_id)
@ IDOVERRIDE_LIBRARY_OP_INSERT_AFTER
@ IDOVERRIDE_LIBRARY_OP_REPLACE
Object groups, one object can be in many groups at once.
@ ME_EDIT_MIRROR_VERTEX_GROUPS
@ eModifierType_ParticleSystem
Object is a sort of wrapper for general info.
#define OB_DATA_SUPPORT_ID(_id_type)
#define OB_TYPE_SUPPORT_PARVERT(_type)
@ OB_TRANSFORM_ADJUST_ROOT_PARENT_FOR_VIEW_LOCK
#define OB_EMPTY_IMAGE_DEPTH_BACK
#define OB_EMPTY_IMAGE_DEPTH_FRONT
@ OBJECT_LRT_NO_INTERSECTION
@ OBJECT_LRT_OCCLUSION_ONLY
@ OBJECT_LRT_INTERSECTION_ONLY
#define OB_TYPE_SUPPORT_VGROUP(_type)
@ OB_EMPTY_IMAGE_USE_ALPHA_BLEND
#define OB_EMPTY_IMAGE_DEPTH_DEFAULT
@ OB_EMPTY_IMAGE_HIDE_FRONT
@ OB_EMPTY_IMAGE_HIDE_NON_AXIS_ALIGNED
@ OB_EMPTY_IMAGE_HIDE_ORTHOGRAPHIC
@ OB_EMPTY_IMAGE_HIDE_BACK
@ OB_EMPTY_IMAGE_HIDE_PERSPECTIVE
void EDBM_mesh_load(struct Main *bmain, struct Object *ob)
void EDBM_mesh_make(struct Object *ob, const int select_mode, const bool add_key_index)
void ED_vgroup_vert_add(struct Object *ob, struct bDeformGroup *dg, int vertnum, float weight, int assignmode)
float ED_vgroup_vert_weight(struct Object *ob, struct bDeformGroup *dg, int vertnum)
void ED_vgroup_vert_remove(struct Object *ob, struct bDeformGroup *dg, int vertnum)
void EDBM_mesh_normals_update(struct BMEditMesh *em)
void ED_object_shaderfx_clear(struct Main *bmain, struct Object *ob)
struct ModifierData * ED_object_modifier_add(struct ReportList *reports, struct Main *bmain, struct Scene *scene, struct Object *ob, const char *name, int type)
struct GpencilModifierData * ED_object_gpencil_modifier_add(struct ReportList *reports, struct Main *bmain, struct Scene *scene, struct Object *ob, const char *name, int type)
bool ED_object_shaderfx_remove(struct ReportList *reports, struct Main *bmain, struct Object *ob, struct ShaderFxData *fx)
void ED_object_facemap_face_add(struct Object *ob, struct bFaceMap *fmap, int facenum)
void ED_object_constraint_active_set(struct Object *ob, struct bConstraint *con)
void ED_object_modifier_clear(struct Main *bmain, struct Scene *scene, struct Object *ob)
bool ED_object_gpencil_modifier_remove(struct ReportList *reports, struct Main *bmain, struct Object *ob, struct GpencilModifierData *md)
void ED_object_constraint_tag_update(struct Main *bmain, struct Object *ob, struct bConstraint *con)
void ED_object_constraint_update(struct Main *bmain, struct Object *ob)
bool ED_object_modifier_remove(struct ReportList *reports, struct Main *bmain, struct Scene *scene, struct Object *ob, struct ModifierData *md)
void ED_object_parent(struct Object *ob, struct Object *parent, const int type, const char *substr)
void ED_object_gpencil_modifier_clear(struct Main *bmain, struct Object *ob)
struct ShaderFxData * ED_object_shaderfx_add(struct ReportList *reports, struct Main *bmain, struct Scene *scene, struct Object *ob, const char *name, int type)
void ED_object_facemap_face_remove(struct Object *ob, struct bFaceMap *fmap, int facenum)
void PE_current_changed(struct Depsgraph *depsgraph, struct Scene *scene, struct Object *ob)
_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
StructRNA RNA_ObjectDisplay
#define RNA_POINTER_INVALIDATE(ptr)
StructRNA RNA_FieldSettings
StructRNA RNA_ParticleSystem
StructRNA RNA_GreasePencil
StructRNA RNA_VertexGroup
StructRNA RNA_CollisionSettings
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
@ PROPOVERRIDE_NO_COMPARISON
@ PROPOVERRIDE_LIBRARY_INSERTION
@ PROPOVERRIDE_NO_PROP_NAME
void ED_curve_editnurb_make(Object *obedit)
void ED_curve_editnurb_load(Main *bmain, Object *obedit)
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
const PointerRNA PointerRNA_NULL
PointerRNA RNA_property_pointer_get(PointerRNA *ptr, PropertyRNA *prop)
bool RNA_enum_name_from_value(const EnumPropertyItem *item, int value, const char **r_name)
PointerRNA rna_pointer_inherit_refine(PointerRNA *ptr, StructRNA *type, void *data)
bool RNA_pointer_is_null(const PointerRNA *ptr)
void rna_def_animdata_common(StructRNA *srna)
void rna_def_animviz_common(StructRNA *srna)
void rna_def_motionpath_common(StructRNA *srna)
const EnumPropertyItem rna_enum_constraint_type_items[]
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_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_define_animate_sdna(bool animate)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
void RNA_def_parameter_clear_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
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)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
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_srna(PropertyRNA *prop, const char *type)
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_multi_array(PropertyRNA *prop, int dimension, const int length[])
const float rna_default_axis_angle[4]
void RNA_def_property_editable_array_func(PropertyRNA *prop, const char *editable)
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_struct_clear_flag(StructRNA *srna, int flag)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_range(PropertyRNA *prop, double min, double max)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_sdna(PropertyRNA *prop, const char *structname, const char *propname, const char *lengthpropname)
void RNA_def_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)
void RNA_def_property_editable_func(PropertyRNA *prop, const char *editable)
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_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_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_def_property_override_clear_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
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_float_array_default(PropertyRNA *prop, const float *array)
void RNA_def_property_boolean_negative_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_struct_nested(BlenderRNA *brna, StructRNA *srna, const char *structname)
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_object_greasepencil_modifier_type_items[]
bool rna_Curve_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
void rna_object_vcollayer_name_set(struct PointerRNA *ptr, const char *value, char *result, int maxlen)
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)
bool rna_Camera_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
bool rna_Light_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
bool rna_Lattice_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
void rna_object_uvlayer_name_set(struct PointerRNA *ptr, const char *value, char *result, int maxlen)
void rna_Object_internal_update_data(struct Main *bmain, struct Scene *scene, struct PointerRNA *ptr)
void RNA_api_object(struct StructRNA *srna)
bool rna_Mesh_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
bool rna_GPencil_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
int rna_object_vgroup_name_index_length(struct PointerRNA *ptr, int index)
bool rna_Armature_object_poll(struct PointerRNA *ptr, struct PointerRNA value)
void rna_object_vgroup_name_set(struct PointerRNA *ptr, const char *value, char *result, int maxlen)
const EnumPropertyItem rna_enum_object_modifier_type_items[]
static void rna_def_object_grease_pencil_modifiers(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_object_empty_drawtype_items[]
const EnumPropertyItem rna_enum_metaelem_type_items[]
static void rna_def_object_face_maps(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_workspace_object_mode_items[]
static void rna_def_object_shaderfxs(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem instance_items[]
static void rna_def_face_map(BlenderRNA *brna)
static const EnumPropertyItem parent_type_items[]
const EnumPropertyItem rna_enum_object_gpencil_type_items[]
const EnumPropertyItem rna_enum_object_rotation_mode_items[]
static void rna_def_material_slot(BlenderRNA *brna)
static void rna_def_object(BlenderRNA *brna)
const EnumPropertyItem rna_enum_lightprobes_type_items[]
static void rna_def_object_vertex_groups(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_object_mode_items[]
static void rna_def_object_lineart(BlenderRNA *brna)
const EnumPropertyItem rna_enum_object_axis_items[]
const EnumPropertyItem rna_enum_object_type_curve_items[]
#define INSTANCE_ITEM_COLLECTION
const EnumPropertyItem rna_enum_object_type_items[]
static void rna_def_object_modifiers(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem rna_enum_object_empty_image_depth_items[]
static void rna_def_vertex_group(BlenderRNA *brna)
static void rna_def_object_display(BlenderRNA *brna)
static void rna_def_object_constraints(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_object_particle_systems(BlenderRNA *brna, PropertyRNA *cprop)
void RNA_def_object(BlenderRNA *brna)
#define INSTANCE_ITEMS_SHARED
const EnumPropertyItem rna_enum_object_shaderfx_type_items[]
struct GpencilModifierData * next
char * subitem_local_name
struct BMEditMesh * edit_mesh
struct ModifierData * next
struct Collection * instance_collection
ListBase greasepencil_modifiers
struct bConstraint * next
void WM_main_add_notifier(unsigned int type, void *reference)