43#ifdef WITH_IMAGE_OPENEXR
51 "Lossless wavelet compression, effective for noisy/grainy images"},
56 "JPEG-like lossy compression on 32 row image blocks"},
61 "JPEG-like lossy compression on 256 row image blocks"},
66 "Lossless zip compression, each image row compressed separately"},
72 "Lossy compression for 32 bit float images (stores 24 bits of each float)"},
77 "Lossy compression for 16 bit float images, at fixed 2.3:1 ratio"},
82 "Lossy compression for 16 bit float images, at fixed 2.3:1 ratio"},
83 {0,
nullptr, 0,
nullptr,
nullptr},
92 {0,
nullptr, 0,
nullptr,
nullptr},
96 {
PROP_SMOOTH,
"SMOOTH", ICON_SMOOTHCURVE,
"Smooth",
"Smooth falloff"},
97 {
PROP_SPHERE,
"SPHERE", ICON_SPHERECURVE,
"Sphere",
"Spherical falloff"},
98 {
PROP_ROOT,
"ROOT", ICON_ROOTCURVE,
"Root",
"Root falloff"},
101 ICON_INVERSESQUARECURVE,
103 "Inverse Square falloff"},
104 {
PROP_SHARP,
"SHARP", ICON_SHARPCURVE,
"Sharp",
"Sharp falloff"},
105 {
PROP_LIN,
"LINEAR", ICON_LINCURVE,
"Linear",
"Linear falloff"},
106 {
PROP_CONST,
"CONSTANT", ICON_NOCURVE,
"Constant",
"Constant falloff"},
107 {
PROP_RANDOM,
"RANDOM", ICON_RNDCURVE,
"Random",
"Random falloff"},
108 {0,
nullptr, 0,
nullptr,
nullptr},
113 {
PROP_SMOOTH,
"SMOOTH", ICON_SMOOTHCURVE,
"Smooth",
"Smooth falloff"},
114 {
PROP_SPHERE,
"SPHERE", ICON_SPHERECURVE,
"Sphere",
"Spherical falloff"},
115 {
PROP_ROOT,
"ROOT", ICON_ROOTCURVE,
"Root",
"Root falloff"},
116 {
PROP_INVSQUARE,
"INVERSE_SQUARE", ICON_ROOTCURVE,
"Inverse Square",
"Inverse Square falloff"},
117 {
PROP_SHARP,
"SHARP", ICON_SHARPCURVE,
"Sharp",
"Sharp falloff"},
118 {
PROP_LIN,
"LINEAR", ICON_LINCURVE,
"Linear",
"Linear falloff"},
119 {0,
nullptr, 0,
nullptr,
nullptr},
126 {
SCE_SELECT_EDGE,
"EDGE", ICON_EDGESEL,
"Edge",
"Edge selection mode"},
127 {
SCE_SELECT_FACE,
"FACE", ICON_FACESEL,
"Face",
"Face selection mode"},
128 {0,
nullptr, 0,
nullptr,
nullptr},
132 {
UV_SELECT_VERTEX,
"VERTEX", ICON_UV_VERTEXSEL,
"Vertex",
"Vertex selection mode"},
133 {
UV_SELECT_EDGE,
"EDGE", ICON_UV_EDGESEL,
"Edge",
"Edge selection mode"},
134 {
UV_SELECT_FACE,
"FACE", ICON_UV_FACESEL,
"Face",
"Face selection mode"},
135 {
UV_SELECT_ISLAND,
"ISLAND", ICON_UV_ISLANDSEL,
"Island",
"Island selection mode"},
136 {0,
nullptr, 0,
nullptr,
nullptr},
140#define RNA_SNAP_ELEMENTS_BASE \
141 {SCE_SNAP_TO_INCREMENT, "INCREMENT", ICON_SNAP_INCREMENT, "Increment", "Snap to increments"}, \
142 {SCE_SNAP_TO_GRID, "GRID", ICON_SNAP_GRID, "Grid", "Snap to grid"}, \
143 {SCE_SNAP_TO_VERTEX, "VERTEX", ICON_SNAP_VERTEX, "Vertex", "Snap to vertices"}, \
144 {SCE_SNAP_TO_EDGE, "EDGE", ICON_SNAP_EDGE, "Edge", "Snap to edges"}, \
145 {SCE_SNAP_TO_FACE, "FACE", ICON_SNAP_FACE, "Face", "Snap by projecting onto faces"}, \
146 {SCE_SNAP_TO_VOLUME, "VOLUME", ICON_SNAP_VOLUME, "Volume", "Snap to volume"}, \
147 {SCE_SNAP_TO_EDGE_MIDPOINT, "EDGE_MIDPOINT", ICON_SNAP_MIDPOINT, "Edge Center", "Snap to the middle of edges"}, \
148 {SCE_SNAP_TO_EDGE_PERPENDICULAR, "EDGE_PERPENDICULAR", ICON_SNAP_PERPENDICULAR, "Edge Perpendicular", "Snap to the nearest point on an edge"}
157 "Snap by projecting onto faces"},
160 ICON_SNAP_FACE_NEAREST,
162 "Snap to nearest point on faces"},
163 {0,
nullptr, 0,
nullptr,
nullptr},
168 {0,
nullptr, 0,
nullptr,
nullptr},
181 {0,
nullptr, 0,
nullptr,
nullptr},
190 "Snap to increments of grid"},
193 {0,
nullptr, 0,
nullptr,
nullptr},
202 {0,
nullptr, 0,
nullptr,
nullptr},
210 "Scene will be rendering without any anti-aliasing"},
214 "Single Pass Anti-Aliasing",
215 "Scene will be rendered using a single pass anti-aliasing method (FXAA)"},
220 "Scene will be rendered using 5 anti-aliasing samples"},
225 "Scene will be rendered using 8 anti-aliasing samples"},
230 "Scene will be rendered using 11 anti-aliasing samples"},
235 "Scene will be rendered using 16 anti-aliasing samples"},
240 "Scene will be rendered using 32 anti-aliasing samples"},
241 {0,
nullptr, 0,
nullptr,
nullptr},
250 "Incrementally refit the curve (high quality)"},
255 "Split the curve until the tolerance is met (fast)"},
256 {0,
nullptr, 0,
nullptr,
nullptr},
263#define R_IMF_ENUM_BMP \
264 {R_IMF_IMTYPE_BMP, "BMP", ICON_FILE_IMAGE, "BMP", "Output image in bitmap format"},
265#define R_IMF_ENUM_IRIS \
266 {R_IMF_IMTYPE_IRIS, "IRIS", ICON_FILE_IMAGE, "Iris", "Output image in SGI IRIS format"},
267#define R_IMF_ENUM_PNG \
268 {R_IMF_IMTYPE_PNG, "PNG", ICON_FILE_IMAGE, "PNG", "Output image in PNG format"},
269#define R_IMF_ENUM_JPEG \
270 {R_IMF_IMTYPE_JPEG90, "JPEG", ICON_FILE_IMAGE, "JPEG", "Output image in JPEG format"},
271#define R_IMF_ENUM_TAGA \
272 {R_IMF_IMTYPE_TARGA, "TARGA", ICON_FILE_IMAGE, "Targa", "Output image in Targa format"},
273#define R_IMF_ENUM_TAGA_RAW \
274 {R_IMF_IMTYPE_RAWTGA, \
278 "Output image in uncompressed Targa format"},
281# define R_IMF_ENUM_DDS \
282 {R_IMF_IMTYPE_DDS, "DDS", ICON_FILE_IMAGE, "DDS", "Output image in DDS format"},
285#ifdef WITH_IMAGE_OPENJPEG
286# define R_IMF_ENUM_JPEG2K \
291 "Output image in JPEG 2000 format"},
293# define R_IMF_ENUM_JPEG2K
296#ifdef WITH_IMAGE_CINEON
297# define R_IMF_ENUM_CINEON \
298 {R_IMF_IMTYPE_CINEON, "CINEON", ICON_FILE_IMAGE, "Cineon", "Output image in Cineon format"},
299# define R_IMF_ENUM_DPX \
300 {R_IMF_IMTYPE_DPX, "DPX", ICON_FILE_IMAGE, "DPX", "Output image in DPX format"},
302# define R_IMF_ENUM_CINEON
303# define R_IMF_ENUM_DPX
306#ifdef WITH_IMAGE_OPENEXR
307# define R_IMF_ENUM_EXR_MULTILAYER \
308 {R_IMF_IMTYPE_MULTILAYER, \
309 "OPEN_EXR_MULTILAYER", \
311 "OpenEXR MultiLayer", \
312 "Output image in multilayer OpenEXR format"},
313# define R_IMF_ENUM_EXR \
314 {R_IMF_IMTYPE_OPENEXR, \
318 "Output image in OpenEXR format"},
320# define R_IMF_ENUM_EXR_MULTILAYER
321# define R_IMF_ENUM_EXR
324#define R_IMF_ENUM_HDR \
325 {R_IMF_IMTYPE_RADHDR, \
329 "Output image in Radiance HDR format"},
331#define R_IMF_ENUM_TIFF \
332 {R_IMF_IMTYPE_TIFF, "TIFF", ICON_FILE_IMAGE, "TIFF", "Output image in TIFF format"},
334#ifdef WITH_IMAGE_WEBP
335# define R_IMF_ENUM_WEBP \
336 {R_IMF_IMTYPE_WEBP, "WEBP", ICON_FILE_IMAGE, "WebP", "Output image in WebP format"},
338# define R_IMF_ENUM_WEBP
341#define IMAGE_TYPE_ITEMS_IMAGE_ONLY \
349 R_IMF_ENUM_TAGA_RAW \
350 RNA_ENUM_ITEM_SEPR_COLUMN, R_IMF_ENUM_CINEON R_IMF_ENUM_DPX R_IMF_ENUM_EXR_MULTILAYER \
351 R_IMF_ENUM_EXR R_IMF_ENUM_HDR R_IMF_ENUM_TIFF R_IMF_ENUM_WEBP
358 {0,
nullptr, 0,
nullptr,
nullptr},
371 {0,
nullptr, 0,
nullptr,
nullptr},
379 "Images get saved in 8-bit grayscale (only PNG, JPEG, TGA, TIF)"},
380 {
R_IMF_PLANES_RGB,
"RGB", 0,
"RGB",
"Images are saved with RGB (color) data"},
385 "Images are saved with RGB and Alpha data (if supported)"},
386 {0,
nullptr, 0,
nullptr,
nullptr},
390# define IMAGE_COLOR_MODE_BW rna_enum_image_color_mode_items[0]
391# define IMAGE_COLOR_MODE_RGB rna_enum_image_color_mode_items[1]
392# define IMAGE_COLOR_MODE_RGBA rna_enum_image_color_mode_items[2]
403 {0,
nullptr, 0,
nullptr,
nullptr},
409 {0,
nullptr, 0,
nullptr,
nullptr},
419 {0,
nullptr, 0,
nullptr,
nullptr},
427 "Use pixels from adjacent faces across UV seams"},
428 {
R_BAKE_EXTEND,
"EXTEND", 0,
"Extend",
"Extend border pixels outwards"},
429 {0,
nullptr, 0,
nullptr,
nullptr},
437 "Bake to image data-blocks associated with active image texture nodes in materials"},
441 "Active Color Attribute",
442 "Bake to the active color attribute on meshes"},
443 {0,
nullptr, 0,
nullptr,
nullptr},
451 "Save the baking map in an internal image data-block"},
453 {0,
nullptr, 0,
nullptr,
nullptr},
461 "Cast rays from above the surface"},
466 "Use the active camera's position to cast rays"},
467 {0,
nullptr, 0,
nullptr,
nullptr},
470#define R_IMF_VIEWS_ENUM_IND \
471 {R_IMF_VIEWS_INDIVIDUAL, \
475 "Individual files for each view with the prefix as defined by the scene views"},
476#define R_IMF_VIEWS_ENUM_S3D \
477 {R_IMF_VIEWS_STEREO_3D, "STEREO_3D", 0, "Stereo 3D", "Single file with an encoded stereo pair"},
478#define R_IMF_VIEWS_ENUM_MV \
479 {R_IMF_VIEWS_MULTIVIEW, "MULTIVIEW", 0, "Multi-View", "Single file with all the views"},
493#undef R_IMF_VIEWS_ENUM_IND
494#undef R_IMF_VIEWS_ENUM_S3D
495#undef R_IMF_VIEWS_ENUM_MV
502 "Render views for left and right eyes as two differently filtered colors in a single image "
503 "(anaglyph glasses are required)"},
508 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
514 "Render alternate eyes (also known as page flip, quad buffer support in the graphic card is "
520 "Render views for left and right eyes side-by-side"},
525 "Render views for left and right eyes one above another"},
526 {0,
nullptr, 0,
nullptr,
nullptr},
533 {0,
nullptr, 0,
nullptr,
nullptr},
540 {0,
nullptr, 0,
nullptr,
nullptr},
552 {0,
nullptr, 0,
nullptr,
nullptr},
558 {0,
nullptr, 0,
nullptr,
nullptr},
563 "BOUNDING_BOX_CENTER",
565 "Bounding Box Center",
566 "Pivot around bounding box center of selected object(s)"},
567 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"3D Cursor",
"Pivot around the 3D cursor"},
569 "INDIVIDUAL_ORIGINS",
570 ICON_PIVOT_INDIVIDUAL,
571 "Individual Origins",
572 "Pivot around each object's own origin"},
577 "Pivot around the median point of selected objects"},
582 "Pivot around active object"},
583 {0,
nullptr, 0,
nullptr,
nullptr},
590 ICON_ORIENTATION_GLOBAL,
592 "Align the transformation axes to world space"},
595 ICON_ORIENTATION_LOCAL,
597 "Align the transformation axes to the selected objects' local space"},
600 ICON_ORIENTATION_NORMAL,
602 "Align the transformation axes to average normal of selected elements "
603 "(bone Y axis for pose mode)"},
606 ICON_ORIENTATION_GIMBAL,
608 "Align each axis to the Euler rotation axis as used for input"},
611 ICON_ORIENTATION_VIEW,
613 "Align the transformation axes to the window"},
616 ICON_ORIENTATION_CURSOR,
618 "Align the transformation axes to the 3D cursor"},
621 ICON_ORIENTATION_PARENT,
623 "Align the transformation axes to the object's parent space"},
625 {0,
nullptr, 0,
nullptr,
nullptr},
633 "Start placing on the surface, using the 3D cursor position as a fallback"},
638 "Start placement using a point projected onto the orientation axis "
639 "at the 3D cursor position"},
644 "Start placement using a point projected onto the view plane at the 3D cursor position"},
645 {0,
nullptr, 0,
nullptr,
nullptr},
653 "Use the surface normal (using the transform orientation as a fallback)"},
656 ICON_ORIENTATION_GLOBAL,
658 "Use the current transform orientation"},
659 {0,
nullptr, 0,
nullptr,
nullptr},
664 {
SCE_SNAP_TO_NONE,
"DEFAULT", 0,
"Default",
"Use the current snap settings"},
665 {0,
nullptr, 0,
nullptr,
nullptr},
673 ICON_GP_SELECT_BETWEEN_STROKES,
675 "Select all stroke points between other strokes"},
676 {0,
nullptr, 0,
nullptr,
nullptr},
680 {1,
"1", 0,
"1:1",
"Full resolution"},
681 {2,
"2", 0,
"1:2",
"Render this effect at 50% render resolution"},
682 {4,
"4", 0,
"1:4",
"Render this effect at 25% render resolution"},
683 {8,
"8", 0,
"1:8",
"Render this effect at 12.5% render resolution"},
684 {16,
"16", 0,
"1:16",
"Render this effect at 6.25% render resolution"},
685 {0,
nullptr, 0,
nullptr,
nullptr},
692# include <fmt/format.h>
761# ifdef WITH_FREESTYLE
781static void rna_ToolSettings_snap_mode_set(
PointerRNA *
ptr,
int value)
789static void rna_ToolSettings_snap_uv_mode_set(
PointerRNA *
ptr,
int value)
894 iter->valid = ((
BLI_Iterator *)iter->internal.custom)->valid;
923 for (nested_set = set; nested_set; nested_set = nested_set->
set) {
924 if (nested_set == scene) {
928 if (nested_set->
set == set) {
943 if (scene->set !=
nullptr) {
984static const char *rna_Scene_statistics_string_get(
Scene *scene,
992 "View Layer '%s' not found in scene '%s'",
1007static void rna_Scene_frame_current_set(
PointerRNA *
ptr,
int value)
1013 data->r.cfra = value;
1019 return float(
data->r.cfra) +
data->r.subframe;
1022static void rna_Scene_frame_float_set(
PointerRNA *
ptr,
float value)
1027 data->r.cfra = int(value);
1028 data->r.subframe = value -
data->r.cfra;
1031static float rna_Scene_frame_current_final_get(
PointerRNA *
ptr)
1038static void rna_Scene_start_frame_set(
PointerRNA *
ptr,
int value)
1043 data->r.sfra = value;
1045 if (value >
data->r.efra) {
1050static void rna_Scene_end_frame_set(
PointerRNA *
ptr,
int value)
1054 data->r.efra = value;
1056 if (
data->r.sfra > value) {
1061static void rna_Scene_use_preview_range_set(
PointerRNA *
ptr,
bool value)
1067 if ((
data->r.psfra ==
data->r.pefra) && (
data->r.psfra == 0)) {
1079static void rna_Scene_preview_range_start_frame_set(
PointerRNA *
ptr,
int value)
1090 data->r.psfra = value;
1092 if (value >
data->r.pefra) {
1097static void rna_Scene_preview_range_end_frame_set(
PointerRNA *
ptr,
int value)
1108 data->r.pefra = value;
1110 if (
data->r.psfra > value) {
1115static void rna_Scene_show_subframe_update(
Main * ,
1120 scene->r.subframe = 0.0f;
1151static int rna_Scene_active_keying_set_index_get(
PointerRNA *
ptr)
1154 return scene->active_keyingset - 1;
1160static void rna_Scene_active_keying_set_index_set(
PointerRNA *
ptr,
int value)
1163 scene->active_keyingset = value + 1;
1177 if (scene->keyingsets.first) {
1196 internal->link = (
Link *)ks->next;
1199 iter->valid = (internal->link !=
nullptr);
1202static std::optional<std::string> rna_SceneEEVEE_path(
const PointerRNA * )
1207static std::optional<std::string> rna_RaytraceEEVEE_path(
const PointerRNA * )
1209 return "eevee.ray_tracing_options";
1212static std::optional<std::string> rna_SceneGpencil_path(
const PointerRNA * )
1214 return "grease_pencil_settings";
1217static std::optional<std::string> rna_SceneHydra_path(
const PointerRNA * )
1240static std::optional<std::string> rna_RenderSettings_path(
const PointerRNA * )
1245static std::optional<std::string> rna_BakeSettings_path(
const PointerRNA * )
1247 return "render.bake";
1250static std::optional<std::string> rna_ImageFormatSettings_path(
1253 ID *
id =
ptr->owner_id;
1260 return "render.image_settings";
1263 return "render.bake.image_settings";
1265 return std::nullopt;
1270 for (
bNode *node : ntree->all_nodes()) {
1273 char node_name_esc[
sizeof(node->name) * 2];
1274 BLI_str_escape(node_name_esc, node->name,
sizeof(node_name_esc));
1275 return fmt::format(
"nodes[\"{}\"].format", node_name_esc);
1281 if (match(&sockdata->
format)) {
1282 char node_name_esc[
sizeof(node->name) * 2];
1283 BLI_str_escape(node_name_esc, node->name,
sizeof(node_name_esc));
1285 char socketdata_path_esc[
sizeof(sockdata->
path) * 2];
1289 "nodes[\"{}\"].file_slots[\"{}\"].format", node_name_esc, socketdata_path_esc);
1295 return std::nullopt;
1298 return std::nullopt;
1302static std::optional<std::string> rna_ImageFormatSettings_path(
const PointerRNA *
ptr)
1311 std::optional<std::string> path = rna_ImageFormatSettings_path(
1314 return *path +
".display_settings";
1317 return "display_settings";
1320 return std::nullopt;
1326 std::optional<std::string> path = rna_ImageFormatSettings_path(
1329 return *path +
".view_settings";
1332 return "view_settings";
1334 return std::nullopt;
1340 std::optional<std::string> path = rna_ImageFormatSettings_path(
1343 return *path +
".linear_colorspace_settings";
1345 return std::nullopt;
1354static int rna_RenderSettings_threads_mode_get(
PointerRNA *
ptr)
1367static bool rna_RenderSettings_is_movie_format_get(
PointerRNA *
ptr)
1373static void rna_ImageFormatSettings_file_format_set(
PointerRNA *
ptr,
int value)
1383 ID *
id =
ptr->owner_id;
1388 return image_only_type_items;
1398 ID *
id =
ptr->owner_id;
1453 if (imf ==
nullptr) {
1458 const int is_float =
ELEM(
1486 tmp.
name =
N_(
"Float (Half)");
1489 "16-bit color channels. Data passes like Depth will still be saved using full "
1490 "32-bit precision.");
1502 tmp.
name =
N_(
"Float (Full)");
1524 if (imf ==
nullptr) {
1538# ifdef WITH_IMAGE_OPENEXR
1549 int i = 1, totitem = 0;
1551 if (imf->
depth == 16) {
1552 return rna_enum_exr_codec_items;
1571static bool rna_ImageFormatSettings_has_linear_colorspace_get(
PointerRNA *
ptr)
1577static void rna_ImageFormatSettings_color_management_set(
PointerRNA *
ptr,
int value)
1586 ID *owner_id =
ptr->owner_id;
1603 return ext_num ? strlen(ext_array[0]) : 0;
1606static void rna_SceneRender_file_ext_get(
PointerRNA *
ptr,
char *value)
1611 strcpy(value, ext_num ? ext_array[0] :
"");
1615static void rna_FFmpegSettings_lossless_output_set(
PointerRNA *
ptr,
bool value)
1629static int rna_RenderSettings_active_view_index_get(
PointerRNA *
ptr)
1635static void rna_RenderSettings_active_view_index_set(
PointerRNA *
ptr,
int value)
1641static void rna_RenderSettings_active_view_index_range(
1658static void rna_RenderSettings_active_view_set(
PointerRNA *
ptr,
1680static void rna_RenderView_remove(
1689 "Render view '%s' could not be removed from scene '%s'",
1700static void rna_RenderSettings_views_format_set(
PointerRNA *
ptr,
int value)
1714static void rna_RenderSettings_engine_set(
PointerRNA *
ptr,
int value)
1733 int a = 0, totitem = 0;
1768static void rna_Scene_update_render_engine(
Main *bmain)
1773static bool rna_RenderSettings_multiple_engines_get(
PointerRNA * )
1778static bool rna_RenderSettings_use_spherical_stereo_get(
PointerRNA *
ptr)
1846# ifdef WITH_FREESTYLE
1859static void rna_SceneRenderView_name_set(
PointerRNA *
ptr,
const char *value)
1866 DATA_(
"RenderView"),
1884 if (
ptr->type == &RNA_ViewLayer) {
1887 else if (
ptr->type == &RNA_AOV) {
1891 else if (
ptr->type == &RNA_Lightgroup) {
1915static std::optional<std::string> rna_ViewLayerEEVEE_path(
const PointerRNA *
ptr)
1920 char rna_path[
sizeof(view_layer->
name) * 3];
1923 view_layer, rna_path,
sizeof(rna_path));
1925 BLI_strncpy(rna_path + view_layer_path_len,
".eevee",
sizeof(rna_path) - view_layer_path_len);
1930static void rna_SceneEEVEE_gi_cubemap_resolution_update(
Main * ,
1943static void rna_SceneEEVEE_clamp_surface_indirect_update(
Main * ,
1959static void rna_SceneEEVEE_shadow_resolution_update(
Main * ,
1975static std::optional<std::string> rna_SceneRenderView_path(
const PointerRNA *
ptr)
1978 char srv_name_esc[
sizeof(srv->
name) * 2];
1980 return fmt::format(
"render.views[\"{}\"]", srv_name_esc);
2008static void rna_Scene_editmesh_select_mode_set(
PointerRNA *
ptr,
const bool *value)
2027 if (em->selectmode != selectmode) {
2041 Mesh *mesh =
nullptr;
2047 if (mesh && mesh->
runtime->edit_mesh ==
nullptr) {
2071static void object_simplify_update(
Scene *scene,
2073 bool update_normals,
2089 if (geometry_set !=
nullptr && geometry_set->
has_volume()) {
2107 object_simplify_update(scene, ob_collection, update_normals,
depsgraph);
2127static void rna_Scene_simplify_update_impl(
Main *bmain,
2129 bool update_normals,
2137 object_simplify_update(sce, ob, update_normals,
depsgraph);
2155 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2164 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2171 rna_Scene_simplify_update_impl(bmain, scene,
false,
nullptr);
2175static void rna_Scene_use_simplify_normals_update(
Main *bmain,
Scene *scene,
PointerRNA * )
2180 rna_Scene_simplify_update_impl(bmain, scene,
true,
nullptr);
2184static void rna_Scene_use_persistent_data_update(
Main * ,
2204 sizeof(*orient_slot),
2210static int rna_Scene_transform_orientation_slots_length(
PointerRNA * )
2221static void rna_Scene_use_audio_set(
PointerRNA *
ptr,
bool value)
2247static void rna_Scene_sync_mode_set(
PointerRNA *
ptr,
int value)
2264static void rna_View3DCursor_rotation_mode_set(
PointerRNA *
ptr,
int value)
2280static void rna_View3DCursor_rotation_axis_angle_get(
PointerRNA *
ptr,
float *value)
2287static void rna_View3DCursor_rotation_axis_angle_set(
PointerRNA *
ptr,
const float *value)
2294static void rna_View3DCursor_matrix_get(
PointerRNA *
ptr,
float *values)
2300static void rna_View3DCursor_matrix_set(
PointerRNA *
ptr,
const float *values)
2303 float unit_mat[4][4];
2308static std::optional<std::string> rna_TransformOrientationSlot_path(
const PointerRNA *
ptr)
2314 if (!
ELEM(
nullptr, scene, orientation_slot)) {
2317 return fmt::format(
"transform_orientation_slots[{}]",
i);
2324 return "transform_orientation_slots[0]";
2327static std::optional<std::string> rna_View3DCursor_path(
const PointerRNA * )
2332static TimeMarker *rna_TimeLine_add(
Scene *scene,
const char name[],
int frame)
2336 marker->
frame = frame;
2352 "Timeline marker '%s' not found in scene '%s'",
2365static void rna_TimeLine_clear(
Scene *scene)
2373static std::optional<std::string> rna_Scene_KeyingsSetsAll_path(
const PointerRNA * )
2375 return "keying_sets_all";
2380 const char idname[],
2406static void rna_UnifiedPaintSettings_size_set(
PointerRNA *
ptr,
int value)
2415static void rna_UnifiedPaintSettings_unprojected_radius_set(
PointerRNA *
ptr,
float value)
2428 rna_UnifiedPaintSettings_update(
C,
ptr);
2431static std::optional<std::string> rna_UnifiedPaintSettings_path(
const PointerRNA * )
2433 return "tool_settings.unified_paint_settings";
2436static std::optional<std::string> rna_CurvePaintSettings_path(
const PointerRNA * )
2438 return "tool_settings.curve_paint_settings";
2441static std::optional<std::string> rna_SequencerToolSettings_path(
const PointerRNA * )
2443 return "tool_settings.sequencer_tool_settings";
2455 for (
Object *obedit : objects) {
2463static std::optional<std::string> rna_MeshStatVis_path(
const PointerRNA * )
2465 return "tool_settings.statvis";
2503static std::optional<std::string> rna_ToolSettings_path(
const PointerRNA * )
2505 return "tool_settings";
2521 if (lineset->linestyle) {
2612 "Style module '%s' could not be removed",
2613 module->script->id.name + 2);
2629 ID *
id =
ptr->owner_id;
2661static void rna_ViewLayer_remove(
2672static void rna_ViewLayer_move(
2736static void rna_ViewLayerLightgroup_name_get(
PointerRNA *
ptr,
char *value)
2739 strcpy(value, lightgroup->name);
2742static int rna_ViewLayerLightgroup_name_length(
PointerRNA *
ptr)
2745 return strlen(lightgroup->name);
2748static void rna_ViewLayerLightgroup_name_set(
PointerRNA *
ptr,
const char *value)
2758# define V3D_ORIENT_DEFAULT -1
2760static int rna_TransformOrientationSlot_type_get(
PointerRNA *
ptr)
2766 return V3D_ORIENT_DEFAULT;
2772void rna_TransformOrientationSlot_type_set(
PointerRNA *
ptr,
int value)
2778 if (value == V3D_ORIENT_DEFAULT) {
2796 orientation =
nullptr;
2805 const bool include_default,
2812 if (include_default) {
2814 tmp.
name =
N_(
"Default");
2816 tmp.
value = V3D_ORIENT_DEFAULT;
2817 tmp.
icon = ICON_OBJECT_ORIGIN;
2833 tmp.
name = ts->name;
2860 return rna_TransformOrientation_impl_itemf(scene,
false, r_free);
2875 return rna_TransformOrientation_impl_itemf(scene, include_default, r_free);
2878# undef V3D_ORIENT_DEFAULT
2880static const EnumPropertyItem *rna_UnitSettings_itemf_wrapper(
const int system,
2893 adaptive.
name =
N_(
"Adaptive");
2897 for (
int i = 0;
i <
len;
i++) {
2962static std::optional<std::string> rna_UnitSettings_path(
const PointerRNA * )
2964 return "unit_settings";
2967static std::optional<std::string> rna_FFmpegSettings_path(
const PointerRNA * )
2969 return "render.ffmpeg";
2984 const ID *
id =
ptr->owner_id;
3004 srna =
RNA_def_struct(brna,
"GPencilInterpolateSettings",
nullptr);
3007 "Grease Pencil Interpolate Settings",
3008 "Settings for Grease Pencil interpolation tools");
3017 "Interpolation Curve",
3018 "Custom curve to control 'sequence' interpolation between Grease Pencil frames");
3044 srna =
RNA_def_struct(brna,
"TransformOrientationSlot",
nullptr);
3053 "rna_TransformOrientationSlot_type_get",
3054 "rna_TransformOrientationSlot_type_set",
3055 "rna_TransformOrientation_with_scene_itemf");
3062 prop,
"rna_TransformOrientationSlot_get",
nullptr,
nullptr,
nullptr);
3095 prop,
"Quaternion Rotation",
"Rotation in quaternions (keep normalized)");
3102 "rna_View3DCursor_rotation_axis_angle_get",
3103 "rna_View3DCursor_rotation_axis_angle_set",
3107 prop,
"Axis-Angle Rotation",
"Angle of Rotation for Axis-Angle rotation representation");
3126 "The kind of rotation to apply, values from other rotation modes aren't used");
3134 prop,
"Transform Matrix",
"Matrix combining location and rotation of the cursor");
3136 prop,
"rna_View3DCursor_matrix_get",
"rna_View3DCursor_matrix_set",
nullptr);
3152 {0,
nullptr, 0,
nullptr,
nullptr},
3161 "Show vertices with no weights in the active group"},
3163 {0,
nullptr, 0,
nullptr,
nullptr},
3172 "Vertex Groups assigned to Deform Bones"},
3177 "Vertex Groups assigned to non Deform Bones"},
3178 {0,
nullptr, 0,
nullptr,
nullptr},
3186 "Draw stroke at Object origin"},
3191 "Draw stroke at 3D cursor location"},
3196 "Stick stroke to surfaces"},
3201 "Stick stroke to other strokes"},
3202 {0,
nullptr, 0,
nullptr,
nullptr},
3206 {0,
"NONE", 0,
"All Points",
"Snap to all points"},
3211 "Snap to first and last points and interpolate"},
3213 {0,
nullptr, 0,
nullptr,
nullptr},
3216 static const EnumPropertyItem annotation_stroke_placement_view2d_items[] = {
3221 "Stick stroke to the image"},
3223 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3224 {0,
nullptr, 0,
nullptr,
nullptr},
3227 static const EnumPropertyItem annotation_stroke_placement_view3d_items[] = {
3232 "Draw stroke at 3D cursor location"},
3234 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3239 "Stick stroke to surfaces"},
3240 {0,
nullptr, 0,
nullptr,
nullptr},
3246 ICON_STICKY_UVS_DISABLE,
3248 "Sticky vertex selection disabled"},
3251 ICON_STICKY_UVS_LOC,
3253 "Select UVs that are at the same location and share a mesh vertex"},
3256 ICON_STICKY_UVS_VERT,
3258 "Select UVs that share a mesh vertex, whether or not they are at the same location"},
3259 {0,
nullptr, 0,
nullptr,
nullptr},
3284 "Weight Paint Auto-Normalize",
3285 "Ensure all bone-deforming vertex groups add up "
3286 "to 1.0 while weight painting or assigning to vertices");
3293 "Weight Paint Lock-Relative",
3294 "Display bone-deforming groups as if all locked deform groups "
3295 "were deleted, and the remaining ones were re-normalized");
3302 "Weight Paint Multi-Paint",
3303 "Paint across the weights of all selected bones, "
3304 "maintaining their relative influence");
3375 "Lock Object Modes",
3376 "Restrict selection to objects using the same mode as the active "
3377 "object, to prevent accidental mode switch when selecting");
3383 {0,
nullptr, 0,
nullptr,
nullptr},
3405 prop,
"Proportional Editing Objects",
"Proportional editing object mode");
3413 prop,
"Projected from View",
"Proportional Editing using screen space locations");
3420 prop,
"Connected Only",
"Proportional Editing using connected geometry only");
3434 prop,
"Proportional Editing Actions",
"Proportional editing in action editor");
3442 prop,
"Proportional Editing F-Curves",
"Proportional editing in F-Curve editor");
3456 prop,
"Proportional Editing Falloff",
"Falloff type for proportional editing mode");
3465 prop,
"Proportional Size",
"Display size for proportional editing circle");
3472 prop,
"Proportional Size",
"Display size for proportional editing circle");
3496 "Only transform object locations, without affecting rotation or scaling");
3503 prop,
"Transform Origins",
"Transform object origins, while leaving the shape in place");
3510 prop,
"Transform Parents",
"Transform the parents, leaving the children in place");
3517 "Correct Face Attributes",
3518 "Correct data such as UVs and color attributes when transforming");
3528 "During the Face Attributes correction, merge attributes connected to the same vertex");
3535 prop,
"Auto Merge Vertices",
"Automatically merge vertices moved to the same location");
3579 prop,
"Align Rotation to Target",
"Align rotation with the snapping target");
3587 "Absolute Increment Snap",
3588 "Absolute grid alignment while translating (based on the pivot center)");
3594 prop,
"Rotation Increment",
"Angle used for rotation increments in 2D editors");
3602 "Rotation Precision Increment",
3603 "Precision angle used for rotation increments in 2D editors");
3611 prop,
"Rotation Increment",
"Angle used for rotation increments in 3D editors");
3619 "Rotation Precision Increment",
3620 "Precision angle used for rotation increments in 3D editors");
3630 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3640 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3643 prop,
"Snap Element",
"Type of element for the \"Snap Base\" to snap to");
3651 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3654 prop,
"Project Mode",
"Type of element for individual transformed elements to snap to");
3663 "Face Nearest Steps",
3664 "Number of steps to break transformation into for face nearest snapping");
3671 "Snap to Same Target",
3672 "Snap only to target that source was initially near (\"Face Nearest\" only)");
3685 prop,
"Snap",
"Enable snapping when transforming keys in the Driver Editor");
3693 prop,
"Absolute Time Snap",
"Absolute time alignment when transforming keyframes");
3766 prop,
"Snap Peel Object",
"Consider objects as whole when finding volume center");
3781 prop,
"Snap onto Active",
"Snap onto itself only if enabled (edit mode only)");
3788 prop,
"Snap onto Edited",
"Snap onto non-active objects in edit mode (edit mode only)");
3795 prop,
"Snap onto Non-edited",
"Snap onto objects not in edit mode (edit mode only)");
3802 prop,
"Snap onto Selectable Only",
"Snap only onto objects that are selectable");
3810 prop,
"Use Snap for Translation",
"Move is affected by snapping settings");
3819 prop,
"Use Snap for Rotation",
"Rotate is affected by the snapping settings");
3843 "Select the closest axis when placing objects "
3844 "(surface overrides)");
3872 "Use Additive Drawing",
3873 "When creating new frames, the strokes from the previous/active frame "
3874 "are included as the basis for the new one");
3881 prop,
"Draw Strokes on Back",
"New strokes are drawn below of all strokes in the layer");
3889 prop,
"Compact List",
"Show compact list of colors instead of thumbnails");
3896 "Add weight data for new strokes",
3897 "Weight data for new strokes is added according to the current vertex "
3898 "group and weight. If no vertex group selected, weight is not added.");
3909 "Join the last drawn stroke with previous strokes in the active layer by distance");
3918 prop,
"Grease Pencil Sculpt",
"Settings for stroke sculpting tools and brushes");
3925 prop,
"Grease Pencil Interpolate",
"Settings for Grease Pencil interpolation tools");
3946 prop,
"Surface Offset",
"Offset along the normal when drawing on surfaces");
3956 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
3995 prop,
"Selection Mask",
"Only sculpt selected stroke points between other strokes");
4029 prop,
"Selection Mask",
"Only paint selected stroke points between other strokes");
4062 "Annotation Stroke Placement (3D View)",
4063 "How annotation strokes are orientated in 3D space");
4071 prop,
"Only Endpoints",
"Only use the first and last parts of the stroke for snapping");
4079 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4095 prop,
"Auto Keying",
"Automatic keyframe insertion for objects, bones and masks");
4105 "Mode of automatic keyframe insertion for objects, bones and masks");
4113 "Add a new NLA Track + Strip for every loop/pass made over the animation "
4114 "to allow non-destructive tweaking");
4120 "Auto Keyframe Insert Keying Set",
4121 "Automatic keyframe insertion using active Keying Set only");
4129 "Cycle-Aware Keying",
4130 "For channels with cyclic extrapolation, keyframe insertion is automatically "
4131 "remapped inside the cycle time range, and keeps ends in sync. Curves newly added to "
4132 "actions with a Manual Frame Range and Cyclic Animation are automatically made cyclic.");
4140 prop,
"New Keyframe Type",
"Type of keyframes to create when inserting keyframes");
4157 prop,
"Sticky Selection Mode",
"Method for extending UV vertex selection");
4166 prop,
"UV Sync Selection",
"Keep UV and edit mode mesh selection in sync");
4174 prop,
"UV Local View",
"Display only faces with the currently displayed image assigned");
4237 {
SEQ_SCALE_TO_FIT,
"FIT", 0,
"Scale to Fit",
"Scale image to fit within the canvas"},
4238 {
SEQ_SCALE_TO_FILL,
"FILL", 0,
"Scale to Fill",
"Scale image to completely fill the canvas"},
4239 {
SEQ_STRETCH_TO_FILL,
"STRETCH", 0,
"Stretch to Fill",
"Stretch image to fill the canvas"},
4243 "Use Original Size",
4244 "Keep image at its original size"},
4245 {0,
nullptr, 0,
nullptr,
nullptr},
4249 {
SEQ_OVERLAP_EXPAND,
"EXPAND", 0,
"Expand",
"Move strips so transformed strips fit"},
4254 "Trim or split strips to resolve overlap"},
4259 "Move transformed strips to nearest free space to resolve overlap"},
4260 {0,
nullptr, 0,
nullptr,
nullptr},
4266 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"2D Cursor",
"Pivot around the 2D cursor"},
4268 "INDIVIDUAL_ORIGINS",
4269 ICON_PIVOT_INDIVIDUAL,
4270 "Individual Origins",
4271 "Pivot around each selected island's own median point"},
4272 {0,
nullptr, 0,
nullptr,
nullptr},
4324 prop,
"Other Strips",
"Snap to borders and origins of deselected, visible strips");
4338 prop,
"Snap Current Frame to Strips",
"Snap current frame to strip start or end");
4363 {0,
"VIEW", 0,
"View",
"Measure brush size relative to the view"},
4368 "Measure brush size relative to the scene"},
4369 {0,
nullptr, 0,
nullptr,
nullptr},
4375 srna,
"Unified Paint Settings",
"Overrides for some of the active brush's settings");
4382 "Use Unified Radius",
4383 "Instead of per-brush radius, the radius is shared across brushes");
4389 "Use Unified Strength",
4390 "Instead of per-brush strength, the strength is shared across brushes");
4396 "Use Unified Weight",
4397 "Instead of per-brush weight, the weight is shared across brushes");
4403 prop,
"Use Unified Color",
"Instead of per-brush color, the color is shared across brushes");
4410 "Use Unified Input Samples",
4411 "Instead of per-brush input samples, the value is shared across brushes");
4426 prop,
nullptr,
"rna_UnifiedPaintSettings_unprojected_radius_set",
nullptr);
4439 prop,
"Strength",
"How powerful the effect of the brush is when applied");
4550 "Number of input samples to average together to smooth the brush stroke");
4558 prop,
"Radius Unit",
"Measure brush size relative to the view or the scene");
4573 {
CU_POLY,
"POLY", 0,
"Poly",
""},
4574 {
CU_BEZIER,
"BEZIER", 0,
"Bézier",
""},
4575 {0,
nullptr, 0,
nullptr,
nullptr},
4604 prop,
"Absolute Offset",
"Apply a fixed offset (don't scale by the radius)");
4610 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4635 "Minimum radius when the minimum pressure is applied (also the minimum when tapering)");
4644 "Radius to use when the maximum pressure is applied (or when a tablet isn't used)");
4651 prop,
"Radius Min",
"Taper factor for the radius of each point along the curve");
4658 prop,
"Radius Max",
"Taper factor for the radius of each point along the curve");
4669 {0,
nullptr, 0,
nullptr,
nullptr},
4682 "Normal to Surface",
4683 "Draw in a plane perpendicular to the surface"},
4687 "Tangent to Surface",
4688 "Draw in the surface plane"},
4693 "Draw in a plane aligned to the viewport"},
4694 {0,
nullptr, 0,
nullptr,
nullptr},
4715 {0,
nullptr, 0,
nullptr,
nullptr},
4821 {0,
nullptr, 0,
nullptr,
nullptr},
4825 {0,
"DEGREES", 0,
"Degrees",
"Use degrees for measuring angles and rotations"},
4827 {0,
nullptr, 0,
nullptr,
nullptr},
4839 prop,
"Unit System",
"The unit system to use for user interface controls");
4845 prop,
"Rotation Units",
"Unit to use for displaying/editing rotation values");
4852 "Scale to use when converting between Blender units and dimensions."
4853 " When working at microscopic or astronomical scale, a small or large unit scale"
4854 " respectively can be used to avoid numerical precision problems");
4886 prop,
"Temperature Unit",
"Unit that will be used to display temperature values");
4915 prop,
"Transparent",
"Deliver alpha blended surfaces in a separate pass");
4986 parm =
RNA_def_pointer(func,
"lightgroup",
"Lightgroup",
"",
"Newly created Lightgroup");
4988 parm =
RNA_def_string(func,
"name",
nullptr, 0,
"Name",
"Name of newly created lightgroup");
4990 func =
RNA_def_function(srna,
"remove",
"BKE_view_layer_remove_lightgroup");
4991 parm =
RNA_def_pointer(func,
"lightgroup",
"Lightgroup",
"",
"Lightgroup to remove");
5008 "rna_ViewLayerLightgroup_name_get",
5009 "rna_ViewLayerLightgroup_name_length",
5010 "rna_ViewLayerLightgroup_name_set");
5043 prop,
"Material Override",
"Material to override all other materials in this view layer");
5057 "Override number of render samples for this view layer, "
5058 "0 will use the scene setting");
5065 "Z, Index, normal, UV and vector passes are only affected by surfaces with "
5066 "alpha transparency equal to or higher than this threshold");
5087 "rna_ViewLayer_active_aov_index_get",
5088 "rna_ViewLayer_active_aov_index_set",
5089 "rna_ViewLayer_active_aov_index_range");
5106 "rna_ViewLayer_active_lightgroup_index_get",
5107 "rna_ViewLayer_active_lightgroup_index_set",
5108 "rna_ViewLayer_active_lightgroup_index_range");
5117 "Cryptomatte Object",
5118 "Render cryptomatte object pass, for isolating objects in compositing");
5126 "Cryptomatte Material",
5127 "Render cryptomatte material pass, for isolating materials in compositing");
5134 "Cryptomatte Asset",
5135 "Render cryptomatte asset pass, for isolating groups of objects with the same parent");
5143 prop,
"Cryptomatte Levels",
"Sets how many unique objects can be distinguished per pixel");
5152 prop,
"Cryptomatte Accurate",
"Generate a more accurate cryptomatte pass");
5208 prop,
"Motion Blur",
"Render motion blur in this Layer, if enabled in the scene");
5489 srna,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5493 "Add a style module to scene render layer Freestyle settings");
5496 func,
"module",
"FreestyleModuleSettings",
"",
"Newly created style module");
5499 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_module_remove");
5501 func,
"Remove a style module from scene render layer Freestyle settings");
5503 parm =
RNA_def_pointer(func,
"module",
"FreestyleModuleSettings",
"",
"Style module to remove");
5519 srna,
"Line Sets",
"Line sets for associating lines and style parameters");
5524 prop,
"rna_FreestyleSettings_active_lineset_get",
nullptr,
nullptr,
nullptr);
5530 "rna_FreestyleSettings_active_lineset_index_get",
5531 "rna_FreestyleSettings_active_lineset_index_set",
5532 "rna_FreestyleSettings_active_lineset_index_range");
5539 parm =
RNA_def_string(func,
"name",
"LineSet", 0,
"",
"New name for the line set (not unique)");
5541 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Newly created line set");
5544 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_lineset_remove");
5546 "Remove a line set from scene render layer Freestyle settings");
5548 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Line set to remove");
5563 "Select feature edges satisfying the given edge type conditions"},
5568 "Select feature edges not satisfying the given edge type conditions"},
5569 {0,
nullptr, 0,
nullptr,
nullptr},
5577 "Select feature edges satisfying at least one of edge type conditions"},
5582 "Select feature edges satisfying all edge type conditions"},
5583 {0,
nullptr, 0,
nullptr,
nullptr},
5591 "Select feature edges belonging to some object in the group"},
5596 "Select feature edges not belonging to any object in the group"},
5597 {0,
nullptr, 0,
nullptr,
nullptr},
5605 "Select feature edges satisfying the given face mark conditions"},
5610 "Select feature edges not satisfying the given face mark conditions"},
5611 {0,
nullptr, 0,
nullptr,
nullptr},
5615 {0,
"ONE", 0,
"One Face",
"Select a feature edge if either of its adjacent faces is marked"},
5620 "Select a feature edge if both of its adjacent faces are marked"},
5621 {0,
nullptr, 0,
nullptr,
nullptr},
5629 "Advanced mode for using style modules written in Python"},
5634 "Basic mode for interactive style parameter editing"},
5635 {0,
nullptr, 0,
nullptr,
nullptr},
5644 "Quantitative Invisibility",
5645 "Select feature edges within a range of quantitative invisibility (QI) values"},
5646 {0,
nullptr, 0,
nullptr,
nullptr},
5653 srna,
"Freestyle Line Set",
"Line set for associating lines and style parameters");
5662 "rna_FreestyleLineSet_linestyle_get",
5663 "rna_FreestyleLineSet_linestyle_set",
5678 prop,
"Render",
"Enable or disable this line set during stroke rendering");
5684 prop,
"Selection by Visibility",
"Select feature edges based on visibility");
5690 prop,
"Selection by Edge Types",
"Select feature edges based on edge types");
5696 prop,
"Selection by Collection",
"Select feature edges based on a collection of objects");
5702 "Selection by Image Border",
5703 "Select feature edges by image border (less memory consumption)");
5716 "Edge Type Negation",
5717 "Specify either inclusion or exclusion of feature edges selected by edge types");
5725 "Edge Type Combination",
5726 "Specify a logical combination of selection conditions on feature edge types");
5734 prop,
"Collection",
"A collection of objects based on which feature edges are selected");
5741 "Collection Negation",
5742 "Specify either inclusion or exclusion of feature edges belonging to a "
5743 "collection of objects");
5751 "Face Mark Negation",
5752 "Specify either inclusion or exclusion of feature edges selected by face marks");
5759 "Face Mark Condition",
5760 "Specify a feature edge selection condition based on face marks");
5768 "Select silhouettes (edges at the boundary of visible and hidden faces)");
5780 "Select crease edges (those between two faces making an angle smaller "
5781 "than the Crease Angle)");
5789 "Select ridges and valleys (boundary lines between convex and concave areas of surface)");
5795 prop,
"Suggestive Contour",
"Select suggestive contours (almost silhouette/contour edges)");
5813 "Select external contours (outer silhouettes of occluding and occluded objects)");
5819 prop,
"Edge Mark",
"Select edge marks (edges annotated by Freestyle edge marks)");
5883 prop,
"Visibility",
"Determine how to use visibility for feature edge selection");
5903 srna,
"Freestyle Module",
"Style module configuration for specifying a style module");
5914 prop,
"Use",
"Enable or disable this style module during stroke rendering");
5923 srna,
"Freestyle Settings",
"Freestyle settings for a ViewLayer data-block");
5929 prop,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5961 prop,
"Face Smoothness",
"Take face smoothness into account in view map calculation");
5969 "Keep the computed view map and avoid recalculating it if mesh geometry is unchanged");
5978 "Renders Freestyle output to a separate pass instead of overlaying it on the Combined pass");
5993 prop,
"Kr Derivative Epsilon",
"Kr derivative epsilon for computing suggestive contours");
6024 "Object to use as cage "
6025 "instead of calculating the cage from the active object with cage extrusion");
6060 "The maximum ray distance for matching points between the active and "
6061 "selected objects. If zero, there is no limit.");
6070 "Inflate the active object by the specified distance for baking. This helps matching to "
6071 "points nearer to the outside of the selected object meshes.");
6124 "Selected to Active",
6125 "Bake shading on the surface of selected objects to the active object");
6136 prop,
"Split Materials",
"Split external images per material (external only)");
6144 "Automatically name the output file with the pass type (external only)");
6210 func,
"name",
"ViewLayer", 0,
"",
"New name for the view layer (not unique)");
6212 parm =
RNA_def_pointer(func,
"result",
"ViewLayer",
"",
"Newly created view layer");
6218 parm =
RNA_def_pointer(func,
"layer",
"ViewLayer",
"",
"View layer to remove");
6226 func,
"from_index", -1, INT_MIN, INT_MAX,
"From Index",
"Index to move", 0, 10000);
6228 parm =
RNA_def_int(func,
"to_index", -1, INT_MIN, INT_MAX,
"To Index",
"Target index", 0, 10000);
6240 srna,
"Scene Render View",
"Render viewpoint for 3D stereo and multiview rendering");
6260 "Suffix to identify the cameras to use, and added to the render images for this view");
6287 "rna_RenderSettings_active_view_index_get",
6288 "rna_RenderSettings_active_view_index_set",
6289 "rna_RenderSettings_active_view_index_range");
6296 "rna_RenderSettings_active_view_get",
6297 "rna_RenderSettings_active_view_set",
6307 parm =
RNA_def_string(func,
"name",
"RenderView", 0,
"",
"New name for the marker (not unique)");
6309 parm =
RNA_def_pointer(func,
"result",
"SceneRenderView",
"",
"Newly created render view");
6315 parm =
RNA_def_pointer(func,
"view",
"SceneRenderView",
"",
"Render view to remove");
6331 "Render views for left and right eyes as two differently filtered colors in a single image "
6332 "(anaglyph glasses are required)"},
6337 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
6343 "Render views for left and right eyes side-by-side"},
6348 "Render views for left and right eyes one above another"},
6349 {0,
nullptr, 0,
nullptr,
nullptr},
6396# ifdef WITH_IMAGE_OPENJPEG
6400 {0,
nullptr, 0,
nullptr,
nullptr},
6409 {0,
nullptr, 0,
nullptr,
nullptr},
6415 {0,
nullptr, 0,
nullptr,
nullptr},
6434 "rna_ImageFormatSettings_file_format_set",
6435 "rna_ImageFormatSettings_file_format_itemf");
6446 "Choose BW for saving grayscale images, RGB for saving red, green and blue channels, "
6447 "and RGBA for saving red, green, blue and alpha channels");
6462 prop,
"Quality",
"Quality for image formats that support lossy compression");
6471 "Amount of time to determine best compression: "
6472 "0 = no compression with fast file output, "
6473 "100 = maximum lossless compression with slow file output");
6479 prop,
"Preview",
"When rendering animations, save JPG preview images in same directory");
6484# ifdef WITH_IMAGE_OPENEXR
6495# ifdef WITH_IMAGE_OPENJPEG
6500 prop,
"YCC",
"Save luminance-chrominance-chrominance channels instead of RGB colors");
6557 prop,
nullptr,
nullptr,
"rna_ImageFormatSettings_views_format_itemf");
6571 prop,
"Color Management",
"Which color management settings to use for file saving");
6573 prop,
nullptr,
"rna_ImageFormatSettings_color_management_set",
nullptr);
6579 prop,
"View Settings",
"Color management settings applied on image before saving");
6584 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
6592 prop,
"rna_ImageFormatSettings_has_linear_colorspace_get",
nullptr);
6595 prop,
"Has Linear Color Space",
"File format expects linear color space");
6617 {
FFMPEG_MOV,
"QUICKTIME", 0,
"QuickTime",
""},
6618 {0,
nullptr, 0,
nullptr,
nullptr},
6626 "Disables video output, for audio-only renders"},
6645 {0,
nullptr, 0,
nullptr,
nullptr},
6656 "Recommended if you have lots of time and want the best compression efficiency"},
6657 {
FFM_PRESET_GOOD,
"GOOD", 0,
"Good",
"The default and recommended for most applications"},
6659 {0,
nullptr, 0,
nullptr,
nullptr},
6669 {0,
nullptr, 0,
nullptr,
nullptr},
6677 "Configure constant bit rate, rather than constant output quality"},
6685 {0,
nullptr, 0,
nullptr,
nullptr},
6693 "Disables audio output, for video-only renders"},
6702 {0,
nullptr, 0,
nullptr,
nullptr},
6714 "Set audio channels to 5.1 surround sound"},
6719 "Set audio channels to 7.1 surround sound"},
6720 {0,
nullptr, 0,
nullptr,
nullptr},
6775 "Keyframe Interval",
6776 "Distance between key frames, also known as GOP size; "
6777 "influences file size and seekability");
6787 "Maximum number of B-frames between non-B-frames; influences file size and seekability");
6818 "Constant Rate Factor (CRF); tradeoff between video quality and file size");
6827 prop,
"Encoding Speed",
"Tradeoff between encoding speed and compression ratio");
6900 {0,
nullptr, 0,
nullptr,
nullptr},
6908 "Use pixels from adjacent faces across UV seams"},
6909 {
R_BAKE_EXTEND,
"EXTEND", 0,
"Extend",
"Extend border pixels outwards"},
6910 {0,
nullptr, 0,
nullptr,
nullptr},
6914 {0,
"AUTO", 0,
"Automatic",
"Automatic pixel size, depends on the user interface scale"},
6919 {0,
nullptr, 0,
nullptr,
nullptr},
6927 "Automatically determine the number of threads, based on CPUs"},
6928 {
R_FIXED_THREADS,
"FIXED", 0,
"Fixed",
"Manually determine the number of threads"},
6929 {0,
nullptr, 0,
nullptr,
nullptr},
6933 {0,
"BLENDER_EEVEE_NEXT", 0,
"EEVEE",
""},
6934 {0,
nullptr, 0,
nullptr,
nullptr},
6942 "Specify unit line thickness in pixels"},
6947 "Unit line thickness is scaled by the proportion of the present vertical image "
6948 "resolution to 480 pixels"},
6949 {0,
nullptr, 0,
nullptr,
nullptr},
6957 "Single stereo camera system, adjust the stereo settings in the camera panel"},
6962 "Multi camera system, adjust the cameras individually"},
6963 {0,
nullptr, 0,
nullptr,
nullptr},
6967 {
SCE_MB_START,
"START", 0,
"Start on Frame",
"The shutter opens at the current frame"},
6972 "The shutter is open during the current frame"},
6973 {
SCE_MB_END,
"END", 0,
"End on Frame",
"The shutter closes at the current frame"},
6974 {0,
nullptr, 0,
nullptr,
nullptr},
6980 {0,
nullptr, 0,
nullptr,
nullptr},
6984 {0,
"SCENE", 0,
"Scene",
"Use metadata from the current scene"},
6989 "Use metadata from the strips in the sequencer"},
6990 {0,
nullptr, 0,
nullptr,
nullptr},
6996 {0,
nullptr, 0,
nullptr,
nullptr},
7004 "Full precision for final renders, half precision otherwise"},
7006 {0,
nullptr, 0,
nullptr,
nullptr},
7014 "Use the same device used by the compositor to process the denoise node"},
7019 "Use the CPU to process the denoise node"},
7024 "Use the GPU to process the denoise node if available, otherwise fallback to CPU"},
7025 {0,
nullptr, 0,
nullptr,
nullptr},
7034 "Balanced between performance and quality"},
7036 {0,
nullptr, 0,
nullptr,
nullptr},
7060 prop,
"Resolution X",
"Number of horizontal pixels in the rendered image");
7069 prop,
"Resolution Y",
"Number of vertical pixels in the rendered image");
7093 "Horizontal aspect ratio - for anamorphic or non-square pixel output");
7102 prop,
"Pixel Aspect Y",
"Vertical aspect ratio - for anamorphic or non-square pixel output");
7113 "The pixel density meta-data written to supported image formats. "
7114 "This value is multiplied by the PPM-base which defines the unit "
7115 "(typically inches or meters)");
7170 "Amount of dithering noise added to the rendered image to break up banding");
7178 prop,
"Filter Size",
"Width over which the reconstruction filter combines samples");
7186 "World background is transparent, for compositing the render over another background");
7202 "Maximum number of CPU cores to use simultaneously while rendering "
7203 "(for multi-core/CPU systems)");
7229 "Motion Blur Position",
7230 "Offset for the shutter's time interval, "
7231 "allows to change the motion blur trails");
7239 prop,
"Shutter Curve",
"Curve defining the shutter's openness over time");
7251 prop,
"Additional Subdivision",
"Additional subdivision along the curves");
7258 "High Quality Normals",
7259 "Use high quality tangent space at the cost of lower performance");
7267 prop,
"Render Region",
"Render a user-defined render region, within the frame size");
7302 prop,
"Crop to Render Region",
"Crop the rendered frame to the defined render region size");
7311 "Create empty placeholder files while rendering frames (similar to Unix 'touch')");
7324 "Process the render result through the compositing pipeline, "
7325 "if compositing nodes are enabled");
7333 "Process the render (and composited) result through the video sequence "
7334 "editor pipeline, if sequencer strips exist");
7343 "Add the file format extensions to the rendered file name (eg: filename + .jpg)");
7357 prop,
"rna_SceneRender_file_ext_get",
"rna_SceneRender_file_ext_length",
nullptr);
7373 "Lock interface during rendering in favor of giving more memory to the renderer");
7383 "Directory/name to save animations, # characters define the position "
7384 "and padding of frame numbers");
7393 "Save render cache to EXR files (useful for heavy compositing, "
7394 "Note: affects indirectly rendered scenes)");
7408 "Selected to Active",
7409 "Bake shading on the surface of selected objects to the active object");
7433 prop,
"Bias",
"Bias towards faces further away from the object (in Blender units)");
7444 prop,
"Low Resolution Mesh",
"Calculate heights against unsubdivided low resolution mesh");
7451 prop,
"Samples",
"Number of samples used for ambient occlusion baking from multires");
7463 "Instead of automatically normalizing to the range 0 to 1, "
7464 "apply a user scale to the derivative map");
7471 prop,
"Stamp Time",
"Include the rendered frame timecode as HH:MM:SS.FF in image metadata");
7487 prop,
"Stamp Frame",
"Include the rendered frame range in image/video metadata");
7493 prop,
"Stamp Camera",
"Include the name of the active camera in image metadata");
7499 prop,
"Stamp Lens",
"Include the active camera's lens in image metadata");
7505 prop,
"Stamp Scene",
"Include the name of the active scene in image/video metadata");
7516 prop,
"Stamp Marker",
"Include the name of the last marker in image metadata");
7522 prop,
"Stamp Filename",
"Include the .blend filename in image/video metadata");
7528 "Stamp Sequence Strip",
7529 "Include the name of the foreground sequence strip in image metadata");
7545 prop,
"Stamp Output",
"Render the stamp info text in the rendered image");
7551 prop,
"Stamp Labels",
"Display stamp labels (\"Camera\" in front of camera name, etc.)");
7563 prop,
"Stamp Peak Memory",
"Include the peak memory usage in image metadata");
7569 prop,
"Stamp Hostname",
"Include the hostname of the machine that rendered the frame");
7598 prop,
"Sequencer Preview Shading",
"Display method used in the sequencer view");
7604 "Override Scene Settings",
7605 "Use workbench render settings from the sequencer scene, instead of "
7606 "each individual scene used in the strip");
7612 "Render Single Layer",
7613 "Only render the active layer. Only affects rendering from the "
7614 "interface, ignored for rendering from command line.");
7627 "rna_RenderSettings_stereoViews_begin",
7628 "rna_iterator_listbase_next",
7629 "rna_iterator_listbase_end",
7630 "rna_iterator_listbase_get",
7654 "rna_RenderSettings_engine_get",
7655 "rna_RenderSettings_engine_set",
7656 "rna_RenderSettings_engine_itemf");
7665 prop,
"Multiple Engines",
"More than one rendering engine is available");
7671 prop,
"Use Spherical Stereo",
"Active render engine supports spherical stereo rendering");
7677 prop,
"Use Simplify",
"Enable simplification of scene for quicker preview renders");
7696 prop,
"Simplify Subdivision",
"Global maximum subdivision level during rendering");
7702 prop,
"Simplify Child Particles",
"Global child particles percentage during rendering");
7708 prop,
"Simplify Volumes",
"Resolution percentage of volume objects in viewport");
7716 "Skip computing custom normals and face corner normals for displaying "
7717 "meshes in the viewport");
7729 prop,
"Playback Only",
"Simplify Grease Pencil only during animation playback");
7763 "Keep render data around for faster re-renders and animation renders, "
7764 "at the cost of increased memory usage");
7772 prop,
"Line Thickness Mode",
"Line thickness mode for Freestyle line drawing");
7799 prop,
"Compositor Precision",
"The precision of compositor intermediate result");
7807 "Compositor Denoise Node Device",
7808 "The device to use to process the denoise nodes in the compositor");
7816 "Compositor Preview Denoise Quality",
7817 "The quality used by denoise nodes during viewport and interactive "
7818 "compositing if the nodes' quality option is set to Follow Scene");
7826 "Compositor Final Denoise Quality",
7827 "The quality used by denoise nodes during the compositing of final "
7828 "renders if the nodes' quality option is set to Follow Scene");
7869 parm =
RNA_def_string(func,
"name",
"Marker", 0,
"",
"New name for the marker (not unique)");
7877 "The frame for the new marker",
7880 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Newly created timeline marker");
7886 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Timeline marker to remove");
7913 RNA_def_string(func,
"idname",
"KeyingSet", 64,
"IDName",
"Internal identifier of Keying Set");
7914 RNA_def_string(func,
"name",
"KeyingSet", 64,
"Name",
"User visible name of Keying Set");
7916 parm =
RNA_def_pointer(func,
"keyingset",
"KeyingSet",
"",
"Newly created Keying Set");
7923 "rna_Scene_active_keying_set_get",
7924 "rna_Scene_active_keying_set_set",
7928 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7934 "rna_Scene_active_keying_set_index_get",
7935 "rna_Scene_active_keying_set_index_set",
7939 "Active Keying Set Index",
7940 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7961 "rna_Scene_active_keying_set_get",
7962 "rna_Scene_active_keying_set_set",
7966 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7972 "rna_Scene_active_keying_set_index_get",
7973 "rna_Scene_active_keying_set_index_set",
7977 "Active Keying Set Index",
7978 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7989 srna =
RNA_def_struct(brna,
"SelectedUvElement",
"PropertyGroup");
8031 "Center Title Safe Margins",
8032 "Safe area for text and graphics in a different aspect ratio");
8040 "Center Action Safe Margins",
8041 "Safe area for general elements in a different aspect ratio");
8059 prop,
"Light Direction",
"Direction of the light for shadows and highlights");
8079 prop,
"Distance",
"Distance of object that contribute to the cavity/edge effect");
8095 prop,
"Render Anti-Aliasing",
"Method of anti-aliasing when rendering final image");
8101 prop,
"Viewport Anti-Aliasing",
"Method of anti-aliasing when rendering 3d viewport");
8117 srna,
"EEVEE Raytrace Options",
"Quality options for the raytracing pipeline");
8123 "Determines the number of rays per pixel. "
8124 "Higher resolution uses more memory.");
8131 prop,
"Denoise",
"Enable noise reduction techniques for raytraced effects");
8144 prop,
"Temporal Accumulation",
"Accumulate samples by reprojecting last tracing results");
8151 prop,
"Bilateral Filter",
"Blur the resolved radiance using a bilateral filter");
8158 "Screen-Trace Thickness",
8159 "Surface thickness used to detect intersection when using screen-tracing");
8167 "Raytrace Max Roughness",
8168 "Maximum roughness to use the tracing pipeline for. Higher "
8169 "roughness surfaces will use fast GI approximation. A value of 1 will "
8170 "disable fast GI approximation.");
8177 prop,
"Screen-Trace Precision",
"Precision of the screen space ray-tracing");
8189 {128,
"128", 0,
"128 px",
""},
8190 {256,
"256", 0,
"256 px",
""},
8191 {512,
"512", 0,
"512 px",
""},
8192 {1024,
"1024", 0,
"1024 px",
""},
8193 {2048,
"2048", 0,
"2048 px",
""},
8194 {4096,
"4096", 0,
"4096 px",
""},
8195 {0,
nullptr, 0,
nullptr,
nullptr},
8199 {16,
"16", 0,
"16 MB",
""},
8200 {32,
"32", 0,
"32 MB",
""},
8201 {64,
"64", 0,
"64 MB",
""},
8202 {128,
"128", 0,
"128 MB",
""},
8203 {256,
"256", 0,
"256 MB",
""},
8204 {512,
"512", 0,
"512 MB",
""},
8205 {1024,
"1024", 0,
"1 GB",
""},
8206 {0,
nullptr, 0,
nullptr,
nullptr},
8210 {8,
"8", 0,
"8 px",
""},
8211 {16,
"16", 0,
"16 px",
""},
8212 {32,
"32", 0,
"32 px",
""},
8213 {64,
"64", 0,
"64 px",
""},
8214 {0,
nullptr, 0,
nullptr,
nullptr},
8222 "Use light probes to find scene intersection"},
8227 "Raytrace against the depth buffer. Fallback to light probes for invalid rays."},
8228 {0,
nullptr, 0,
nullptr,
nullptr},
8233 "AMBIENT_OCCLUSION_ONLY",
8235 "Ambient Occlusion",
8236 "Use ambient occlusion instead of full global illumination"},
8238 "GLOBAL_ILLUMINATION",
8240 "Global Illumination",
8241 "Compute global illumination taking into account light bouncing off surrounding objects"},
8242 {0,
nullptr, 0,
nullptr,
nullptr},
8253 "Number of times the light is reinjected inside light grids, "
8254 "0 disable indirect diffuse light");
8267 "Irradiance Visibility Size",
8268 "Size of the shadow map applied to each irradiance sample");
8274 "Clamp pixel intensity to reduce noise inside glossy reflections "
8275 "from reflection cubemaps (0 to disable)");
8282 "Irradiance Pool Size",
8283 "Size of the irradiance pool, "
8284 "a bigger pool size allows for more irradiance grid in the scene "
8285 "but might not fit into GPU memory and decrease performance");
8307 "Viewport Denoising",
8308 "Denoise image using temporal reprojection "
8309 "(can leave some ghosting)");
8317 prop,
"Tracing Method",
"Select the tracing method used to find scene-ray intersections");
8323 "Jittered Shadows (Viewport)",
8324 "Enable jittered shadows on the viewport. (Jittered shadows are always "
8325 "enabled for final renders).");
8331 "Clamp Surface Direct",
8332 "If non-zero, the maximum value for lights contribution on a surface. "
8333 "Higher values will be scaled down to avoid too "
8334 "much noise and slow convergence at the cost of accuracy. "
8335 "Used by light objects.");
8342 "Clamp Surface Indirect",
8343 "If non-zero, the maximum value for indirect lighting on surface. "
8344 "Higher values will be scaled down to avoid too "
8345 "much noise and slow convergence at the cost of accuracy. "
8346 "Used by ray-tracing and light-probes.");
8354 "Clamp Volume Direct",
8355 "If non-zero, the maximum value for lights contribution in volumes. "
8356 "Higher values will be scaled down to avoid too "
8357 "much noise and slow convergence at the cost of accuracy. "
8358 "Used by light objects.");
8365 "Clamp Volume Indirect",
8366 "If non-zero, the maximum value for indirect lighting in volumes. "
8367 "Higher values will be scaled down to avoid too "
8368 "much noise and slow convergence at the cost of accuracy. "
8369 "Used by light-probes.");
8393 "Control the quality of the volumetric effects. "
8394 "Higher resolution uses more memory.");
8401 "Number of steps to compute volumetric effects. "
8402 "Higher step count increase VRAM usage and quality.");
8409 prop,
"Exponential Sampling",
"Distribute more samples closer to the camera");
8415 "Volume Max Ray Depth",
8416 "Maximum surface intersection count used by the accurate volume "
8417 "intersection method. Will create artifact if it is exceeded. "
8418 "Higher count increases VRAM usage.");
8433 "Volumetric Shadows",
8434 "Cast shadows from volumetric materials onto volumetric materials (Very expensive)");
8441 prop,
"Volumetric Shadow Samples",
"Number of samples to compute volumetric shadowing");
8448 "Volume Custom Range",
8449 "Enable custom start and end clip distances for volume computation");
8456 "Ambient Occlusion",
8457 "Enable ambient occlusion to simulate medium scale indirect shadowing");
8472 prop,
"Distance",
"Distance of object that contribute to the ambient occlusion effect");
8483 "Fast GI Approximation",
8484 "Use faster global illumination technique for high roughness surfaces");
8492 "Geometric thickness of the surfaces when computing fast GI and ambient occlusion. "
8493 "Reduces light leaking and missing contact occlusion.");
8503 "Angular thickness of the surfaces when computing fast GI and ambient occlusion. "
8504 "Reduces energy loss and missing occlusion of far geometry.");
8538 "If non-zero, the maximum distance at which other surfaces will "
8539 "contribute to the fast GI approximation");
8545 prop,
"Bias",
"Bias the shading normal to reduce self intersection artifacts");
8556 "Control the quality of the fast GI lighting. "
8557 "Higher resolution uses more memory.");
8565 prop,
"Max Size",
"Max size of the bokeh shape for the depth of field (lower is faster)");
8572 prop,
"Sprite Threshold",
"Brightness threshold for using sprite base depth of field");
8580 "Neighbor Rejection",
8581 "Maximum brightness to consider when rejecting bokeh sprites "
8582 "based on neighborhood (lower is faster)");
8592 "Jitter camera position to create accurate blurring "
8593 "using render samples (only for final render)");
8600 "Apply blur to each jittered sample to reduce "
8601 "under-sampling artifacts");
8610 "Lower values will reduce background"
8611 " bleeding onto foreground elements");
8627 "Controls accuracy of motion blur, "
8628 "more steps means longer render time");
8645 "Size of the shadow pool, "
8646 "a bigger pool size allows for more shadows in the scene "
8647 "but might not fit into GPU memory");
8654 prop,
"Shadow Ray Count",
"Amount of shadow ray to trace for each light");
8661 prop,
"Shadow Step Count",
"Amount of shadow map sample per shadow ray");
8668 "Minimum light intensity for a light to contribute to the lighting");
8679 "Internally render past the image border to avoid "
8680 "screen-space effects disappearing");
8687 "Percentage of render size to add as overscan to the "
8688 "internal render buffers");
8696 prop,
"Reflection Trace Options",
"EEVEE settings for tracing reflections");
8708 prop,
"Shadows Resolution Scale",
"Resolution percentage of shadow maps");
8727 "SMAA Threshold Viewport",
8728 "Threshold for edge detection algorithm (higher values might over-blur "
8729 "some part of the image)");
8737 "SMAA Threshold Render",
8738 "Threshold for edge detection algorithm (higher values might over-blur "
8739 "some part of the image). Only applies to final render");
8745 "Anti-Aliasing Samples",
8746 "Number of supersampling anti-aliasing samples per pixel for final render");
8767 "Fast interactive editing through native Hydra integration"},
8772 "Export scene through USD file, for accurate comparison with USD file export"},
8773 {0,
nullptr, 0,
nullptr,
nullptr},
8783 prop,
"Export Method",
"How to export the Blender scene to the Hydra render engine");
8796 {0,
"NONE", 0,
"None",
"No distance attenuation"},
8797 {1,
"INVERSE", 0,
"Inverse",
"Inverse distance model"},
8798 {2,
"INVERSE_CLAMPED", 0,
"Inverse Clamped",
"Inverse distance model with clamping"},
8799 {3,
"LINEAR", 0,
"Linear",
"Linear distance model"},
8800 {4,
"LINEAR_CLAMPED", 0,
"Linear Clamped",
"Linear distance model with clamping"},
8801 {5,
"EXPONENT", 0,
"Exponential",
"Exponential distance model"},
8805 "Exponential Clamped",
8806 "Exponential distance model with clamping"},
8807 {0,
nullptr, 0,
nullptr,
nullptr},
8811 {0,
"NONE", 0,
"Play Every Frame",
"Do not sync, play every frame"},
8812 {
SCE_FRAME_DROP,
"FRAME_DROP", 0,
"Frame Dropping",
"Drop frames if playback is too slow"},
8813 {
AUDIO_SYNC,
"AUDIO_SYNC", 0,
"Sync to Audio",
"Sync to audio playback, dropping frames"},
8814 {0,
nullptr, 0,
nullptr,
nullptr},
8821 "Scene data-block, consisting in objects and "
8822 "defining time and render related settings");
8854 "rna_Scene_objects_begin",
8855 "rna_Scene_objects_next",
8856 "rna_Scene_objects_end",
8857 "rna_Scene_objects_get",
8873 "Current frame, to update animation data from Python frame_set() instead");
8890 prop,
"rna_Scene_frame_float_get",
"rna_Scene_frame_float_set",
nullptr);
8917 "Number of frames to skip forward while rendering/playing back each frame");
8925 prop,
"Current Frame Final",
"Current frame with subframe and time remapping applied");
8931 "Lock Frame Selection",
8932 "Don't allow frame to be selected with mouse outside of frame range");
8942 "Use Preview Range",
8943 "Use an alternative start/end frame range for animation playback and view renders");
8952 prop,
"Preview Range Start Frame",
"Alternative start frame for UI playback");
8960 prop,
"Preview Range End Frame",
"Alternative end frame for UI playback");
8970 "Display and allow setting fractional frame values for the current frame");
8977 prop,
"Only Show Selected",
"Only include channels relating to selected objects and data");
8997 "Whether there is any action referenced by NLA being edited (strictly read-only)");
9005 prop,
"Frame Dropping",
"Play back dropping frames if frame display is too slow");
9012 "Custom Simulation Range",
9013 "Use a simulation range that is different from the scene range for "
9014 "simulation nodes that don't override the frame range themselves");
9064 "rna_Scene_all_keyingsets_begin",
9065 "rna_Scene_all_keyingsets_next",
9066 "rna_iterator_listbase_end",
9067 "rna_iterator_listbase_get",
9076 "All Keying Sets available for use (Builtins and Absolute Keying Sets for this Scene)");
9134 prop,
"Timeline Markers",
"Markers used in all timelines for the current scene");
9140 "rna_Scene_transform_orientation_slots_begin",
9141 "rna_iterator_array_next",
9142 "rna_iterator_array_end",
9143 "rna_iterator_array_get",
9144 "rna_Scene_transform_orientation_slots_length",
9162 prop,
"Play Audio",
"Play back of audio from Sequence Editor, otherwise mute audio");
9171 "Play back and sync with audio clock, dropping frames if frame display is too slow");
9178 prop,
"Audio Scrubbing",
"Play audio from Sequence Editor while scrubbing");
9186 prop,
"Speed of Sound",
"Speed of sound for Doppler effect calculation");
9201 prop,
"Distance Model",
"Distance model for distance attenuation calculation");
9212 func =
RNA_def_function(srna,
"update_render_engine",
"rna_Scene_update_render_engine");
9217 func =
RNA_def_function(srna,
"statistics",
"rna_Scene_statistics_string_get");
9219 parm =
RNA_def_pointer(func,
"view_layer",
"ViewLayer",
"View Layer",
"");
9221 parm =
RNA_def_string(func,
"statistics",
nullptr, 0,
"Statistics",
"");
9229 prop,
nullptr,
nullptr,
nullptr,
"rna_GPencil_datablocks_annotations_poll");
9233 prop,
"Annotations",
"Grease Pencil data-block used for annotations in the 3D view");
9242 "Active Movie Clip",
9243 "Active Movie Clip that can be used by motion tracking constraints "
9244 "or as a camera's background image");
9252 prop,
"View Settings",
"Color management settings applied on image before saving");
9258 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
9264 prop,
"Sequencer Color Space Settings",
"Settings of color space sequencer is working in");
9281 "Scene root collection that owns all the objects and other collections "
9282 "instantiated in the scene");
Functionality to interact with keying sets.
struct KeyingSet * BKE_keyingset_add(struct ListBase *list, const char idname[], const char name[], short flag, short keyingflag)
void BKE_rotMode_change_values(float quat[4], float eul[3], float axis[3], float *angle, short oldMode, short newMode)
void BKE_brush_scale_size(int *r_brush_size, float new_unprojected_radius, float old_unprojected_radius)
void BKE_brush_scale_unprojected_radius(float *unprojected_radius, int new_brush_size, int old_brush_size)
#define FOREACH_COLLECTION_OBJECT_RECURSIVE_END
#define FOREACH_SCENE_OBJECT_END
void BKE_scene_objects_iterator_end(BLI_Iterator *iter)
#define FOREACH_COLLECTION_OBJECT_RECURSIVE_BEGIN(_collection, _object)
#define FOREACH_SCENE_OBJECT_BEGIN(scene, _instance)
void BKE_scene_objects_iterator_begin(BLI_Iterator *iter, void *data_in)
void BKE_scene_objects_iterator_next(BLI_Iterator *iter)
Depsgraph * CTX_data_depsgraph_pointer(const bContext *C)
Object * CTX_data_active_object(const bContext *C)
Scene * CTX_data_scene(const bContext *C)
Main * CTX_data_main(const bContext *C)
View3D * CTX_wm_view3d(const bContext *C)
ViewLayer * CTX_data_view_layer(const bContext *C)
BMEditMesh * BKE_editmesh_from_object(Object *ob)
Return the BMEditMesh for a given object.
struct FreestyleModuleConfig * BKE_freestyle_module_add(struct FreestyleConfig *config)
struct FreestyleLineSet * BKE_freestyle_lineset_add(struct Main *bmain, struct FreestyleConfig *config, const char *name)
struct FreestyleSettings FreestyleSettings
short BKE_freestyle_lineset_get_active_index(struct FreestyleConfig *config)
bool BKE_freestyle_lineset_delete(struct FreestyleConfig *config, struct FreestyleLineSet *lineset)
struct FreestyleLineSet * BKE_freestyle_lineset_get_active(struct FreestyleConfig *config)
void BKE_freestyle_lineset_set_active_index(struct FreestyleConfig *config, short index)
bool BKE_freestyle_module_delete(struct FreestyleConfig *config, struct FreestyleModuleConfig *module_conf)
ImBuf * BKE_image_acquire_ibuf(Image *ima, ImageUser *iuser, void **r_lock)
void BKE_image_release_ibuf(Image *ima, ImBuf *ibuf, void *lock)
bool BKE_image_is_stereo(const Image *ima)
void BKE_image_signal(Main *bmain, Image *ima, ImageUser *iuser, int signal)
void BKE_view_layer_rename_lightgroup(Scene *scene, ViewLayer *view_layer, ViewLayerLightgroup *lightgroup, const char *name)
ViewLayer * BKE_view_layer_find_with_aov(Scene *scene, ViewLayerAOV *aov)
void BKE_view_layer_synced_ensure(const Scene *scene, ViewLayer *view_layer)
void BKE_view_layer_verify_aov(RenderEngine *engine, Scene *scene, ViewLayer *view_layer)
ViewLayer * BKE_view_layer_find_with_lightgroup(Scene *scene, ViewLayerLightgroup *lightgroup)
ViewLayer * BKE_view_layer_add(Scene *scene, const char *name, ViewLayer *view_layer_source, int type)
Object * BKE_view_layer_active_object_get(const ViewLayer *view_layer)
void BKE_view_layer_rename(Main *bmain, Scene *scene, ViewLayer *view_layer, const char *newname)
blender::Vector< Object * > BKE_view_layer_array_from_objects_in_edit_mode_unique_data(const Scene *scene, ViewLayer *view_layer, const View3D *v3d)
void id_lib_extern(ID *id)
ID * BKE_id_owner_get(ID *id, const bool debug_relationship_assert=true)
void BKE_main_id_tag_listbase(ListBase *lb, int tag, bool value)
bool BKE_id_is_in_global_main(ID *id)
void BKE_main_ensure_invariants(Main &bmain, std::optional< blender::Span< ID * > > modified_ids=std::nullopt)
Mesh * BKE_mesh_from_object(Object *ob)
#define CMP_NODE_OUTPUT_FILE
Paint * BKE_paint_get_active(Scene *sce, ViewLayer *view_layer)
Brush * BKE_paint_brush(Paint *paint)
void BKE_paint_invalidate_overlay_all()
int BKE_ptcache_object_reset(struct Scene *scene, struct Object *ob, int mode)
#define PTCACHE_RESET_DEPSGRAPH
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
void BKE_report(ReportList *reports, eReportType type, const char *message)
bool BKE_scene_has_view_layer(const Scene *scene, const ViewLayer *layer)
int BKE_render_num_threads(const RenderData *r)
#define SETLOOPER_SET_ONLY(_sce_basis, _sce_iter, _base)
TransformOrientation * BKE_scene_transform_orientation_find(const Scene *scene, int index)
int BKE_scene_orientation_slot_get_index(const TransformOrientationSlot *orient_slot)
bool BKE_scene_use_spherical_stereo(Scene *scene)
void BKE_scene_orientation_slot_set_index(TransformOrientationSlot *orient_slot, int orientation)
bool BKE_scene_remove_render_view(Scene *scene, SceneRenderView *srv)
SceneRenderView * BKE_scene_add_render_view(Scene *sce, const char *name)
float BKE_scene_frame_to_ctime(const Scene *scene, int frame)
int BKE_unit_base_of_type_get(int system, int type)
const char * BKE_unit_identifier_get(const void *usys_pt, int index)
bool BKE_unit_is_suppressed(const void *usys_pt, int index)
void BKE_unit_system_get(int system, int type, const void **r_usys_pt, int *r_len)
const char * BKE_unit_display_name_get(const void *usys_pt, int index)
#define BLI_assert_unreachable()
int BLI_findindex(const ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void * BLI_findlink(const ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
#define LISTBASE_FOREACH(type, var, list)
bool BLI_listbase_move_index(ListBase *listbase, int from, int to) ATTR_NONNULL()
BLI_INLINE bool BLI_listbase_is_empty(const ListBase *lb)
void void BLI_freelistN(ListBase *listbase) ATTR_NONNULL(1)
void BLI_addtail(ListBase *listbase, void *vlink) ATTR_NONNULL(1)
bool BLI_remlink_safe(ListBase *listbase, void *vlink) ATTR_NONNULL(1)
int BLI_listbase_count(const ListBase *listbase) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
MINLINE int max_ii(int a, int b)
void normalize_m4_m4(float rmat[4][4], const float mat[4][4]) ATTR_NONNULL()
void copy_m4_m4(float m1[4][4], const float m2[4][4])
MINLINE void copy_v3_v3(float r[3], const float a[3])
size_t BLI_str_escape(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, size_t dst_maxncpy) ATTR_NONNULL(1
#define STRNCPY_UTF8(dst, src)
#define BLI_STR_UTF8_MULTIPLICATION_SIGN
void BLI_uniquename(const struct ListBase *list, void *vlink, const char *defname, char delim, int name_offset, size_t name_maxncpy) ATTR_NONNULL(1
int BLI_system_num_threads_override_get(void)
#define BLENDER_MAX_THREADS
#define BLT_I18NCONTEXT_EDITOR_VIEW3D
#define BLT_I18NCONTEXT_ID_WORLD
#define BLT_I18NCONTEXT_ID_ACTION
#define BLT_I18NCONTEXT_ID_CURVES
#define BLT_I18NCONTEXT_ID_CURVE_LEGACY
#define BLT_I18NCONTEXT_ID_SOUND
#define BLT_I18NCONTEXT_UNIT
#define BLT_I18NCONTEXT_ID_SCENE
void DEG_id_tag_update(ID *id, unsigned int flags)
void DEG_relations_tag_update(Main *bmain)
T * DEG_get_evaluated(const Depsgraph *depsgraph, T *id)
@ ID_RECALC_AUDIO_LISTENER
@ ID_RECALC_SEQUENCER_STRIPS
@ BRUSH_COLOR_JITTER_USE_VAL_AT_STROKE
@ BRUSH_COLOR_JITTER_USE_HUE_AT_STROKE
@ BRUSH_COLOR_JITTER_USE_SAT_AT_STROKE
@ BRUSH_COLOR_JITTER_USE_SAT_RAND_PRESS
@ BRUSH_COLOR_JITTER_USE_VAL_RAND_PRESS
@ BRUSH_COLOR_JITTER_USE_HUE_RAND_PRESS
#define MAX_BRUSH_PIXEL_RADIUS
@ FREESTYLE_SEL_VISIBILITY
@ FREESTYLE_SEL_EDGE_TYPES
@ FREESTYLE_SEL_IMAGE_BORDER
@ FREESTYLE_SEL_FACE_MARK
@ FREESTYLE_LINESET_FE_AND
@ FREESTYLE_LINESET_ENABLED
@ FREESTYLE_LINESET_FM_NOT
@ FREESTYLE_LINESET_FE_NOT
@ FREESTYLE_LINESET_FM_BOTH
@ FREESTYLE_LINESET_GR_NOT
@ FREESTYLE_CONTROL_EDITOR_MODE
@ FREESTYLE_CONTROL_SCRIPT_MODE
@ FREESTYLE_FACE_SMOOTHNESS_FLAG
@ FREESTYLE_MATERIAL_BOUNDARIES_FLAG
@ FREESTYLE_RIDGES_AND_VALLEYS_FLAG
@ FREESTYLE_VIEW_MAP_CACHE
@ FREESTYLE_SUGGESTIVE_CONTOURS_FLAG
@ FREESTYLE_AS_RENDER_PASS
@ FREESTYLE_FE_SILHOUETTE
@ FREESTYLE_FE_RIDGE_VALLEY
@ FREESTYLE_FE_EXTERNAL_CONTOUR
@ FREESTYLE_FE_SUGGESTIVE_CONTOUR
@ FREESTYLE_FE_MATERIAL_BOUNDARY
@ VIEW_LAYER_CRYPTOMATTE_MATERIAL
@ VIEW_LAYER_CRYPTOMATTE_ASSET
@ VIEW_LAYER_CRYPTOMATTE_ACCURATE
@ VIEW_LAYER_CRYPTOMATTE_OBJECT
@ EEVEE_RENDER_PASS_VOLUME_LIGHT
@ EEVEE_RENDER_PASS_TRANSPARENT
@ eModifierType_ParticleSystem
Object is a sort of wrapper for general info.
#define OB_TYPE_IS_GEOMETRY(_type)
@ UNIFIED_PAINT_COLOR_JITTER
@ UNIFIED_PAINT_BRUSH_LOCK_SIZE
@ UNIFIED_PAINT_INPUT_SAMPLES
@ WT_VGROUP_BONE_DEFORM_OFF
@ R_IMF_JP2_FLAG_CINE_PRESET
@ SEQ_SNAP_CURRENT_FRAME_TO_STRIPS
@ SCE_COMPOSITOR_DENOISE_FAST
@ SCE_COMPOSITOR_DENOISE_BALANCED
@ SCE_COMPOSITOR_DENOISE_HIGH
@ SCE_COMPOSITOR_PRECISION_FULL
@ SCE_COMPOSITOR_PRECISION_AUTO
@ UVCALC_TRANSFORM_CORRECT
@ UVCALC_TRANSFORM_CORRECT_KEEP_CONNECTED
@ FFMPEG_CODEC_ID_MPEG1VIDEO
@ FFMPEG_CODEC_ID_PCM_S16LE
@ FFMPEG_CODEC_ID_HUFFYUV
@ FFMPEG_CODEC_ID_DVVIDEO
@ FFMPEG_CODEC_ID_MPEG2VIDEO
@ RAYTRACE_EEVEE_METHOD_SCREEN
@ RAYTRACE_EEVEE_METHOD_PROBE
@ CURVE_PAINT_PROJECT_CURSOR
@ CURVE_PAINT_PROJECT_SURFACE
@ FFMPEG_AUTOSPLIT_OUTPUT
@ FFMPEG_USE_MAX_B_FRAMES
@ R_IMF_IMTYPE_MULTILAYER
@ SEQ_SNAP_TO_FRAME_RANGE
@ SEQ_SNAP_TO_PREVIEW_CENTER
@ SEQ_SNAP_TO_STRIPS_PREVIEW
@ SEQ_SNAP_TO_PREVIEW_BORDERS
@ SEQ_SNAP_TO_CURRENT_FRAME
@ R_IMF_COLOR_MANAGEMENT_FOLLOW_SCENE
@ R_IMF_COLOR_MANAGEMENT_OVERRIDE
@ R_BAKE_TARGET_VERTEX_COLORS
@ R_BAKE_TARGET_IMAGE_TEXTURES
@ S3D_ANAGLYPH_YELLOWBLUE
@ S3D_ANAGLYPH_GREENMAGENTA
@ SCE_EEVEE_FAST_GI_ENABLED
@ SCE_EEVEE_SHADOW_ENABLED
@ SCE_EEVEE_VOLUME_CUSTOM_RANGE
@ SCE_EEVEE_VOLUMETRIC_SHADOWS
@ SCE_EEVEE_SHADOW_JITTERED_VIEWPORT
@ SCE_EEVEE_TAA_REPROJECTION
@ SCE_CUSTOM_SIMULATION_RANGE
@ OB_DRAW_GROUPUSER_ACTIVE
@ SCER_LOCK_FRAME_SELECTION
@ R_LINE_THICKNESS_ABSOLUTE
@ R_LINE_THICKNESS_RELATIVE
@ S3D_SIDEBYSIDE_CROSSEYED
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_SURFACE
@ CURVE_PAINT_SURFACE_PLANE_VIEW
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_VIEW
#define PAINT_MAX_INPUT_SAMPLES
@ SCE_COMPOSITOR_DENOISE_DEVICE_GPU
@ SCE_COMPOSITOR_DENOISE_DEVICE_AUTO
@ SCE_COMPOSITOR_DENOISE_DEVICE_CPU
@ SCE_XFORM_SKIP_CHILDREN
@ RAYTRACE_EEVEE_USE_DENOISE
@ R_BAKE_VIEW_FROM_ABOVE_SURFACE
@ R_BAKE_VIEW_FROM_ACTIVE_CAMERA
@ GP_SCULPT_MASK_SELECTMODE_POINT
@ GP_SCULPT_MASK_SELECTMODE_STROKE
@ GP_SCULPT_MASK_SELECTMODE_SEGMENT
@ SCE_DISPLAY_AA_SAMPLES_32
@ SCE_DISPLAY_AA_SAMPLES_8
@ SCE_DISPLAY_AA_SAMPLES_11
@ SCE_DISPLAY_AA_SAMPLES_5
@ SCE_DISPLAY_AA_SAMPLES_16
@ GP_VERTEX_MASK_SELECTMODE_SEGMENT
@ GP_VERTEX_MASK_SELECTMODE_STROKE
@ GP_VERTEX_MASK_SELECTMODE_POINT
#define SCE_SNAP_TO_VERTEX
@ R_IMF_TIFF_CODEC_PACKBITS
@ R_IMF_TIFF_CODEC_DEFLATE
@ SCE_WORKSPACE_TOOL_DEFAULT
@ SCE_WORKSPACE_TOOL_FALLBACK
@ CURVE_PAINT_FIT_METHOD_REFIT
@ CURVE_PAINT_FIT_METHOD_SPLIT
@ S3D_INTERLACE_CHECKERBOARD
@ R_SEQ_OVERRIDE_SCENE_SETTINGS
@ GP_PROJECT_DEPTH_STROKE_ENDPOINTS
@ GP_PROJECT_DEPTH_STROKE
@ GP_PROJECT_DEPTH_STROKE_FIRST
@ GP_PROJECT_DEPTH_ONLY_SELECTED
@ SCE_SNAP_TO_INCLUDE_EDITED
@ SCE_SNAP_TO_INCLUDE_NONEDITED
@ SCE_SNAP_BACKFACE_CULLING
@ SCE_SNAP_KEEP_ON_SAME_OBJECT
@ SCE_SNAP_TO_ONLY_SELECTABLE
@ SIMPLIFY_GPENCIL_ON_PLAY
@ SIMPLIFY_GPENCIL_MODIFIER
@ SIMPLIFY_GPENCIL_ENABLE
@ FFM_PRORES_PROFILE_422_PROXY
@ FFM_PRORES_PROFILE_4444_XQ
@ FFM_PRORES_PROFILE_422_HQ
@ FFM_PRORES_PROFILE_4444
@ FFM_PRORES_PROFILE_422_LT
@ FFM_PRORES_PROFILE_422_STD
#define STEREO_RIGHT_NAME
@ GP_TOOL_FLAG_RETAIN_LAST
@ GP_TOOL_FLAG_THUMBNAIL_LIST
@ GP_TOOL_FLAG_PAINT_ONBACK
@ GP_TOOL_FLAG_AUTOMERGE_STROKE
@ GP_TOOL_FLAG_CREATE_WEIGHTS
@ GP_USE_MULTI_FRAME_EDITING
@ SCE_SNAP_TRANSFORM_MODE_SCALE
@ SCE_SNAP_TRANSFORM_MODE_ROTATE
@ SCE_SNAP_TRANSFORM_MODE_TRANSLATE
@ FFM_CHANNELS_SURROUND51
@ FFM_CHANNELS_SURROUND71
@ CURVE_PAINT_FLAG_DEPTH_STROKE_ENDPOINTS
@ CURVE_PAINT_FLAG_DEPTH_STROKE_OFFSET_ABS
@ CURVE_PAINT_FLAG_CORNERS_DETECT
@ CURVE_PAINT_FLAG_PRESSURE_RADIUS
@ CURVE_PAINT_FLAG_DEPTH_ONLY_SELECTED
#define USER_UNIT_ADAPTIVE
@ SCE_COMPOSITOR_DEVICE_GPU
@ SCE_COMPOSITOR_DEVICE_CPU
@ SCE_VIEWS_FORMAT_STEREO_3D
@ SCE_VIEWS_FORMAT_MULTIVIEW
@ SCE_SNAP_SOURCE_CLOSEST
@ R_BAKE_PASS_FILTER_DIFFUSE
@ R_BAKE_PASS_FILTER_NONE
@ R_BAKE_PASS_FILTER_COLOR
@ R_BAKE_PASS_FILTER_INDIRECT
@ R_BAKE_PASS_FILTER_DIRECT
@ R_BAKE_PASS_FILTER_GLOSSY
@ R_BAKE_PASS_FILTER_EMIT
@ R_BAKE_PASS_FILTER_TRANSM
@ SCE_PASS_SUBSURFACE_INDIRECT
@ SCE_PASS_SUBSURFACE_COLOR
@ SCE_PASS_DIFFUSE_DIRECT
@ SCE_PASS_GLOSSY_INDIRECT
@ SCE_PASS_TRANSM_INDIRECT
@ SCE_PASS_DIFFUSE_INDIRECT
@ SCE_PASS_SUBSURFACE_DIRECT
@ RAYTRACE_EEVEE_DENOISE_BILATERAL
@ RAYTRACE_EEVEE_DENOISE_SPATIAL
@ RAYTRACE_EEVEE_DENOISE_TEMPORAL
@ SCE_SNAP_INDIVIDUAL_NEAREST
@ SCE_SNAP_INDIVIDUAL_PROJECT
#define FRAMENUMBER_MIN_CLAMP(cfra)
@ AUTOKEY_FLAG_LAYERED_RECORD
@ AUTOKEY_FLAG_ONLYKEYINGSET
@ V3D_PLACE_ORIENT_DEFAULT
@ V3D_PLACE_ORIENT_SURFACE
@ V3D_AROUND_CENTER_BOUNDS
@ V3D_AROUND_CENTER_MEDIAN
@ V3D_AROUND_LOCAL_ORIGINS
@ V3D_PLACE_DEPTH_CURSOR_VIEW
@ V3D_PLACE_DEPTH_CURSOR_PLANE
@ V3D_PLACE_DEPTH_SURFACE
const char * ED_info_statistics_string(Main *bmain, Scene *scene, ViewLayer *view_layer)
void EDBM_selectmode_set(BMEditMesh *em, short selectmode)
void ED_node_composit_default(const bContext *C, Scene *scene)
void ED_render_engine_changed(Main *bmain, bool update_scene_data)
bool ED_scene_view_layer_delete(Main *bmain, Scene *scene, ViewLayer *layer, ReportList *reports) ATTR_NONNULL(1
void ED_uvedit_selectmode_clean_multi(bContext *C)
void ED_uvedit_sticky_selectmode_update(bContext *C)
void FRS_free_view_map_cache(void)
Read Guarded memory(de)allocation.
#define RE_BAKE_DISPLACEMENT
const EnumPropertyItem * rna_TransformOrientation_itemf(bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
#define RNA_ENUM_ITEM_SEPR
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
@ PROPOVERRIDE_NO_COMPARISON
@ PROP_VARIABLES_RENDER_OUTPUT
@ PROP_PATH_SUPPORTS_BLEND_RELATIVE
@ PROP_PATH_SUPPORTS_TEMPLATES
#define RNA_ENUM_ITEM_HEADING(name, description)
#define ND_SPACE_SEQUENCER
#define ND_RENDER_OPTIONS
#define ND_DRAW_RENDER_VIEWPORT
ListBase builtin_keyingsets
BMesh const char void * data
BPy_StructRNA * depsgraph
int ANIM_scene_get_keyingset_index(Scene *scene, KeyingSet *keyingset)
RenderEngineType * RE_engines_find(const char *idname)
RenderEngine * RE_engine_create(RenderEngineType *type)
void RE_engine_free(RenderEngine *engine)
DEG_id_tag_update_ex(cb_data->bmain, cb_data->owner_id, ID_RECALC_TAG_FOR_UNDO|ID_RECALC_SYNC_TO_EVAL)
void * MEM_callocN(size_t len, const char *str)
void MEM_freeN(void *vmemh)
bool MOV_codec_supports_alpha(IMB_Ffmpeg_Codec_ID codec_id, int ffmpeg_profile)
bool MOV_codec_supports_crf(IMB_Ffmpeg_Codec_ID codec_id)
KeyingSet * scene_get_active_keyingset(const Scene *scene)
void scene_simulation_states_reset(Scene &scene)
bool ensure_selection_domain(ToolSettings *ts, Object *object)
void sound_update_length(Main *bmain, Scene *scene)
void cache_cleanup(Scene *scene)
MatBase< float, 4, 4 > float4x4
void ntreeCompositUpdateRLayers(bNodeTree *ntree)
static struct PyModuleDef module
void rna_iterator_array_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, void *data, int itemsize, int length, bool free_ptr, IteratorSkipFunc skip)
void rna_iterator_listbase_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, ListBase *lb, IteratorSkipFunc skip)
PointerRNA RNA_pointer_create_with_parent(const PointerRNA &parent, StructRNA *type, void *data)
PointerRNA RNA_id_pointer_create(ID *id)
void rna_def_animdata_common(StructRNA *srna)
static const EnumPropertyItem curve_type_items[]
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_enum_items_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
void RNA_def_struct_name_property(StructRNA *srna, PropertyRNA *prop)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, const int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_property_pointer_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_struct_path_func(StructRNA *srna, const char *path)
void RNA_define_animate_sdna(bool animate)
void RNA_def_parameter_clear_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_property_float_default(PropertyRNA *prop, float value)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
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)
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_bitset_array_sdna(PropertyRNA *prop, const char *structname, const char *propname, const int64_t booleanbit, const int length)
void RNA_def_property_boolean_default(PropertyRNA *prop, bool value)
void RNA_def_property_boolean_funcs(PropertyRNA *prop, const char *get, const char *set)
void RNA_def_property_multi_array(PropertyRNA *prop, int dimension, const int length[])
void RNA_def_property_int_default(PropertyRNA *prop, int value)
void RNA_def_property_path_template_type(PropertyRNA *prop, PropertyPathTemplateType path_template_type)
const float rna_default_axis_angle[4]
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
void RNA_def_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)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_sdna(PropertyRNA *prop, const char *structname, const char *propname, const char *lengthpropname)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
const int rna_matrix_dimsize_4x4[]
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item)
void RNA_def_property_enum_bitflag_sdna(PropertyRNA *prop, const char *structname, const char *propname)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_enum_item_end(EnumPropertyItem **items, int *totitem)
void RNA_def_function_flag(FunctionRNA *func, int flag)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
void RNA_def_property_enum_sdna(PropertyRNA *prop, const char *structname, const char *propname)
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)
const int rna_matrix_dimsize_3x3[]
void RNA_def_struct_ui_icon(StructRNA *srna, int icon)
void RNA_def_property_translation_context(PropertyRNA *prop, const char *context)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_enum_item_add_separator(EnumPropertyItem **items, int *totitem)
void RNA_def_property_float_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_range(PropertyRNA *prop, double min, double max, double step, int precision)
void RNA_def_property_int_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_float_array_default(PropertyRNA *prop, const float *array)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, const int default_value, const int hardmin, const int hardmax, const char *ui_name, const char *ui_description, const int softmin, const int softmax)
void RNA_def_property_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_beztriple_keyframe_type_items[]
void rna_Scene_use_view_map_cache_update(Main *bmain, Scene *scene, PointerRNA *ptr)
void rna_FreestyleSettings_module_remove(ID *id, FreestyleSettings *config, ReportList *reports, PointerRNA *module_ptr)
PointerRNA rna_FreestyleSettings_active_lineset_get(PointerRNA *ptr)
int rna_FreestyleSettings_active_lineset_index_get(PointerRNA *ptr)
int rna_ViewLayer_active_aov_index_get(PointerRNA *ptr)
void rna_Scene_render_update(Main *bmain, Scene *scene, PointerRNA *ptr)
size_t rna_ViewLayer_path_buffer_get(const ViewLayer *view_layer, char *r_rna_path, const size_t rna_path_buffer_size)
void RNA_api_scene(StructRNA *srna)
void rna_Scene_freestyle_update(Main *bmain, Scene *scene, PointerRNA *ptr)
FreestyleLineSet * rna_FreestyleSettings_lineset_add(ID *id, FreestyleSettings *config, Main *bmain, const char *name)
void rna_ViewLayer_active_aov_index_set(PointerRNA *ptr, int value)
void rna_FreestyleLineSet_linestyle_set(PointerRNA *ptr, PointerRNA value, ReportList *reports)
void rna_FreestyleSettings_lineset_remove(ID *id, FreestyleSettings *config, ReportList *reports, PointerRNA *lineset_ptr)
void rna_ViewLayer_active_aov_index_range(PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax)
void rna_FreestyleSettings_active_lineset_index_range(PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax)
void RNA_api_scene_render(StructRNA *srna)
void rna_ViewLayer_override_update(Main *bmain, Scene *activescene, PointerRNA *ptr)
FreestyleModuleConfig * rna_FreestyleSettings_module_add(ID *id, FreestyleSettings *config)
PointerRNA rna_FreestyleLineSet_linestyle_get(PointerRNA *ptr)
void rna_ViewLayer_name_set(PointerRNA *ptr, const char *value)
std::optional< std::string > rna_ColorManagedDisplaySettings_path(const PointerRNA *ptr)
std::optional< std::string > rna_ColorManagedInputColorspaceSettings_path(const PointerRNA *ptr)
int rna_ViewLayer_active_lightgroup_index_get(PointerRNA *ptr)
void rna_ViewLayer_active_lightgroup_index_range(PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax)
std::optional< std::string > rna_ColorManagedViewSettings_path(const PointerRNA *ptr)
void rna_FreestyleSettings_active_lineset_index_set(PointerRNA *ptr, int value)
void rna_ViewLayer_active_lightgroup_index_set(PointerRNA *ptr, int value)
void rna_ViewLayer_pass_update(Main *bmain, Scene *activescene, PointerRNA *ptr)
const EnumPropertyItem rna_enum_axis_xyz_items[]
const EnumPropertyItem rna_enum_object_rotation_mode_items[]
const EnumPropertyItem rna_enum_object_axis_items[]
const EnumPropertyItem rna_enum_dummy_DEFAULT_items[]
const EnumPropertyItem rna_enum_mesh_select_mode_uv_items[]
static void rna_def_raytrace_eevee(BlenderRNA *brna)
static void rna_def_view3d_cursor(BlenderRNA *brna)
static void rna_def_scene_ffmpeg_settings(BlenderRNA *brna)
void rna_def_freestyle_settings(BlenderRNA *brna)
const EnumPropertyItem rna_enum_image_color_depth_items[]
const EnumPropertyItem rna_enum_image_type_items[]
static void rna_def_scene_keying_sets_all(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_display_safe_areas(BlenderRNA *brna)
const EnumPropertyItem rna_enum_proportional_falloff_curve_only_items[]
static void rna_def_timeline_markers(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_gpencil(BlenderRNA *brna)
static const EnumPropertyItem plane_depth_items[]
static const EnumPropertyItem eevee_resolution_scale_items[]
static const EnumPropertyItem plane_orientation_items[]
const EnumPropertyItem rna_enum_views_format_multilayer_items[]
const EnumPropertyItem rna_enum_mesh_select_mode_items[]
static void rna_def_curve_paint_settings(BlenderRNA *brna)
const EnumPropertyItem rna_enum_snap_playhead_element_items[]
static void rna_def_scene_keying_sets(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_display(BlenderRNA *brna)
static void rna_def_tool_settings(BlenderRNA *brna)
void rna_def_view_layer_common(BlenderRNA *brna, StructRNA *srna, const bool scene)
static void rna_def_freestyle_linesets(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_stereo3d_display_items[]
const EnumPropertyItem rna_enum_normal_swizzle_items[]
static const EnumPropertyItem rna_enum_scene_display_aa_methods[]
static void rna_def_scene_objects(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_eevee(BlenderRNA *brna)
static void rna_def_view_layer_lightgroups(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem snap_uv_element_items[]
#define R_IMF_VIEWS_ENUM_MV
static void rna_def_selected_uv_element(BlenderRNA *brna)
static void rna_def_transform_orientation_slot(BlenderRNA *brna)
const EnumPropertyItem rna_enum_grease_pencil_selectmode_items[]
const EnumPropertyItem rna_enum_proportional_falloff_items[]
void RNA_def_scene(BlenderRNA *brna)
const EnumPropertyItem rna_enum_snap_animation_element_items[]
static void rna_def_gpencil_interpolate(BlenderRNA *brna)
static void rna_def_scene_hydra(BlenderRNA *brna)
static void rna_def_bake_data(BlenderRNA *brna)
static void rna_def_sequencer_tool_settings(BlenderRNA *brna)
#define R_IMF_VIEWS_ENUM_IND
static const EnumPropertyItem rna_enum_snap_element_base_items[]
static void rna_def_view_layer_lightgroup(BlenderRNA *brna)
static void rna_def_transform_orientation(BlenderRNA *brna)
static void rna_def_scene_image_format_data(BlenderRNA *brna)
const EnumPropertyItem rna_enum_bake_pass_filter_type_items[]
static void rna_def_statvis(BlenderRNA *brna)
const EnumPropertyItem rna_enum_snap_source_items[]
const EnumPropertyItem rna_enum_snap_element_items[]
const EnumPropertyItem rna_enum_bake_save_mode_items[]
static void rna_def_scene_render_view(BlenderRNA *brna)
static void rna_def_view_layer_aovs(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem snap_to_items[]
static const EnumPropertyItem rna_enum_view_layer_aov_type_items[]
static const EnumPropertyItem rna_enum_bake_view_from_items[]
const EnumPropertyItem rna_enum_bake_margin_type_items[]
static void rna_def_view_layer_eevee(BlenderRNA *brna)
const EnumPropertyItem rna_enum_bake_target_items[]
static void rna_def_freestyle_modules(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_curve_fit_method_items[]
const EnumPropertyItem rna_enum_views_format_items[]
const EnumPropertyItem rna_enum_transform_pivot_full_items[]
static void rna_def_render_views(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_normal_space_items[]
static void rna_def_unified_paint_settings(BlenderRNA *brna)
const EnumPropertyItem rna_enum_views_format_multiview_items[]
#define IMAGE_TYPE_ITEMS_IMAGE_ONLY
const EnumPropertyItem rna_enum_transform_orientation_items[]
const EnumPropertyItem rna_enum_stereo3d_anaglyph_type_items[]
const EnumPropertyItem rna_enum_stereo3d_interlace_type_items[]
#define R_IMF_VIEWS_ENUM_S3D
#define RNA_SNAP_ELEMENTS_BASE
static const EnumPropertyItem * rna_enum_snap_element_individual_items
static void rna_def_view_layer_aov(BlenderRNA *brna)
static void rna_def_unit_settings(BlenderRNA *brna)
static void rna_def_image_format_stereo3d_format(BlenderRNA *brna)
const EnumPropertyItem rna_enum_image_color_mode_items[]
static void rna_def_scene_render_data(BlenderRNA *brna)
static void rna_def_view_layers(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_shading_type_items[]
void RE_FreePersistentData(const Scene *scene)
struct ImageFormatData im_format
union CollectionPropertyIterator::@251313231040372062304153161337117373343066046335 internal
ListBaseIterator listbase
int ffmpeg_prores_profile
MeshRuntimeHandle * runtime
struct ModifierData * next
struct Collection * instance_collection
ObjectRuntimeHandle * runtime
struct ParticleSystem * next
struct ImageFormatData im_format
struct FFMpegCodecData ffcodecdata
struct RenderEngineType * next
void(* update_render_passes)(struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer)
struct bNodeTree * nodetree
TransformOrientationSlot orientation_slots[4]
ListBase transform_spaces
float rotation_quaternion[4]
ViewLayerLightgroup * active_lightgroup
ViewLayerAOV * active_aov
void WM_main_add_notifier(uint type, void *reference)
ViewLayer * WM_window_get_active_view_layer(const wmWindow *win)
Scene * WM_window_get_active_scene(const wmWindow *win)
void WM_windows_scene_data_sync(const ListBase *win_lb, Scene *scene)