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_VERT,
"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 {0,
nullptr, 0,
nullptr,
nullptr},
139#define RNA_SNAP_ELEMENTS_BASE \
140 {SCE_SNAP_TO_INCREMENT, "INCREMENT", ICON_SNAP_INCREMENT, "Increment", "Snap to increments"}, \
141 {SCE_SNAP_TO_GRID, "GRID", ICON_SNAP_GRID, "Grid", "Snap to grid"}, \
142 {SCE_SNAP_TO_VERTEX, "VERTEX", ICON_SNAP_VERTEX, "Vertex", "Snap to vertices"}, \
143 {SCE_SNAP_TO_EDGE, "EDGE", ICON_SNAP_EDGE, "Edge", "Snap to edges"}, \
144 {SCE_SNAP_TO_FACE, "FACE", ICON_SNAP_FACE, "Face", "Snap by projecting onto faces"}, \
145 {SCE_SNAP_TO_VOLUME, "VOLUME", ICON_SNAP_VOLUME, "Volume", "Snap to volume"}, \
146 {SCE_SNAP_TO_EDGE_MIDPOINT, "EDGE_MIDPOINT", ICON_SNAP_MIDPOINT, "Edge Center", "Snap to the middle of edges"}, \
147 {SCE_SNAP_TO_EDGE_PERPENDICULAR, "EDGE_PERPENDICULAR", ICON_SNAP_PERPENDICULAR, "Edge Perpendicular", "Snap to the nearest point on an edge"}
156 "Snap by projecting onto faces"},
159 ICON_SNAP_FACE_NEAREST,
161 "Snap to nearest point on faces"},
162 {0,
nullptr, 0,
nullptr,
nullptr},
167 {0,
nullptr, 0,
nullptr,
nullptr},
180 {0,
nullptr, 0,
nullptr,
nullptr},
189 "Snap to increments of grid"},
192 {0,
nullptr, 0,
nullptr,
nullptr},
201 {0,
nullptr, 0,
nullptr,
nullptr},
209 "Scene will be rendering without any anti-aliasing"},
213 "Single Pass Anti-Aliasing",
214 "Scene will be rendered using a single pass anti-aliasing method (FXAA)"},
219 "Scene will be rendered using 5 anti-aliasing samples"},
224 "Scene will be rendered using 8 anti-aliasing samples"},
229 "Scene will be rendered using 11 anti-aliasing samples"},
234 "Scene will be rendered using 16 anti-aliasing samples"},
239 "Scene will be rendered using 32 anti-aliasing samples"},
240 {0,
nullptr, 0,
nullptr,
nullptr},
249 "Incrementally refit the curve (high quality)"},
254 "Split the curve until the tolerance is met (fast)"},
255 {0,
nullptr, 0,
nullptr,
nullptr},
258#define MEDIA_TYPE_ENUM_IMAGE {MEDIA_TYPE_IMAGE, "IMAGE", ICON_NONE, "Image", ""}
259#define MEDIA_TYPE_ENUM_MULTI_LAYER_IMAGE \
260 {MEDIA_TYPE_MULTI_LAYER_IMAGE, "MULTI_LAYER_IMAGE", ICON_NONE, "Multi-Layer EXR", ""}
261#define MEDIA_TYPE_ENUM_VIDEO {MEDIA_TYPE_VIDEO, "VIDEO", ICON_NONE, "Video", ""}
267 {0,
nullptr, 0,
nullptr,
nullptr},
274 {0,
nullptr, 0,
nullptr,
nullptr},
282#define R_IMF_ENUM_BMP \
283 {R_IMF_IMTYPE_BMP, "BMP", 0, "Bitmap (.bmp)", "Output image in bitmap format"},
284#define R_IMF_ENUM_IRIS \
285 {R_IMF_IMTYPE_IRIS, "IRIS", 0, "Iris (.rgb)", "Output image in SGI IRIS format"},
286#define R_IMF_ENUM_PNG {R_IMF_IMTYPE_PNG, "PNG", 0, "PNG (.png)", "Output image in PNG format"},
287#define R_IMF_ENUM_JPEG \
288 {R_IMF_IMTYPE_JPEG90, "JPEG", 0, "JPEG (.jpg)", "Output image in JPEG format"},
289#define R_IMF_ENUM_TAGA \
290 {R_IMF_IMTYPE_TARGA, "TARGA", 0, "Targa (.tga)", "Output image in Targa format"},
291#define R_IMF_ENUM_TAGA_RAW \
292 {R_IMF_IMTYPE_RAWTGA, \
295 "Targa Raw (.tga)", \
296 "Output image in uncompressed Targa format"},
299# define R_IMF_ENUM_DDS \
300 {R_IMF_IMTYPE_DDS, "DDS", 0, "DirectDraw Surface (.dds)", "Output image in DDS format"},
303#ifdef WITH_IMAGE_OPENJPEG
304# define R_IMF_ENUM_JPEG2K \
305 {R_IMF_IMTYPE_JP2, "JPEG2000", 0, "JPEG 2000 (.jp2)", "Output image in JPEG 2000 format"},
307# define R_IMF_ENUM_JPEG2K
310#ifdef WITH_IMAGE_CINEON
311# define R_IMF_ENUM_CINEON \
312 {R_IMF_IMTYPE_CINEON, "CINEON", 0, "Cineon (.cin)", "Output image in Cineon format"},
313# define R_IMF_ENUM_DPX {R_IMF_IMTYPE_DPX, "DPX", 0, "DPX (.dpx)", "Output image in DPX format"},
315# define R_IMF_ENUM_CINEON
316# define R_IMF_ENUM_DPX
319#ifdef WITH_IMAGE_OPENEXR
320# define R_IMF_ENUM_EXR_MULTILAYER \
321 {R_IMF_IMTYPE_MULTILAYER, \
322 "OPEN_EXR_MULTILAYER", \
324 "OpenEXR MultiLayer (.exr)", \
325 "Output image in multilayer OpenEXR format"},
326# define R_IMF_ENUM_EXR \
327 {R_IMF_IMTYPE_OPENEXR, "OPEN_EXR", 0, "OpenEXR (.exr)", "Output image in OpenEXR format"},
329# define R_IMF_ENUM_EXR_MULTILAYER
330# define R_IMF_ENUM_EXR
333#define R_IMF_ENUM_HDR \
334 {R_IMF_IMTYPE_RADHDR, "HDR", 0, "Radiance HDR (.hdr)", "Output image in Radiance HDR format"},
336#define R_IMF_ENUM_TIFF \
337 {R_IMF_IMTYPE_TIFF, "TIFF", 0, "TIFF (.tif)", "Output image in TIFF format"},
339#ifdef WITH_IMAGE_WEBP
340# define R_IMF_ENUM_WEBP \
341 {R_IMF_IMTYPE_WEBP, "WEBP", 0, "WebP (.webp)", "Output image in WebP format"},
343# define R_IMF_ENUM_WEBP
347# define R_IMF_ENUM_FFMPEG {R_IMF_IMTYPE_FFMPEG, "FFMPEG", ICON_FILE_MOVIE, "FFmpeg Video", ""},
349# define R_IMF_ENUM_FFMPEG
352#define IMAGE_TYPE_ITEMS_IMAGE \
358 RNA_ENUM_ITEM_SEPR, \
359 R_IMF_ENUM_BMP R_IMF_ENUM_CINEON R_IMF_ENUM_DPX R_IMF_ENUM_IRIS R_IMF_ENUM_JPEG2K \
360 R_IMF_ENUM_HDR R_IMF_ENUM_TAGA R_IMF_ENUM_TAGA_RAW R_IMF_ENUM_TIFF
362#define IMAGE_TYPE_ITEMS_MULTI_LAYER_IMAGE R_IMF_ENUM_EXR_MULTILAYER
364#define IMAGE_TYPE_ITEMS_VIDEO R_IMF_ENUM_FFMPEG
370 {0,
nullptr, 0,
nullptr,
nullptr},
376 {0,
nullptr, 0,
nullptr,
nullptr},
382 {0,
nullptr, 0,
nullptr,
nullptr},
389 {0,
nullptr, 0,
nullptr,
nullptr},
397 "Images get saved in 8-bit grayscale (only PNG, JPEG, TGA, TIF)"},
398 {
R_IMF_PLANES_RGB,
"RGB", 0,
"RGB",
"Images are saved with RGB (color) data"},
403 "Images are saved with RGB and Alpha data (if supported)"},
404 {0,
nullptr, 0,
nullptr,
nullptr},
408# define IMAGE_COLOR_MODE_BW rna_enum_image_color_mode_items[0]
409# define IMAGE_COLOR_MODE_RGB rna_enum_image_color_mode_items[1]
410# define IMAGE_COLOR_MODE_RGBA rna_enum_image_color_mode_items[2]
421 {0,
nullptr, 0,
nullptr,
nullptr},
427 {0,
nullptr, 0,
nullptr,
nullptr},
437 {0,
nullptr, 0,
nullptr,
nullptr},
445 "Use pixels from adjacent faces across UV seams"},
446 {
R_BAKE_EXTEND,
"EXTEND", 0,
"Extend",
"Extend border pixels outwards"},
447 {0,
nullptr, 0,
nullptr,
nullptr},
455 "Bake to image data-blocks associated with active image texture nodes in materials"},
459 "Active Color Attribute",
460 "Bake to the active color attribute on meshes"},
461 {0,
nullptr, 0,
nullptr,
nullptr},
469 "Save the baking map in an internal image data-block"},
471 {0,
nullptr, 0,
nullptr,
nullptr},
479 "Cast rays from above the surface"},
484 "Use the active camera's position to cast rays"},
485 {0,
nullptr, 0,
nullptr,
nullptr},
488#define R_IMF_VIEWS_ENUM_IND \
489 {R_IMF_VIEWS_INDIVIDUAL, \
493 "Individual files for each view with the prefix as defined by the scene views"},
494#define R_IMF_VIEWS_ENUM_S3D \
495 {R_IMF_VIEWS_STEREO_3D, "STEREO_3D", 0, "Stereo 3D", "Single file with an encoded stereo pair"},
496#define R_IMF_VIEWS_ENUM_MV \
497 {R_IMF_VIEWS_MULTIVIEW, "MULTIVIEW", 0, "Multi-View", "Single file with all the views"},
511#undef R_IMF_VIEWS_ENUM_IND
512#undef R_IMF_VIEWS_ENUM_S3D
513#undef R_IMF_VIEWS_ENUM_MV
520 "Render views for left and right eyes as two differently filtered colors in a single image "
521 "(anaglyph glasses are required)"},
526 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
532 "Render alternate eyes (also known as page flip, quad buffer support in the graphic card is "
538 "Render views for left and right eyes side-by-side"},
543 "Render views for left and right eyes one above another"},
544 {0,
nullptr, 0,
nullptr,
nullptr},
551 {0,
nullptr, 0,
nullptr,
nullptr},
558 {0,
nullptr, 0,
nullptr,
nullptr},
570 {0,
nullptr, 0,
nullptr,
nullptr},
576 {0,
nullptr, 0,
nullptr,
nullptr},
581 "BOUNDING_BOX_CENTER",
583 "Bounding Box Center",
584 "Pivot around bounding box center of selected object(s)"},
585 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"3D Cursor",
"Pivot around the 3D cursor"},
587 "INDIVIDUAL_ORIGINS",
588 ICON_PIVOT_INDIVIDUAL,
589 "Individual Origins",
590 "Pivot around each object's own origin"},
595 "Pivot around the median point of selected objects"},
600 "Pivot around active object"},
601 {0,
nullptr, 0,
nullptr,
nullptr},
608 ICON_ORIENTATION_GLOBAL,
610 "Align the transformation axes to world space"},
613 ICON_ORIENTATION_LOCAL,
615 "Align the transformation axes to the selected objects' local space"},
618 ICON_ORIENTATION_NORMAL,
620 "Align the transformation axes to average normal of selected elements "
621 "(bone Y axis for pose mode)"},
624 ICON_ORIENTATION_GIMBAL,
626 "Align each axis to the Euler rotation axis as used for input"},
629 ICON_ORIENTATION_VIEW,
631 "Align the transformation axes to the window"},
634 ICON_ORIENTATION_CURSOR,
636 "Align the transformation axes to the 3D cursor"},
639 ICON_ORIENTATION_PARENT,
641 "Align the transformation axes to the object's parent space"},
643 {0,
nullptr, 0,
nullptr,
nullptr},
651 "Start placing on the surface, using the 3D cursor position as a fallback"},
656 "Start placement using a point projected onto the orientation axis "
657 "at the 3D cursor position"},
662 "Start placement using a point projected onto the view plane at the 3D cursor position"},
663 {0,
nullptr, 0,
nullptr,
nullptr},
671 "Use the surface normal (using the transform orientation as a fallback)"},
674 ICON_ORIENTATION_GLOBAL,
676 "Use the current transform orientation"},
677 {0,
nullptr, 0,
nullptr,
nullptr},
682 {
SCE_SNAP_TO_NONE,
"DEFAULT", 0,
"Default",
"Use the current snap settings"},
683 {0,
nullptr, 0,
nullptr,
nullptr},
691 ICON_GP_SELECT_BETWEEN_STROKES,
693 "Select all stroke points between other strokes"},
694 {0,
nullptr, 0,
nullptr,
nullptr},
698 {1,
"1", 0,
"1:1",
"Full resolution"},
699 {2,
"2", 0,
"1:2",
"Render this effect at 50% render resolution"},
700 {4,
"4", 0,
"1:4",
"Render this effect at 25% render resolution"},
701 {8,
"8", 0,
"1:8",
"Render this effect at 12.5% render resolution"},
702 {16,
"16", 0,
"1:16",
"Render this effect at 6.25% render resolution"},
703 {0,
nullptr, 0,
nullptr,
nullptr},
710# include <fmt/format.h>
782# ifdef WITH_FREESTYLE
803static void rna_ToolSettings_snap_mode_set(
PointerRNA *
ptr,
int value)
811static void rna_ToolSettings_snap_uv_mode_set(
PointerRNA *
ptr,
int value)
916 iter->valid = ((
BLI_Iterator *)iter->internal.custom)->valid;
945 for (nested_set = set; nested_set; nested_set = nested_set->
set) {
946 if (nested_set == scene) {
950 if (nested_set->
set == set) {
965 if (scene->set !=
nullptr) {
1006static const char *rna_Scene_statistics_string_get(
Scene *scene,
1014 "View Layer '%s' not found in scene '%s'",
1029static void rna_Scene_frame_current_set(
PointerRNA *
ptr,
int value)
1035 data->r.cfra = value;
1044static void rna_Scene_frame_float_set(
PointerRNA *
ptr,
float value)
1049 data->r.cfra = int(value);
1050 data->r.subframe = value -
data->r.cfra;
1053static float rna_Scene_frame_current_final_get(
PointerRNA *
ptr)
1060static void rna_Scene_start_frame_set(
PointerRNA *
ptr,
int value)
1065 data->r.sfra = value;
1067 if (value >
data->r.efra) {
1072static void rna_Scene_end_frame_set(
PointerRNA *
ptr,
int value)
1076 data->r.efra = value;
1078 if (
data->r.sfra > value) {
1083static void rna_Scene_use_preview_range_set(
PointerRNA *
ptr,
bool value)
1089 if ((
data->r.psfra ==
data->r.pefra) && (
data->r.psfra == 0)) {
1101static void rna_Scene_preview_range_start_frame_set(
PointerRNA *
ptr,
int value)
1112 data->r.psfra = value;
1114 if (value >
data->r.pefra) {
1119static void rna_Scene_preview_range_end_frame_set(
PointerRNA *
ptr,
int value)
1130 data->r.pefra = value;
1132 if (
data->r.psfra > value) {
1137static void rna_Scene_show_subframe_update(
Main * ,
1142 scene->r.subframe = 0.0f;
1181static int rna_Scene_active_keying_set_index_get(
PointerRNA *
ptr)
1184 return scene->active_keyingset - 1;
1190static void rna_Scene_active_keying_set_index_set(
PointerRNA *
ptr,
int value)
1193 scene->active_keyingset = value + 1;
1207 if (scene->keyingsets.first) {
1226 internal->link = (
Link *)ks->next;
1229 iter->valid = (internal->link !=
nullptr);
1238static void rna_Scene_compositing_node_group_set(
PointerRNA *
ptr,
1246 reports,
RPT_ERROR,
"Node tree '%s' is not a compositing node group.", ntree->
id.
name + 2);
1256static std::optional<std::string> rna_SceneEEVEE_path(
const PointerRNA * )
1261static std::optional<std::string> rna_RaytraceEEVEE_path(
const PointerRNA * )
1263 return "eevee.ray_tracing_options";
1266static std::optional<std::string> rna_SceneGpencil_path(
const PointerRNA * )
1268 return "grease_pencil_settings";
1271static std::optional<std::string> rna_SceneHydra_path(
const PointerRNA * )
1294static std::optional<std::string> rna_RenderSettings_path(
const PointerRNA * )
1299static std::optional<std::string> rna_BakeSettings_path(
const PointerRNA * )
1301 return "render.bake";
1304static std::optional<std::string> rna_ImageFormatSettings_path(
1307 ID *
id =
ptr->owner_id;
1314 return "render.image_settings";
1317 return "render.bake.image_settings";
1319 return std::nullopt;
1324 for (
bNode *node : ntree->all_nodes()) {
1328 if (match(&storage.
format)) {
1329 char node_name_esc[
sizeof(node->name) * 2];
1330 BLI_str_escape(node_name_esc, node->name,
sizeof(node_name_esc));
1331 return fmt::format(
"nodes[\"{}\"].format", node_name_esc);
1336 if (match(&item.
format)) {
1337 char node_name_esc[
sizeof(node->name) * 2];
1338 BLI_str_escape(node_name_esc, node->name,
sizeof(node_name_esc));
1340 const std::string identifier = FileOutputItemsAccessor::socket_identifier_for_item(
1342 const std::string escaped_identifier =
BLI_str_escape(identifier.c_str());
1343 return fmt::format(
"nodes[\"{}\"].file_output_items[\"{}\"].format",
1345 escaped_identifier.c_str());
1351 return std::nullopt;
1354 return std::nullopt;
1358static std::optional<std::string> rna_ImageFormatSettings_path(
const PointerRNA *
ptr)
1367 std::optional<std::string> path = rna_ImageFormatSettings_path(
1370 return *path +
".display_settings";
1373 return "display_settings";
1376 return std::nullopt;
1382 std::optional<std::string> path = rna_ImageFormatSettings_path(
1385 return *path +
".view_settings";
1388 return "view_settings";
1390 return std::nullopt;
1396 std::optional<std::string> path = rna_ImageFormatSettings_path(
1399 return *path +
".linear_colorspace_settings";
1401 return std::nullopt;
1410static int rna_RenderSettings_threads_mode_get(
PointerRNA *
ptr)
1423static bool rna_RenderSettings_is_movie_format_get(
PointerRNA *
ptr)
1434 ID *
id =
ptr->owner_id;
1441 return rna_enum_media_type_image_items;
1447static void rna_ImageFormatSettings_media_type_set(
PointerRNA *
ptr,
int value)
1453static void rna_ImageFormatSettings_file_format_set(
PointerRNA *
ptr,
int value)
1466 return image_type_items;
1468 return multi_layer_image_type_items;
1470 return video_image_type_items;
1482 ID *
id =
ptr->owner_id;
1537 if (imf ==
nullptr) {
1542 const int is_float =
ELEM(
1570 tmp.
name =
N_(
"Float (Half)");
1573 "16-bit color channels. Data passes like Depth will still be saved using full "
1574 "32-bit precision.");
1586 tmp.
name =
N_(
"Float (Full)");
1608 if (imf ==
nullptr) {
1622# ifdef WITH_IMAGE_OPENEXR
1633 int i = 1, totitem = 0;
1635 if (imf->
depth == 16) {
1636 return rna_enum_exr_codec_items;
1655static bool rna_ImageFormatSettings_has_linear_colorspace_get(
PointerRNA *
ptr)
1661static void rna_ImageFormatSettings_color_management_set(
PointerRNA *
ptr,
int value)
1670 ID *owner_id =
ptr->owner_id;
1687 return ext_num ? strlen(ext_array[0]) : 0;
1690static void rna_SceneRender_file_ext_get(
PointerRNA *
ptr,
char *value)
1695 strcpy(value, ext_num ? ext_array[0] :
"");
1699static void rna_FFmpegSettings_lossless_output_set(
PointerRNA *
ptr,
bool value)
1713static int rna_RenderSettings_active_view_index_get(
PointerRNA *
ptr)
1719static void rna_RenderSettings_active_view_index_set(
PointerRNA *
ptr,
int value)
1725static void rna_RenderSettings_active_view_index_range(
1742static void rna_RenderSettings_active_view_set(
PointerRNA *
ptr,
1764static void rna_RenderView_remove(
1773 "Render view '%s' could not be removed from scene '%s'",
1784static void rna_RenderSettings_views_format_set(
PointerRNA *
ptr,
int value)
1798static void rna_RenderSettings_engine_set(
PointerRNA *
ptr,
int value)
1817 int a = 0, totitem = 0;
1852static void rna_Scene_update_render_engine(
Main *bmain)
1857static bool rna_RenderSettings_multiple_engines_get(
PointerRNA * )
1862static bool rna_RenderSettings_use_spherical_stereo_get(
PointerRNA *
ptr)
1930# ifdef WITH_FREESTYLE
1943static void rna_SceneRenderView_name_set(
PointerRNA *
ptr,
const char *value)
1950 DATA_(
"RenderView"),
1968 if (
ptr->type == &RNA_ViewLayer) {
1971 else if (
ptr->type == &RNA_AOV) {
1975 else if (
ptr->type == &RNA_Lightgroup) {
1999static std::optional<std::string> rna_ViewLayerEEVEE_path(
const PointerRNA *
ptr)
2004 char rna_path[
sizeof(view_layer->
name) * 3];
2007 view_layer, rna_path,
sizeof(rna_path));
2009 BLI_strncpy(rna_path + view_layer_path_len,
".eevee",
sizeof(rna_path) - view_layer_path_len);
2014static void rna_SceneEEVEE_gi_cubemap_resolution_update(
Main * ,
2027static void rna_SceneEEVEE_clamp_surface_indirect_update(
Main * ,
2043static void rna_SceneEEVEE_shadow_resolution_update(
Main * ,
2059static std::optional<std::string> rna_SceneRenderView_path(
const PointerRNA *
ptr)
2062 char srv_name_esc[
sizeof(srv->
name) * 2];
2064 return fmt::format(
"render.views[\"{}\"]", srv_name_esc);
2067static bool rna_Scene_use_nodes_get(
PointerRNA * )
2073static void rna_Scene_use_nodes_set(
PointerRNA * ,
const bool )
2097static void rna_Scene_editmesh_select_mode_set(
PointerRNA *
ptr,
const bool *value)
2104 ts->selectmode = selectmode;
2116 if (em->selectmode != selectmode) {
2130 Mesh *mesh =
nullptr;
2136 if (mesh && mesh->
runtime->edit_mesh ==
nullptr) {
2165static void object_simplify_update(
Scene *scene,
2167 bool update_normals,
2183 if (geometry_set !=
nullptr && geometry_set->
has_volume()) {
2201 object_simplify_update(scene, ob_collection, update_normals,
depsgraph);
2221static void rna_Scene_simplify_update_impl(
Main *bmain,
2223 bool update_normals,
2231 object_simplify_update(sce, ob, update_normals,
depsgraph);
2249 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2258 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2265 rna_Scene_simplify_update_impl(bmain, scene,
false,
nullptr);
2269static void rna_Scene_use_simplify_normals_update(
Main *bmain,
Scene *scene,
PointerRNA * )
2274 rna_Scene_simplify_update_impl(bmain, scene,
true,
nullptr);
2278static void rna_Scene_use_persistent_data_update(
Main * ,
2298 sizeof(*orient_slot),
2304static int rna_Scene_transform_orientation_slots_length(
PointerRNA * )
2315static void rna_Scene_use_audio_set(
PointerRNA *
ptr,
bool value)
2341static void rna_Scene_sync_mode_set(
PointerRNA *
ptr,
int value)
2358static void rna_View3DCursor_rotation_mode_set(
PointerRNA *
ptr,
int value)
2374static void rna_View3DCursor_rotation_axis_angle_get(
PointerRNA *
ptr,
float *value)
2381static void rna_View3DCursor_rotation_axis_angle_set(
PointerRNA *
ptr,
const float *value)
2388static void rna_View3DCursor_matrix_get(
PointerRNA *
ptr,
float *values)
2394static void rna_View3DCursor_matrix_set(
PointerRNA *
ptr,
const float *values)
2397 float unit_mat[4][4];
2402static std::optional<std::string> rna_TransformOrientationSlot_path(
const PointerRNA *
ptr)
2408 if (!
ELEM(
nullptr, scene, orientation_slot)) {
2411 return fmt::format(
"transform_orientation_slots[{}]",
i);
2418 return "transform_orientation_slots[0]";
2421static std::optional<std::string> rna_View3DCursor_path(
const PointerRNA * )
2430 marker->
frame = frame;
2446 "Timeline marker '%s' not found in scene '%s'",
2459static void rna_TimeLine_clear(
Scene *scene)
2467static std::optional<std::string> rna_Scene_KeyingsSetsAll_path(
const PointerRNA * )
2469 return "keying_sets_all";
2474 const char idname[],
2492static std::optional<std::string> rna_CurvePaintSettings_path(
const PointerRNA * )
2494 return "tool_settings.curve_paint_settings";
2497static std::optional<std::string> rna_SequencerToolSettings_path(
const PointerRNA * )
2499 return "tool_settings.sequencer_tool_settings";
2511 for (
Object *obedit : objects) {
2519static std::optional<std::string> rna_MeshStatVis_path(
const PointerRNA * )
2521 return "tool_settings.statvis";
2559static std::optional<std::string> rna_ToolSettings_path(
const PointerRNA * )
2561 return "tool_settings";
2577 if (lineset->linestyle) {
2668 "Style module '%s' could not be removed",
2669 module->script->id.name + 2);
2685 ID *
id =
ptr->owner_id;
2717static void rna_ViewLayer_remove(
2728static void rna_ViewLayer_move(
2792static void rna_ViewLayerLightgroup_name_get(
PointerRNA *
ptr,
char *value)
2795 strcpy(value, lightgroup->name);
2798static int rna_ViewLayerLightgroup_name_length(
PointerRNA *
ptr)
2801 return strlen(lightgroup->name);
2804static void rna_ViewLayerLightgroup_name_set(
PointerRNA *
ptr,
const char *value)
2814# define V3D_ORIENT_DEFAULT -1
2816static int rna_TransformOrientationSlot_type_get(
PointerRNA *
ptr)
2822 return V3D_ORIENT_DEFAULT;
2828void rna_TransformOrientationSlot_type_set(
PointerRNA *
ptr,
int value)
2834 if (value == V3D_ORIENT_DEFAULT) {
2852 orientation =
nullptr;
2861 const bool include_default,
2868 if (include_default) {
2870 tmp.
name =
N_(
"Default");
2872 tmp.
value = V3D_ORIENT_DEFAULT;
2873 tmp.
icon = ICON_OBJECT_ORIGIN;
2889 tmp.
name = ts->name;
2916 return rna_TransformOrientation_impl_itemf(scene,
false, r_free);
2931 return rna_TransformOrientation_impl_itemf(scene, include_default, r_free);
2934# undef V3D_ORIENT_DEFAULT
2936static const EnumPropertyItem *rna_UnitSettings_itemf_wrapper(
const int system,
2949 adaptive.
name =
N_(
"Adaptive");
2953 for (
int i = 0;
i <
len;
i++) {
3018static std::optional<std::string> rna_UnitSettings_path(
const PointerRNA * )
3020 return "unit_settings";
3023static std::optional<std::string> rna_FFmpegSettings_path(
const PointerRNA * )
3025 return "render.ffmpeg";
3040 const ID *
id =
ptr->owner_id;
3060 srna =
RNA_def_struct(brna,
"GPencilInterpolateSettings",
nullptr);
3063 "Grease Pencil Interpolate Settings",
3064 "Settings for Grease Pencil interpolation tools");
3073 "Interpolation Curve",
3074 "Custom curve to control 'sequence' interpolation between Grease Pencil frames");
3100 srna =
RNA_def_struct(brna,
"TransformOrientationSlot",
nullptr);
3109 "rna_TransformOrientationSlot_type_get",
3110 "rna_TransformOrientationSlot_type_set",
3111 "rna_TransformOrientation_with_scene_itemf");
3118 prop,
"rna_TransformOrientationSlot_get",
nullptr,
nullptr,
nullptr);
3151 prop,
"Quaternion Rotation",
"Rotation in quaternions (keep normalized)");
3158 "rna_View3DCursor_rotation_axis_angle_get",
3159 "rna_View3DCursor_rotation_axis_angle_set",
3163 prop,
"Axis-Angle Rotation",
"Angle of Rotation for Axis-Angle rotation representation");
3182 "The kind of rotation to apply, values from other rotation modes are not used");
3190 prop,
"Transform Matrix",
"Matrix combining location and rotation of the cursor");
3192 prop,
"rna_View3DCursor_matrix_get",
"rna_View3DCursor_matrix_set",
nullptr);
3208 {0,
nullptr, 0,
nullptr,
nullptr},
3217 "Show vertices with no weights in the active group"},
3219 {0,
nullptr, 0,
nullptr,
nullptr},
3228 "Vertex Groups assigned to Deform Bones"},
3233 "Vertex Groups assigned to non Deform Bones"},
3234 {0,
nullptr, 0,
nullptr,
nullptr},
3242 "Draw stroke at Object origin"},
3247 "Draw stroke at 3D cursor location"},
3252 "Stick stroke to surfaces"},
3257 "Stick stroke to other strokes"},
3258 {0,
nullptr, 0,
nullptr,
nullptr},
3262 {0,
"NONE", 0,
"All Points",
"Snap to all points"},
3267 "Snap to first and last points and interpolate"},
3269 {0,
nullptr, 0,
nullptr,
nullptr},
3272 static const EnumPropertyItem annotation_stroke_placement_view2d_items[] = {
3277 "Stick stroke to the image"},
3279 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3280 {0,
nullptr, 0,
nullptr,
nullptr},
3283 static const EnumPropertyItem annotation_stroke_placement_view3d_items[] = {
3288 "Draw stroke at 3D cursor location"},
3290 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3295 "Stick stroke to surfaces"},
3296 {0,
nullptr, 0,
nullptr,
nullptr},
3302 ICON_STICKY_UVS_DISABLE,
3304 "Sticky vertex selection disabled"},
3307 ICON_STICKY_UVS_LOC,
3309 "Select UVs that are at the same location and share a mesh vertex"},
3312 ICON_STICKY_UVS_VERT,
3314 "Select UVs that share a mesh vertex, whether or not they are at the same location"},
3315 {0,
nullptr, 0,
nullptr,
nullptr},
3340 "Weight Paint Auto-Normalize",
3341 "Ensure all bone-deforming vertex groups add up "
3342 "to 1.0 while weight painting or assigning to vertices");
3349 "Weight Paint Lock-Relative",
3350 "Display bone-deforming groups as if all locked deform groups "
3351 "were deleted, and the remaining ones were re-normalized");
3358 "Weight Paint Multi-Paint",
3359 "Paint across the weights of all selected bones, "
3360 "maintaining their relative influence");
3432 "Lock Object Modes",
3433 "Restrict selection to objects using the same mode as the active "
3434 "object, to prevent accidental mode switch when selecting");
3440 {0,
nullptr, 0,
nullptr,
nullptr},
3462 prop,
"Proportional Editing Objects",
"Proportional editing object mode");
3470 prop,
"Projected from View",
"Proportional Editing using screen space locations");
3477 prop,
"Connected Only",
"Proportional Editing using connected geometry only");
3491 prop,
"Proportional Editing Actions",
"Proportional editing in action editor");
3499 prop,
"Proportional Editing F-Curves",
"Proportional editing in F-Curve editor");
3513 prop,
"Proportional Editing Falloff",
"Falloff type for proportional editing mode");
3522 prop,
"Proportional Size",
"Display size for proportional editing circle");
3529 prop,
"Proportional Size",
"Display size for proportional editing circle");
3553 "Only transform object locations, without affecting rotation or scaling");
3560 prop,
"Transform Origins",
"Transform object origins, while leaving the shape in place");
3567 prop,
"Transform Parents",
"Transform the parents, leaving the children in place");
3574 "Correct Face Attributes",
3575 "Correct data such as UVs and color attributes when transforming");
3585 "During the Face Attributes correction, merge attributes connected to the same vertex");
3592 prop,
"Auto Merge Vertices",
"Automatically merge vertices moved to the same location");
3635 prop,
"Align Rotation to Target",
"Align rotation with the snapping target");
3643 "Absolute Increment Snap",
3644 "Absolute grid alignment while translating (based on the pivot center)");
3650 prop,
"Rotation Increment",
"Angle used for rotation increments in 2D editors");
3658 "Rotation Precision Increment",
3659 "Precision angle used for rotation increments in 2D editors");
3667 prop,
"Rotation Increment",
"Angle used for rotation increments in 3D editors");
3675 "Rotation Precision Increment",
3676 "Precision angle used for rotation increments in 3D editors");
3686 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3695 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3697 prop,
"Snap Element",
"Type of element for the \"Snap Base\" to snap to");
3705 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3707 prop,
"Project Mode",
"Type of element for individual transformed elements to snap to");
3716 "Face Nearest Steps",
3717 "Number of steps to break transformation into for face nearest snapping");
3724 "Snap to Same Target",
3725 "Snap only to target that source was initially near (\"Face Nearest\" only)");
3738 prop,
"Snap",
"Enable snapping when transforming keys in the Driver Editor");
3746 prop,
"Absolute Time Snap",
"Absolute time alignment when transforming keyframes");
3820 prop,
"Snap Peel Object",
"Consider objects as whole when finding volume center");
3835 prop,
"Snap onto Active",
"Snap onto itself only if enabled (edit mode only)");
3842 prop,
"Snap onto Edited",
"Snap onto non-active objects in edit mode (edit mode only)");
3849 prop,
"Snap onto Non-edited",
"Snap onto objects not in edit mode (edit mode only)");
3856 prop,
"Snap onto Selectable Only",
"Snap only onto objects that are selectable");
3864 prop,
"Use Snap for Translation",
"Move is affected by snapping settings");
3873 prop,
"Use Snap for Rotation",
"Rotate is affected by the snapping settings");
3897 "Select the closest axis when placing objects "
3898 "(surface overrides)");
3926 "Use Additive Drawing",
3927 "When creating new frames, the strokes from the previous/active frame "
3928 "are included as the basis for the new one");
3935 prop,
"Draw Strokes on Back",
"New strokes are drawn below of all strokes in the layer");
3943 prop,
"Compact List",
"Show compact list of colors instead of thumbnails");
3950 "Add weight data for new strokes",
3951 "Weight data for new strokes is added according to the current vertex "
3952 "group and weight. If no vertex group selected, weight is not added.");
3963 "Join the last drawn stroke with previous strokes in the active layer by distance");
3972 prop,
"Grease Pencil Sculpt",
"Settings for stroke sculpting tools and brushes");
3979 prop,
"Grease Pencil Interpolate",
"Settings for Grease Pencil interpolation tools");
4000 prop,
"Surface Offset",
"Offset along the normal when drawing on surfaces");
4010 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4049 prop,
"Selection Mask",
"Only sculpt selected stroke points between other strokes");
4083 prop,
"Selection Mask",
"Only paint selected stroke points between other strokes");
4116 "Annotation Stroke Placement (3D View)",
4117 "How annotation strokes are orientated in 3D space");
4125 prop,
"Only Endpoints",
"Only use the first and last parts of the stroke for snapping");
4133 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4149 prop,
"Auto Keying",
"Automatic keyframe insertion for objects, bones and masks");
4159 "Mode of automatic keyframe insertion for objects, bones and masks");
4167 "Add a new NLA Track + Strip for every loop/pass made over the animation "
4168 "to allow non-destructive tweaking");
4174 "Auto Keyframe Insert Keying Set",
4175 "Automatic keyframe insertion using active Keying Set only");
4183 "Cycle-Aware Keying",
4184 "For channels with cyclic extrapolation, keyframe insertion is automatically "
4185 "remapped inside the cycle time range, and keeps ends in sync. Curves newly added to "
4186 "actions with a Manual Frame Range and Cyclic Animation are automatically made cyclic.");
4194 prop,
"New Keyframe Type",
"Type of keyframes to create when inserting keyframes");
4203 "Object to mirror over. Leave empty and name a bone to always mirror "
4204 "over that bone of the active armature");
4219 prop,
"Use Location for Camera Fix",
"Create location keys when fixing to the scene camera");
4225 prop,
"Use Rotation for Camera Fix",
"Create rotation keys when fixing to the scene camera");
4231 prop,
"Use Scale for Camera Fix",
"Create scale keys when fixing to the scene camera");
4247 prop,
"Sticky Selection Mode",
"Method for extending UV vertex selection");
4256 prop,
"UV Sync Selection",
"Keep UV and edit mode mesh selection in sync");
4272 prop,
"UV Local View",
"Display only faces with the currently displayed image assigned");
4335 {
SEQ_OVERLAP_EXPAND,
"EXPAND", 0,
"Expand",
"Move strips so transformed strips fit"},
4340 "Trim or split strips to resolve overlap"},
4345 "Move transformed strips to nearest free space to resolve overlap"},
4346 {0,
nullptr, 0,
nullptr,
nullptr},
4352 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"2D Cursor",
"Pivot around the 2D cursor"},
4354 "INDIVIDUAL_ORIGINS",
4355 ICON_PIVOT_INDIVIDUAL,
4356 "Individual Origins",
4357 "Pivot around each selected island's own median point"},
4358 {0,
nullptr, 0,
nullptr,
nullptr},
4410 prop,
"Other Strips",
"Snap to borders and origins of deselected, visible strips");
4424 prop,
"Snap Current Frame to Strips",
"Snap current frame to strip start or end");
4454 {
CU_POLY,
"POLY", 0,
"Poly",
""},
4455 {
CU_BEZIER,
"BEZIER", 0,
"Bézier",
""},
4456 {0,
nullptr, 0,
nullptr,
nullptr},
4485 prop,
"Absolute Offset",
"Apply a fixed offset (don't scale by the radius)");
4491 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4516 "Minimum radius when the minimum pressure is applied (also the minimum when tapering)");
4525 "Radius to use when the maximum pressure is applied (or when a tablet isn't used)");
4532 prop,
"Radius Min",
"Taper factor for the radius of each point along the curve");
4539 prop,
"Radius Max",
"Taper factor for the radius of each point along the curve");
4550 {0,
nullptr, 0,
nullptr,
nullptr},
4563 "Normal to Surface",
4564 "Draw in a plane perpendicular to the surface"},
4568 "Tangent to Surface",
4569 "Draw in the surface plane"},
4574 "Draw in a plane aligned to the viewport"},
4575 {0,
nullptr, 0,
nullptr,
nullptr},
4596 {0,
nullptr, 0,
nullptr,
nullptr},
4702 {0,
nullptr, 0,
nullptr,
nullptr},
4706 {0,
"DEGREES", 0,
"Degrees",
"Use degrees for measuring angles and rotations"},
4708 {0,
nullptr, 0,
nullptr,
nullptr},
4720 prop,
"Unit System",
"The unit system to use for user interface controls");
4726 prop,
"Rotation Units",
"Unit to use for displaying/editing rotation values");
4733 "Scale to use when converting between Blender units and dimensions."
4734 " When working at microscopic or astronomical scale, a small or large unit scale"
4735 " respectively can be used to avoid numerical precision problems");
4767 prop,
"Temperature Unit",
"Unit that will be used to display temperature values");
4796 prop,
"Transparent",
"Deliver alpha blended surfaces in a separate pass");
4803 prop,
"Distance",
"Distance of object that contribute to the ambient occlusion effect");
4874 parm =
RNA_def_pointer(func,
"lightgroup",
"Lightgroup",
"",
"Newly created Lightgroup");
4876 parm =
RNA_def_string(func,
"name",
nullptr, 0,
"Name",
"Name of newly created lightgroup");
4878 func =
RNA_def_function(srna,
"remove",
"BKE_view_layer_remove_lightgroup");
4879 parm =
RNA_def_pointer(func,
"lightgroup",
"Lightgroup",
"",
"Lightgroup to remove");
4896 "rna_ViewLayerLightgroup_name_get",
4897 "rna_ViewLayerLightgroup_name_length",
4898 "rna_ViewLayerLightgroup_name_set");
4931 prop,
"Material Override",
"Material to override all other materials in this view layer");
4945 "Override number of render samples for this view layer, "
4946 "0 will use the scene setting");
4953 "Z, Index, normal, UV and vector passes are only affected by surfaces with "
4954 "alpha transparency equal to or higher than this threshold");
4975 "rna_ViewLayer_active_aov_index_get",
4976 "rna_ViewLayer_active_aov_index_set",
4977 "rna_ViewLayer_active_aov_index_range");
4994 "rna_ViewLayer_active_lightgroup_index_get",
4995 "rna_ViewLayer_active_lightgroup_index_set",
4996 "rna_ViewLayer_active_lightgroup_index_range");
5005 "Cryptomatte Object",
5006 "Render cryptomatte object pass, for isolating objects in compositing");
5014 "Cryptomatte Material",
5015 "Render cryptomatte material pass, for isolating materials in compositing");
5022 "Cryptomatte Asset",
5023 "Render cryptomatte asset pass, for isolating groups of objects with the same parent");
5030 prop,
"Cryptomatte Levels",
"Sets how many unique objects can be distinguished per pixel");
5038 prop,
"Cryptomatte Accurate",
"Generate a more accurate cryptomatte pass");
5094 prop,
"Motion Blur",
"Render motion blur in this Layer, if enabled in the scene");
5375 srna,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5379 "Add a style module to scene render layer Freestyle settings");
5382 func,
"module",
"FreestyleModuleSettings",
"",
"Newly created style module");
5385 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_module_remove");
5387 func,
"Remove a style module from scene render layer Freestyle settings");
5389 parm =
RNA_def_pointer(func,
"module",
"FreestyleModuleSettings",
"",
"Style module to remove");
5405 srna,
"Line Sets",
"Line sets for associating lines and style parameters");
5410 prop,
"rna_FreestyleSettings_active_lineset_get",
nullptr,
nullptr,
nullptr);
5416 "rna_FreestyleSettings_active_lineset_index_get",
5417 "rna_FreestyleSettings_active_lineset_index_set",
5418 "rna_FreestyleSettings_active_lineset_index_range");
5425 parm =
RNA_def_string(func,
"name",
"LineSet", 0,
"",
"New name for the line set (not unique)");
5427 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Newly created line set");
5430 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_lineset_remove");
5432 "Remove a line set from scene render layer Freestyle settings");
5434 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Line set to remove");
5449 "Select feature edges satisfying the given edge type conditions"},
5454 "Select feature edges not satisfying the given edge type conditions"},
5455 {0,
nullptr, 0,
nullptr,
nullptr},
5463 "Select feature edges satisfying at least one of edge type conditions"},
5468 "Select feature edges satisfying all edge type conditions"},
5469 {0,
nullptr, 0,
nullptr,
nullptr},
5477 "Select feature edges belonging to some object in the group"},
5482 "Select feature edges not belonging to any object in the group"},
5483 {0,
nullptr, 0,
nullptr,
nullptr},
5491 "Select feature edges satisfying the given face mark conditions"},
5496 "Select feature edges not satisfying the given face mark conditions"},
5497 {0,
nullptr, 0,
nullptr,
nullptr},
5501 {0,
"ONE", 0,
"One Face",
"Select a feature edge if either of its adjacent faces is marked"},
5506 "Select a feature edge if both of its adjacent faces are marked"},
5507 {0,
nullptr, 0,
nullptr,
nullptr},
5515 "Advanced mode for using style modules written in Python"},
5520 "Basic mode for interactive style parameter editing"},
5521 {0,
nullptr, 0,
nullptr,
nullptr},
5530 "Quantitative Invisibility",
5531 "Select feature edges within a range of quantitative invisibility (QI) values"},
5532 {0,
nullptr, 0,
nullptr,
nullptr},
5539 srna,
"Freestyle Line Set",
"Line set for associating lines and style parameters");
5548 "rna_FreestyleLineSet_linestyle_get",
5549 "rna_FreestyleLineSet_linestyle_set",
5564 prop,
"Render",
"Enable or disable this line set during stroke rendering");
5570 prop,
"Selection by Visibility",
"Select feature edges based on visibility");
5576 prop,
"Selection by Edge Types",
"Select feature edges based on edge types");
5582 prop,
"Selection by Collection",
"Select feature edges based on a collection of objects");
5588 "Selection by Image Border",
5589 "Select feature edges by image border (less memory consumption)");
5602 "Edge Type Negation",
5603 "Specify either inclusion or exclusion of feature edges selected by edge types");
5611 "Edge Type Combination",
5612 "Specify a logical combination of selection conditions on feature edge types");
5620 prop,
"Collection",
"A collection of objects based on which feature edges are selected");
5627 "Collection Negation",
5628 "Specify either inclusion or exclusion of feature edges belonging to a "
5629 "collection of objects");
5637 "Face Mark Negation",
5638 "Specify either inclusion or exclusion of feature edges selected by face marks");
5645 "Face Mark Condition",
5646 "Specify a feature edge selection condition based on face marks");
5654 "Select silhouettes (edges at the boundary of visible and hidden faces)");
5666 "Select crease edges (those between two faces making an angle smaller "
5667 "than the Crease Angle)");
5675 "Select ridges and valleys (boundary lines between convex and concave areas of surface)");
5681 prop,
"Suggestive Contour",
"Select suggestive contours (almost silhouette/contour edges)");
5699 "Select external contours (outer silhouettes of occluding and occluded objects)");
5705 prop,
"Edge Mark",
"Select edge marks (edges annotated by Freestyle edge marks)");
5769 prop,
"Visibility",
"Determine how to use visibility for feature edge selection");
5789 srna,
"Freestyle Module",
"Style module configuration for specifying a style module");
5800 prop,
"Use",
"Enable or disable this style module during stroke rendering");
5809 srna,
"Freestyle Settings",
"Freestyle settings for a ViewLayer data-block");
5815 prop,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5847 prop,
"Face Smoothness",
"Take face smoothness into account in view map calculation");
5855 "Keep the computed view map and avoid recalculating it if mesh geometry is unchanged");
5864 "Renders Freestyle output to a separate pass instead of overlaying it on the Combined pass");
5879 prop,
"Kr Derivative Epsilon",
"Kr derivative epsilon for computing suggestive contours");
5902 "VECTOR_DISPLACEMENT",
5904 "Vector Displacement",
5905 "Bake vector displacement"},
5906 {0,
nullptr, 0,
nullptr,
nullptr},
5912 {0,
nullptr, 0,
nullptr,
nullptr},
5933 "Object to use as cage "
5934 "instead of calculating the cage from the active object with cage extrusion");
5969 "The maximum ray distance for matching points between the active and "
5970 "selected objects. If zero, there is no limit.");
5979 "Inflate the active object by the specified distance for baking. This helps matching to "
5980 "points nearer to the outside of the selected object meshes.");
6033 "Selected to Active",
6034 "Bake shading on the surface of selected objects to the active object");
6045 prop,
"Split Materials",
"Split external images per material (external only)");
6053 "Automatically name the output file with the pass type (external only)");
6111 prop,
"Low Resolution Mesh",
"Calculate heights against unsubdivided low resolution mesh");
6136 func,
"name",
"ViewLayer", 0,
"",
"New name for the view layer (not unique)");
6138 parm =
RNA_def_pointer(func,
"result",
"ViewLayer",
"",
"Newly created view layer");
6144 parm =
RNA_def_pointer(func,
"layer",
"ViewLayer",
"",
"View layer to remove");
6152 func,
"from_index", -1, INT_MIN, INT_MAX,
"From Index",
"Index to move", 0, 10000);
6154 parm =
RNA_def_int(func,
"to_index", -1, INT_MIN, INT_MAX,
"To Index",
"Target index", 0, 10000);
6166 srna,
"Scene Render View",
"Render viewpoint for 3D stereo and multiview rendering");
6186 "Suffix to identify the cameras to use, and added to the render images for this view");
6213 "rna_RenderSettings_active_view_index_get",
6214 "rna_RenderSettings_active_view_index_set",
6215 "rna_RenderSettings_active_view_index_range");
6222 "rna_RenderSettings_active_view_get",
6223 "rna_RenderSettings_active_view_set",
6233 parm =
RNA_def_string(func,
"name",
"RenderView", 0,
"",
"New name for the marker (not unique)");
6235 parm =
RNA_def_pointer(func,
"result",
"SceneRenderView",
"",
"Newly created render view");
6241 parm =
RNA_def_pointer(func,
"view",
"SceneRenderView",
"",
"Render view to remove");
6257 "Render views for left and right eyes as two differently filtered colors in a single image "
6258 "(anaglyph glasses are required)"},
6263 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
6269 "Render views for left and right eyes side-by-side"},
6274 "Render views for left and right eyes one above another"},
6275 {0,
nullptr, 0,
nullptr,
nullptr},
6321# ifdef WITH_IMAGE_OPENJPEG
6325 {0,
nullptr, 0,
nullptr,
nullptr},
6334 {0,
nullptr, 0,
nullptr,
nullptr},
6340 {0,
nullptr, 0,
nullptr,
nullptr},
6359 "rna_ImageFormatSettings_media_type_set",
6360 "rna_ImageFormatSettings_media_type_itemf");
6369 "rna_ImageFormatSettings_file_format_set",
6370 "rna_ImageFormatSettings_file_format_itemf");
6381 "Choose BW for saving grayscale images, RGB for saving red, green and blue channels, "
6382 "and RGBA for saving red, green, blue and alpha channels");
6397 prop,
"Quality",
"Quality for image formats that support lossy compression");
6406 "Amount of time to determine best compression: "
6407 "0 = no compression with fast file output, "
6408 "100 = maximum lossless compression with slow file output");
6414 prop,
"Preview",
"When rendering animations, save JPG preview images in same directory");
6419# ifdef WITH_IMAGE_OPENEXR
6434 "Use legacy interleaved storage of views, layers and passes for compatibility with "
6435 "applications that do not support more efficient multi-part OpenEXR files.");
6439# ifdef WITH_IMAGE_OPENJPEG
6444 prop,
"YCC",
"Save luminance-chrominance-chrominance channels instead of RGB colors");
6501 prop,
nullptr,
nullptr,
"rna_ImageFormatSettings_views_format_itemf");
6515 prop,
"Color Management",
"Which color management settings to use for file saving");
6517 prop,
nullptr,
"rna_ImageFormatSettings_color_management_set",
nullptr);
6523 prop,
"View Settings",
"Color management settings applied on image before saving");
6528 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
6536 prop,
"rna_ImageFormatSettings_has_linear_colorspace_get",
nullptr);
6539 prop,
"Has Linear Color Space",
"File format expects linear color space");
6561 {
FFMPEG_MOV,
"QUICKTIME", 0,
"QuickTime",
""},
6562 {0,
nullptr, 0,
nullptr,
nullptr},
6570 "Disables video output, for audio-only renders"},
6589 {0,
nullptr, 0,
nullptr,
nullptr},
6600 "Recommended if you have lots of time and want the best compression efficiency"},
6601 {
FFM_PRESET_GOOD,
"GOOD", 0,
"Good",
"The default and recommended for most applications"},
6603 {0,
nullptr, 0,
nullptr,
nullptr},
6613 {0,
nullptr, 0,
nullptr,
nullptr},
6621 "Configure constant bit rate, rather than constant output quality"},
6629 {0,
nullptr, 0,
nullptr,
nullptr},
6637 "Disables audio output, for video-only renders"},
6646 {0,
nullptr, 0,
nullptr,
nullptr},
6658 "Set audio channels to 5.1 surround sound"},
6663 "Set audio channels to 7.1 surround sound"},
6664 {0,
nullptr, 0,
nullptr,
nullptr},
6719 "Keyframe Interval",
6720 "Distance between key frames, also known as GOP size; "
6721 "influences file size and seekability");
6731 "Maximum number of B-frames between non-B-frames; influences file size and seekability");
6762 "Constant Rate Factor (CRF); tradeoff between video quality and file size");
6771 prop,
"Encoding Speed",
"Tradeoff between encoding speed and compression ratio");
6840 {0,
"AUTO", 0,
"Automatic",
"Automatic pixel size, depends on the user interface scale"},
6845 {0,
nullptr, 0,
nullptr,
nullptr},
6853 "Automatically determine the number of threads, based on CPUs"},
6854 {
R_FIXED_THREADS,
"FIXED", 0,
"Fixed",
"Manually determine the number of threads"},
6855 {0,
nullptr, 0,
nullptr,
nullptr},
6859 {0,
"BLENDER_EEVEE", 0,
"EEVEE",
""},
6860 {0,
nullptr, 0,
nullptr,
nullptr},
6868 "Specify unit line thickness in pixels"},
6873 "Unit line thickness is scaled by the proportion of the present vertical image "
6874 "resolution to 480 pixels"},
6875 {0,
nullptr, 0,
nullptr,
nullptr},
6883 "Single stereo camera system, adjust the stereo settings in the camera panel"},
6888 "Multi camera system, adjust the cameras individually"},
6889 {0,
nullptr, 0,
nullptr,
nullptr},
6893 {
SCE_MB_START,
"START", 0,
"Start on Frame",
"The shutter opens at the current frame"},
6898 "The shutter is open during the current frame"},
6899 {
SCE_MB_END,
"END", 0,
"End on Frame",
"The shutter closes at the current frame"},
6900 {0,
nullptr, 0,
nullptr,
nullptr},
6907 {0,
nullptr, 0,
nullptr,
nullptr},
6911 {0,
"SCENE", 0,
"Scene",
"Use metadata from the current scene"},
6916 "Use metadata from the strips in the sequencer"},
6917 {0,
nullptr, 0,
nullptr,
nullptr},
6923 {0,
nullptr, 0,
nullptr,
nullptr},
6931 "Full precision for final renders, half precision otherwise"},
6933 {0,
nullptr, 0,
nullptr,
nullptr},
6941 "Use the same device used by the compositor to process the denoise node"},
6946 "Use the CPU to process the denoise node"},
6951 "Use the GPU to process the denoise node if available, otherwise fallback to CPU"},
6952 {0,
nullptr, 0,
nullptr,
nullptr},
6961 "Balanced between performance and quality"},
6963 {0,
nullptr, 0,
nullptr,
nullptr},
6987 prop,
"Resolution X",
"Number of horizontal pixels in the rendered image");
6996 prop,
"Resolution Y",
"Number of vertical pixels in the rendered image");
7020 "Horizontal aspect ratio - for anamorphic or non-square pixel output");
7029 prop,
"Pixel Aspect Y",
"Vertical aspect ratio - for anamorphic or non-square pixel output");
7040 "The pixel density meta-data written to supported image formats. "
7041 "This value is multiplied by the PPM-base which defines the unit "
7042 "(typically inches or meters)");
7097 "Amount of dithering noise added to the rendered image to break up banding");
7105 prop,
"Filter Size",
"Width over which the reconstruction filter combines samples");
7113 "World background is transparent, for compositing the render over another background");
7129 "Maximum number of CPU cores to use simultaneously while rendering "
7130 "(for multi-core/CPU systems)");
7156 "Motion Blur Position",
7157 "Offset for the shutter's time interval, "
7158 "allows to change the motion blur trails");
7166 prop,
"Shutter Curve",
"Curve defining the shutter's openness over time");
7178 prop,
"Additional Subdivision",
"Additional subdivision along the curves");
7185 "High Quality Normals",
7186 "Use high quality tangent space at the cost of lower performance");
7194 prop,
"Render Region",
"Render a user-defined render region, within the frame size");
7229 prop,
"Crop to Render Region",
"Crop the rendered frame to the defined render region size");
7238 "Create empty placeholder files while rendering frames (similar to Unix 'touch')");
7251 "Process the render result through the compositing pipeline, "
7252 "if a compositing node group is assigned to the scene");
7260 "Process the render (and composited) result through the video sequence "
7261 "editor pipeline, if sequencer strips exist");
7270 "Add the file format extensions to the rendered file name (eg: filename + .jpg)");
7284 prop,
"rna_SceneRender_file_ext_get",
"rna_SceneRender_file_ext_length",
nullptr);
7300 "Lock interface during rendering in favor of giving more memory to the renderer");
7310 "Directory/name to save animations, # characters define the position "
7311 "and padding of frame numbers");
7320 "Save render cache to EXR files (useful for heavy compositing, "
7321 "Note: affects indirectly rendered scenes)");
7329 prop,
"Stamp Time",
"Include the rendered frame timecode as HH:MM:SS.FF in image metadata");
7345 prop,
"Stamp Frame",
"Include the rendered frame range in image/video metadata");
7351 prop,
"Stamp Camera",
"Include the name of the active camera in image metadata");
7357 prop,
"Stamp Lens",
"Include the active camera's lens in image metadata");
7363 prop,
"Stamp Scene",
"Include the name of the active scene in image/video metadata");
7374 prop,
"Stamp Marker",
"Include the name of the last marker in image metadata");
7380 prop,
"Stamp Filename",
"Include the .blend filename in image/video metadata");
7386 "Stamp Sequence Strip",
7387 "Include the name of the foreground sequence strip in image metadata");
7403 prop,
"Stamp Output",
"Render the stamp info text in the rendered image");
7409 prop,
"Stamp Labels",
"Display stamp labels (\"Camera\" in front of camera name, etc.)");
7421 prop,
"Stamp Peak Memory",
"Include the peak memory usage in image metadata");
7427 prop,
"Stamp Hostname",
"Include the hostname of the machine that rendered the frame");
7456 prop,
"Sequencer Preview Shading",
"Display method used in the sequencer view");
7462 "Override Scene Settings",
7463 "Use workbench render settings from the sequencer scene, instead of "
7464 "each individual scene used in the strip");
7470 "Render Single Layer",
7471 "Only render the active layer. Only affects rendering from the "
7472 "interface, ignored for rendering from command line.");
7485 "rna_RenderSettings_stereoViews_begin",
7486 "rna_iterator_listbase_next",
7487 "rna_iterator_listbase_end",
7488 "rna_iterator_listbase_get",
7512 "rna_RenderSettings_engine_get",
7513 "rna_RenderSettings_engine_set",
7514 "rna_RenderSettings_engine_itemf");
7523 prop,
"Multiple Engines",
"More than one rendering engine is available");
7529 prop,
"Use Spherical Stereo",
"Active render engine supports spherical stereo rendering");
7535 prop,
"Use Simplify",
"Enable simplification of scene for quicker preview renders");
7554 prop,
"Simplify Subdivision",
"Global maximum subdivision level during rendering");
7560 prop,
"Simplify Child Particles",
"Global child particles percentage during rendering");
7566 prop,
"Simplify Volumes",
"Resolution percentage of volume objects in viewport");
7574 "Skip computing custom normals and face corner normals for displaying "
7575 "meshes in the viewport");
7587 prop,
"Playback Only",
"Simplify Grease Pencil only during animation playback");
7621 "Keep render data around for faster re-renders and animation renders, "
7622 "at the cost of increased memory usage");
7630 prop,
"Line Thickness Mode",
"Line thickness mode for Freestyle line drawing");
7657 prop,
"Compositor Precision",
"The precision of compositor intermediate result");
7665 "Compositor Denoise Node Device",
7666 "The device to use to process the denoise nodes in the compositor");
7674 "Compositor Preview Denoise Quality",
7675 "The quality used by denoise nodes during viewport and interactive "
7676 "compositing if the nodes' quality option is set to Follow Scene");
7684 "Compositor Final Denoise Quality",
7685 "The quality used by denoise nodes during the compositing of final "
7686 "renders if the nodes' quality option is set to Follow Scene");
7727 parm =
RNA_def_string(func,
"name",
"Marker", 0,
"",
"New name for the marker (not unique)");
7735 "The frame for the new marker",
7738 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Newly created timeline marker");
7744 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Timeline marker to remove");
7772 func,
"idname",
"KeyingSet",
MAX_NAME,
"IDName",
"Internal identifier of Keying Set");
7775 parm =
RNA_def_pointer(func,
"keyingset",
"KeyingSet",
"",
"Newly created Keying Set");
7782 "rna_Scene_active_keying_set_get",
7783 "rna_Scene_active_keying_set_set",
7787 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7793 "rna_Scene_active_keying_set_index_get",
7794 "rna_Scene_active_keying_set_index_set",
7798 "Active Keying Set Index",
7799 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7820 "rna_Scene_active_keying_set_get",
7821 "rna_Scene_active_keying_set_set",
7825 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7831 "rna_Scene_active_keying_set_index_get",
7832 "rna_Scene_active_keying_set_index_set",
7836 "Active Keying Set Index",
7837 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7848 srna =
RNA_def_struct(brna,
"SelectedUvElement",
"PropertyGroup");
7890 "Center Title Safe Margins",
7891 "Safe area for text and graphics in a different aspect ratio");
7899 "Center Action Safe Margins",
7900 "Safe area for general elements in a different aspect ratio");
7918 prop,
"Light Direction",
"Direction of the light for shadows and highlights");
7938 prop,
"Distance",
"Distance of object that contribute to the cavity/edge effect");
7954 prop,
"Render Anti-Aliasing",
"Method of anti-aliasing when rendering final image");
7960 prop,
"Viewport Anti-Aliasing",
"Method of anti-aliasing when rendering 3d viewport");
7976 srna,
"EEVEE Raytrace Options",
"Quality options for the raytracing pipeline");
7982 "Determines the number of rays per pixel. "
7983 "Higher resolution uses more memory.");
7990 prop,
"Denoise",
"Enable noise reduction techniques for raytraced effects");
8003 prop,
"Temporal Accumulation",
"Accumulate samples by reprojecting last tracing results");
8010 prop,
"Bilateral Filter",
"Blur the resolved radiance using a bilateral filter");
8017 "Screen-Trace Thickness",
8018 "Surface thickness used to detect intersection when using screen-tracing");
8026 "Raytrace Max Roughness",
8027 "Maximum roughness to use the tracing pipeline for. Higher "
8028 "roughness surfaces will use fast GI approximation. A value of 1 will "
8029 "disable fast GI approximation.");
8036 prop,
"Screen-Trace Precision",
"Precision of the screen space ray-tracing");
8048 {128,
"128", 0,
"128 px",
""},
8049 {256,
"256", 0,
"256 px",
""},
8050 {512,
"512", 0,
"512 px",
""},
8051 {1024,
"1024", 0,
"1024 px",
""},
8052 {2048,
"2048", 0,
"2048 px",
""},
8053 {4096,
"4096", 0,
"4096 px",
""},
8054 {0,
nullptr, 0,
nullptr,
nullptr},
8058 {16,
"16", 0,
"16 MB",
""},
8059 {32,
"32", 0,
"32 MB",
""},
8060 {64,
"64", 0,
"64 MB",
""},
8061 {128,
"128", 0,
"128 MB",
""},
8062 {256,
"256", 0,
"256 MB",
""},
8063 {512,
"512", 0,
"512 MB",
""},
8064 {1024,
"1024", 0,
"1 GB",
""},
8065 {0,
nullptr, 0,
nullptr,
nullptr},
8069 {8,
"8", 0,
"8 px",
""},
8070 {16,
"16", 0,
"16 px",
""},
8071 {32,
"32", 0,
"32 px",
""},
8072 {64,
"64", 0,
"64 px",
""},
8073 {0,
nullptr, 0,
nullptr,
nullptr},
8081 "Use light probes to find scene intersection"},
8086 "Raytrace against the depth buffer. Fallback to light probes for invalid rays."},
8087 {0,
nullptr, 0,
nullptr,
nullptr},
8092 "AMBIENT_OCCLUSION_ONLY",
8094 "Ambient Occlusion",
8095 "Use ambient occlusion instead of full global illumination"},
8097 "GLOBAL_ILLUMINATION",
8099 "Global Illumination",
8100 "Compute global illumination taking into account light bouncing off surrounding objects"},
8101 {0,
nullptr, 0,
nullptr,
nullptr},
8112 "Number of times the light is reinjected inside light grids, "
8113 "0 disable indirect diffuse light");
8126 "Irradiance Visibility Size",
8127 "Size of the shadow map applied to each irradiance sample");
8133 "Clamp pixel intensity to reduce noise inside glossy reflections "
8134 "from reflection cubemaps (0 to disable)");
8141 "Irradiance Pool Size",
8142 "Size of the irradiance pool, "
8143 "a bigger pool size allows for more irradiance grid in the scene "
8144 "but might not fit into GPU memory and decrease performance");
8166 "Viewport Denoising",
8167 "Denoise image using temporal reprojection "
8168 "(can leave some ghosting)");
8176 prop,
"Tracing Method",
"Select the tracing method used to find scene-ray intersections");
8182 "Jittered Shadows (Viewport)",
8183 "Enable jittered shadows on the viewport. (Jittered shadows are always "
8184 "enabled for final renders).");
8190 "Clamp Surface Direct",
8191 "If non-zero, the maximum value for lights contribution on a surface. "
8192 "Higher values will be scaled down to avoid too "
8193 "much noise and slow convergence at the cost of accuracy. "
8194 "Used by light objects.");
8201 "Clamp Surface Indirect",
8202 "If non-zero, the maximum value for indirect lighting on surface. "
8203 "Higher values will be scaled down to avoid too "
8204 "much noise and slow convergence at the cost of accuracy. "
8205 "Used by ray-tracing and light-probes.");
8213 "Clamp Volume Direct",
8214 "If non-zero, the maximum value for lights contribution in volumes. "
8215 "Higher values will be scaled down to avoid too "
8216 "much noise and slow convergence at the cost of accuracy. "
8217 "Used by light objects.");
8224 "Clamp Volume Indirect",
8225 "If non-zero, the maximum value for indirect lighting in volumes. "
8226 "Higher values will be scaled down to avoid too "
8227 "much noise and slow convergence at the cost of accuracy. "
8228 "Used by light-probes.");
8252 "Control the quality of the volumetric effects. "
8253 "Higher resolution uses more memory.");
8260 "Number of steps to compute volumetric effects. "
8261 "Higher step count increase VRAM usage and quality.");
8268 prop,
"Exponential Sampling",
"Distribute more samples closer to the camera");
8274 "Volume Max Ray Depth",
8275 "Maximum surface intersection count used by the accurate volume "
8276 "intersection method. Will create artifact if it is exceeded. "
8277 "Higher count increases VRAM usage.");
8292 "Volumetric Shadows",
8293 "Cast shadows from volumetric materials onto volumetric materials (Very expensive)");
8300 prop,
"Volumetric Shadow Samples",
"Number of samples to compute volumetric shadowing");
8307 "Volume Custom Range",
8308 "Enable custom start and end clip distances for volume computation");
8316 "Fast GI Approximation",
8317 "Use faster global illumination technique for high roughness surfaces");
8325 "Geometric thickness of the surfaces when computing fast GI and ambient occlusion. "
8326 "Reduces light leaking and missing contact occlusion.");
8336 "Angular thickness of the surfaces when computing fast GI and ambient occlusion. "
8337 "Reduces energy loss and missing occlusion of far geometry.");
8371 "If non-zero, the maximum distance at which other surfaces will "
8372 "contribute to the fast GI approximation");
8377 prop,
"Bias",
"Bias the shading normal to reduce self intersection artifacts");
8387 "Control the quality of the fast GI lighting. "
8388 "Higher resolution uses more memory.");
8396 prop,
"Max Size",
"Max size of the bokeh shape for the depth of field (lower is faster)");
8403 prop,
"Sprite Threshold",
"Brightness threshold for using sprite base depth of field");
8411 "Neighbor Rejection",
8412 "Maximum brightness to consider when rejecting bokeh sprites "
8413 "based on neighborhood (lower is faster)");
8423 "Jitter camera position to create accurate blurring "
8424 "using render samples (only for final render)");
8431 "Apply blur to each jittered sample to reduce "
8432 "under-sampling artifacts");
8441 "Lower values will reduce background"
8442 " bleeding onto foreground elements");
8458 "Controls accuracy of motion blur, "
8459 "more steps means longer render time");
8476 "Size of the shadow pool, "
8477 "a bigger pool size allows for more shadows in the scene "
8478 "but might not fit into GPU memory");
8485 prop,
"Shadow Ray Count",
"Amount of shadow ray to trace for each light");
8492 prop,
"Shadow Step Count",
"Amount of shadow map sample per shadow ray");
8499 "Minimum light intensity for a light to contribute to the lighting");
8510 "Internally render past the image border to avoid "
8511 "screen-space effects disappearing");
8518 "Percentage of render size to add as overscan to the "
8519 "internal render buffers");
8527 prop,
"Reflection Trace Options",
"EEVEE settings for tracing reflections");
8539 prop,
"Shadows Resolution Scale",
"Resolution percentage of shadow maps");
8558 "SMAA Threshold Viewport",
8559 "Threshold for edge detection algorithm (higher values might over-blur "
8560 "some part of the image)");
8568 "SMAA Threshold Render",
8569 "Threshold for edge detection algorithm (higher values might over-blur "
8570 "some part of the image). Only applies to final render");
8576 "Anti-Aliasing Samples",
8577 "Number of supersampling anti-aliasing samples per pixel for final render");
8586 "Motion Blur Steps",
8587 "Controls accuracy of motion blur, more steps result in longer render "
8588 "time. Only used when Motion Blur is enabled. Set to 0 to disable "
8589 "motion blur for Grease Pencil");
8610 "Fast interactive editing through native Hydra integration"},
8615 "Export scene through USD file, for accurate comparison with USD file export"},
8616 {0,
nullptr, 0,
nullptr,
nullptr},
8626 prop,
"Export Method",
"How to export the Blender scene to the Hydra render engine");
8639 {0,
"NONE", 0,
"None",
"No distance attenuation"},
8640 {1,
"INVERSE", 0,
"Inverse",
"Inverse distance model"},
8641 {2,
"INVERSE_CLAMPED", 0,
"Inverse Clamped",
"Inverse distance model with clamping"},
8642 {3,
"LINEAR", 0,
"Linear",
"Linear distance model"},
8643 {4,
"LINEAR_CLAMPED", 0,
"Linear Clamped",
"Linear distance model with clamping"},
8644 {5,
"EXPONENT", 0,
"Exponential",
"Exponential distance model"},
8648 "Exponential Clamped",
8649 "Exponential distance model with clamping"},
8650 {0,
nullptr, 0,
nullptr,
nullptr},
8654 {0,
"NONE", 0,
"Play Every Frame",
"Do not sync, play every frame"},
8655 {
SCE_FRAME_DROP,
"FRAME_DROP", 0,
"Frame Dropping",
"Drop frames if playback is too slow"},
8656 {
AUDIO_SYNC,
"AUDIO_SYNC", 0,
"Sync to Audio",
"Sync to audio playback, dropping frames"},
8657 {0,
nullptr, 0,
nullptr,
nullptr},
8663 {0,
nullptr, 0,
nullptr,
nullptr},
8670 "Scene data-block, consisting in objects and "
8671 "defining time and render related settings");
8703 "rna_Scene_objects_begin",
8704 "rna_Scene_objects_next",
8705 "rna_Scene_objects_end",
8706 "rna_Scene_objects_get",
8722 "Current frame, to update animation data from Python frame_set() instead");
8740 prop,
"rna_Scene_frame_float_get",
"rna_Scene_frame_float_set",
nullptr);
8767 "Number of frames to skip forward while rendering/playing back each frame");
8775 prop,
"Time Jump Unit",
"Which unit to use for time jumps in the timeline");
8784 prop,
"Time Jump Delta",
"Number of frames or seconds to jump forward or backward");
8792 prop,
"Current Frame Final",
"Current frame with subframe and time remapping applied");
8798 "Lock Frame Selection",
8799 "Don't allow frame to be selected with mouse outside of frame range");
8809 "Use Preview Range",
8810 "Use an alternative start/end frame range for animation playback and view renders");
8819 prop,
"Preview Range Start Frame",
"Alternative start frame for UI playback");
8827 prop,
"Preview Range End Frame",
"Alternative end frame for UI playback");
8837 "Display and allow setting fractional frame values for the current frame");
8844 prop,
"Only Show Selected",
"Only include channels relating to selected objects and data");
8864 "Whether there is any action referenced by NLA being edited (strictly read-only)");
8872 prop,
"Frame Dropping",
"Play back dropping frames if frame display is too slow");
8879 "Custom Simulation Range",
8880 "Use a simulation range that is different from the scene range for "
8881 "simulation nodes that don't override the frame range themselves");
8912 "rna_Scene_compositing_node_group_set",
8914 "rna_Scene_compositing_node_group_poll");
8924 "Unused but kept for compatibility reasons. Setting the property "
8925 "has no effect, and getting it always returns True. Use #scene.render.use_compositing to "
8926 "turn compositing to enable or disable compositing.",
8946 "rna_Scene_all_keyingsets_begin",
8947 "rna_Scene_all_keyingsets_next",
8948 "rna_iterator_listbase_end",
8949 "rna_iterator_listbase_get",
8958 "All Keying Sets available for use (Builtins and Absolute Keying Sets for this Scene)");
9016 prop,
"Timeline Markers",
"Markers used in all timelines for the current scene");
9022 "rna_Scene_transform_orientation_slots_begin",
9023 "rna_iterator_array_next",
9024 "rna_iterator_array_end",
9025 "rna_iterator_array_get",
9026 "rna_Scene_transform_orientation_slots_length",
9044 prop,
"Play Audio",
"Play back of audio from Sequence Editor, otherwise mute audio");
9053 "Play back and sync with audio clock, dropping frames if frame display is too slow");
9060 prop,
"Audio Scrubbing",
"Play audio from Sequence Editor while scrubbing");
9068 prop,
"Speed of Sound",
"Speed of sound for Doppler effect calculation");
9083 prop,
"Distance Model",
"Distance model for distance attenuation calculation");
9094 func =
RNA_def_function(srna,
"update_render_engine",
"rna_Scene_update_render_engine");
9099 func =
RNA_def_function(srna,
"statistics",
"rna_Scene_statistics_string_get");
9101 parm =
RNA_def_pointer(func,
"view_layer",
"ViewLayer",
"View Layer",
"");
9103 parm =
RNA_def_string(func,
"statistics",
nullptr, 0,
"Statistics",
"");
9111 prop,
nullptr,
nullptr,
nullptr,
"rna_GPencil_datablocks_annotations_poll");
9123 "Active Movie Clip",
9124 "Active Movie Clip that can be used by motion tracking constraints "
9125 "or as a camera's background image");
9133 prop,
"View Settings",
"Color management settings applied on image before saving");
9139 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
9145 prop,
"Sequencer Color Space Settings",
"Settings of color space sequencer is working in");
9162 "Scene root collection that owns all the objects and other collections "
9163 "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)
#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
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
@ 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_CONTROL_EDITOR_MODE
@ FREESTYLE_CONTROL_SCRIPT_MODE
@ FREESTYLE_FE_SILHOUETTE
@ FREESTYLE_FE_RIDGE_VALLEY
@ FREESTYLE_FE_EXTERNAL_CONTOUR
@ FREESTYLE_FE_SUGGESTIVE_CONTOUR
@ FREESTYLE_FE_MATERIAL_BOUNDARY
@ FREESTYLE_LINESET_FE_AND
@ FREESTYLE_LINESET_ENABLED
@ FREESTYLE_LINESET_FM_NOT
@ FREESTYLE_LINESET_FE_NOT
@ FREESTYLE_LINESET_FM_BOTH
@ FREESTYLE_LINESET_GR_NOT
@ FREESTYLE_SEL_VISIBILITY
@ FREESTYLE_SEL_EDGE_TYPES
@ FREESTYLE_SEL_IMAGE_BORDER
@ FREESTYLE_SEL_FACE_MARK
@ 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)
@ WT_VGROUP_BONE_DEFORM_OFF
@ SCE_COMPOSITOR_DENOISE_FAST
@ SCE_COMPOSITOR_DENOISE_BALANCED
@ SCE_COMPOSITOR_DENOISE_HIGH
@ MEDIA_TYPE_MULTI_LAYER_IMAGE
@ SCE_COMPOSITOR_PRECISION_FULL
@ SCE_COMPOSITOR_PRECISION_AUTO
@ R_SEQ_OVERRIDE_SCENE_SETTINGS
@ 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
@ R_IMF_JP2_FLAG_CINE_PRESET
@ UVCALC_TRANSFORM_CORRECT
@ UVCALC_TRANSFORM_CORRECT_KEEP_CONNECTED
@ SEQ_SNAP_CURRENT_FRAME_TO_STRIPS
@ R_LINE_THICKNESS_ABSOLUTE
@ R_LINE_THICKNESS_RELATIVE
@ R_BAKE_VECTOR_DISPLACEMENT
@ OB_DRAW_GROUPUSER_ACTIVE
@ SCE_HAIR_SHAPE_CYLINDER
@ R_BAKE_TARGET_VERTEX_COLORS
@ R_BAKE_TARGET_IMAGE_TEXTURES
@ S3D_ANAGLYPH_YELLOWBLUE
@ S3D_ANAGLYPH_GREENMAGENTA
@ CURVE_PAINT_PROJECT_CURSOR
@ CURVE_PAINT_PROJECT_SURFACE
@ 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
@ S3D_SIDEBYSIDE_CROSSEYED
@ SCE_COMPOSITOR_DENOISE_DEVICE_GPU
@ SCE_COMPOSITOR_DENOISE_DEVICE_AUTO
@ SCE_COMPOSITOR_DENOISE_DEVICE_CPU
@ R_IMF_TIFF_CODEC_PACKBITS
@ R_IMF_TIFF_CODEC_DEFLATE
@ 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_WORKSPACE_TOOL_DEFAULT
@ SCE_WORKSPACE_TOOL_FALLBACK
@ FFMPEG_AUTOSPLIT_OUTPUT
@ FFMPEG_USE_MAX_B_FRAMES
@ GP_VERTEX_MASK_SELECTMODE_SEGMENT
@ GP_VERTEX_MASK_SELECTMODE_STROKE
@ GP_VERTEX_MASK_SELECTMODE_POINT
#define SCE_SNAP_TO_VERTEX
@ S3D_INTERLACE_CHECKERBOARD
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_SURFACE
@ CURVE_PAINT_SURFACE_PLANE_VIEW
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_VIEW
@ 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
@ SCE_XFORM_SKIP_CHILDREN
@ SIMPLIFY_GPENCIL_ON_PLAY
@ SIMPLIFY_GPENCIL_MODIFIER
@ SIMPLIFY_GPENCIL_ENABLE
@ UV_FLAG_SHOW_SAME_IMAGE
@ SCER_LOCK_FRAME_SELECTION
@ 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
@ CURVE_PAINT_FIT_METHOD_REFIT
@ CURVE_PAINT_FIT_METHOD_SPLIT
@ SCE_CUSTOM_SIMULATION_RANGE
@ 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_VIEWS_FORMAT_STEREO_3D
@ SCE_VIEWS_FORMAT_MULTIVIEW
@ 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_COMPOSITOR_DEVICE_GPU
@ SCE_COMPOSITOR_DEVICE_CPU
@ 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
@ SCE_SNAP_SOURCE_CLOSEST
@ R_IMF_COLOR_MANAGEMENT_FOLLOW_SCENE
@ R_IMF_COLOR_MANAGEMENT_OVERRIDE
@ R_IMF_EXR_FLAG_MULTIPART
@ R_IMF_IMTYPE_MULTILAYER
@ 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
@ FIX_TO_CAM_FLAG_USE_SCALE
@ FIX_TO_CAM_FLAG_USE_LOC
@ FIX_TO_CAM_FLAG_USE_ROT
@ 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_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 ED_uvedit_select_sync_multi(bContext *C)
void FRS_free_view_map_cache(void)
Read Guarded memory(de)allocation.
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 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 sync_active_scene_and_time_with_scene_strip(bContext &C)
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_listbase_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, ListBase *lb, IteratorSkipFunc skip)
void rna_iterator_array_begin(CollectionPropertyIterator *iter, PointerRNA *ptr, void *data, size_t itemsize, int64_t length, bool free_ptr, IteratorSkipFunc skip)
PointerRNA RNA_pointer_create_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_deprecated(PropertyRNA *prop, const char *note, const short version, const short removal_version)
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)
#define IMAGE_TYPE_ITEMS_IMAGE
void rna_def_freestyle_settings(BlenderRNA *brna)
#define MEDIA_TYPE_ENUM_VIDEO
const EnumPropertyItem rna_enum_image_color_depth_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_image_type_all_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[]
#define IMAGE_TYPE_ITEMS_VIDEO
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[]
#define MEDIA_TYPE_ENUM_MULTI_LAYER_IMAGE
#define IMAGE_TYPE_ITEMS_MULTI_LAYER_IMAGE
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[]
#define MEDIA_TYPE_ENUM_IMAGE
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_media_type_all_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[]
const EnumPropertyItem rna_enum_views_format_multiview_items[]
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_strip_scale_method_items[]
const EnumPropertyItem rna_enum_shading_type_items[]
void RE_FreePersistentData(const Scene *scene)
struct ImageFormatData im_format
union CollectionPropertyIterator::@220100362304005352221007113371015217044252346141 internal
ListBaseIterator listbase
int ffmpeg_prores_profile
MeshRuntimeHandle * runtime
struct ModifierData * next
NodeCompositorFileOutputItem * items
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 * compositing_node_group
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)