59# include <libavcodec/avcodec.h>
60# include <libavformat/avformat.h>
85 {0,
nullptr, 0,
nullptr,
nullptr},
94 {0,
nullptr, 0,
nullptr,
nullptr},
98 {
PROP_SMOOTH,
"SMOOTH", ICON_SMOOTHCURVE,
"Smooth",
"Smooth falloff"},
99 {
PROP_SPHERE,
"SPHERE", ICON_SPHERECURVE,
"Sphere",
"Spherical falloff"},
100 {
PROP_ROOT,
"ROOT", ICON_ROOTCURVE,
"Root",
"Root falloff"},
103 ICON_INVERSESQUARECURVE,
105 "Inverse Square falloff"},
106 {
PROP_SHARP,
"SHARP", ICON_SHARPCURVE,
"Sharp",
"Sharp falloff"},
107 {
PROP_LIN,
"LINEAR", ICON_LINCURVE,
"Linear",
"Linear falloff"},
108 {
PROP_CONST,
"CONSTANT", ICON_NOCURVE,
"Constant",
"Constant falloff"},
109 {
PROP_RANDOM,
"RANDOM", ICON_RNDCURVE,
"Random",
"Random falloff"},
110 {0,
nullptr, 0,
nullptr,
nullptr},
115 {
PROP_SMOOTH,
"SMOOTH", ICON_SMOOTHCURVE,
"Smooth",
"Smooth falloff"},
116 {
PROP_SPHERE,
"SPHERE", ICON_SPHERECURVE,
"Sphere",
"Spherical falloff"},
117 {
PROP_ROOT,
"ROOT", ICON_ROOTCURVE,
"Root",
"Root falloff"},
118 {
PROP_INVSQUARE,
"INVERSE_SQUARE", ICON_ROOTCURVE,
"Inverse Square",
"Inverse Square falloff"},
119 {
PROP_SHARP,
"SHARP", ICON_SHARPCURVE,
"Sharp",
"Sharp falloff"},
120 {
PROP_LIN,
"LINEAR", ICON_LINCURVE,
"Linear",
"Linear falloff"},
121 {0,
nullptr, 0,
nullptr,
nullptr},
128 {
SCE_SELECT_EDGE,
"EDGE", ICON_EDGESEL,
"Edge",
"Edge selection mode"},
129 {
SCE_SELECT_FACE,
"FACE", ICON_FACESEL,
"Face",
"Face selection mode"},
130 {0,
nullptr, 0,
nullptr,
nullptr},
134 {
UV_SELECT_VERTEX,
"VERTEX", ICON_UV_VERTEXSEL,
"Vertex",
"Vertex selection mode"},
135 {
UV_SELECT_EDGE,
"EDGE", ICON_UV_EDGESEL,
"Edge",
"Edge selection mode"},
136 {
UV_SELECT_FACE,
"FACE", ICON_UV_FACESEL,
"Face",
"Face selection mode"},
137 {
UV_SELECT_ISLAND,
"ISLAND", ICON_UV_ISLANDSEL,
"Island",
"Island selection mode"},
138 {0,
nullptr, 0,
nullptr,
nullptr},
142#define RNA_SNAP_ELEMENTS_BASE \
143 {SCE_SNAP_TO_INCREMENT, "INCREMENT", ICON_SNAP_INCREMENT, "Increment", "Snap to increments"}, \
144 {SCE_SNAP_TO_GRID, "GRID", ICON_SNAP_GRID, "Grid", "Snap to grid"}, \
145 {SCE_SNAP_TO_VERTEX, "VERTEX", ICON_SNAP_VERTEX, "Vertex", "Snap to vertices"}, \
146 {SCE_SNAP_TO_EDGE, "EDGE", ICON_SNAP_EDGE, "Edge", "Snap to edges"}, \
147 {SCE_SNAP_TO_FACE, "FACE", ICON_SNAP_FACE, "Face", "Snap by projecting onto faces"}, \
148 {SCE_SNAP_TO_VOLUME, "VOLUME", ICON_SNAP_VOLUME, "Volume", "Snap to volume"}, \
149 {SCE_SNAP_TO_EDGE_MIDPOINT, "EDGE_MIDPOINT", ICON_SNAP_MIDPOINT, "Edge Center", "Snap to the middle of edges"}, \
150 {SCE_SNAP_TO_EDGE_PERPENDICULAR, "EDGE_PERPENDICULAR", ICON_SNAP_PERPENDICULAR, "Edge Perpendicular", "Snap to the nearest point on an edge"}
159 "Snap by projecting onto faces"},
162 ICON_SNAP_FACE_NEAREST,
164 "Snap to nearest point on faces"},
165 {0,
nullptr, 0,
nullptr,
nullptr},
170 {0,
nullptr, 0,
nullptr,
nullptr},
181 {
SCE_SNAP_TO_NODE_X,
"NODE_X", ICON_NODE_SIDE,
"Node X",
"Snap to left/right node border"},
182 {
SCE_SNAP_TO_NODE_Y,
"NODE_Y", ICON_NODE_TOP,
"Node Y",
"Snap to top/bottom node border"},
187 "Snap to any node border"},
188 {0,
nullptr, 0,
nullptr,
nullptr},
195 {0,
nullptr, 0,
nullptr,
nullptr},
204 "Snap to increments of grid"},
207 {0,
nullptr, 0,
nullptr,
nullptr},
215 "Scene will be rendering without any anti-aliasing"},
219 "Single Pass Anti-Aliasing",
220 "Scene will be rendered using a single pass anti-aliasing method (FXAA)"},
225 "Scene will be rendered using 5 anti-aliasing samples"},
230 "Scene will be rendered using 8 anti-aliasing samples"},
235 "Scene will be rendered using 11 anti-aliasing samples"},
240 "Scene will be rendered using 16 anti-aliasing samples"},
245 "Scene will be rendered using 32 anti-aliasing samples"},
246 {0,
nullptr, 0,
nullptr,
nullptr},
255 "Incrementally refit the curve (high quality)"},
260 "Split the curve until the tolerance is met (fast)"},
261 {0,
nullptr, 0,
nullptr,
nullptr},
268#define R_IMF_ENUM_BMP \
269 {R_IMF_IMTYPE_BMP, "BMP", ICON_FILE_IMAGE, "BMP", "Output image in bitmap format"},
270#define R_IMF_ENUM_IRIS \
271 {R_IMF_IMTYPE_IRIS, "IRIS", ICON_FILE_IMAGE, "Iris", "Output image in SGI IRIS format"},
272#define R_IMF_ENUM_PNG \
273 {R_IMF_IMTYPE_PNG, "PNG", ICON_FILE_IMAGE, "PNG", "Output image in PNG format"},
274#define R_IMF_ENUM_JPEG \
275 {R_IMF_IMTYPE_JPEG90, "JPEG", ICON_FILE_IMAGE, "JPEG", "Output image in JPEG format"},
276#define R_IMF_ENUM_TAGA \
277 {R_IMF_IMTYPE_TARGA, "TARGA", ICON_FILE_IMAGE, "Targa", "Output image in Targa format"},
278#define R_IMF_ENUM_TAGA_RAW \
279 {R_IMF_IMTYPE_RAWTGA, \
283 "Output image in uncompressed Targa format"},
286# define R_IMF_ENUM_DDS \
287 {R_IMF_IMTYPE_DDS, "DDS", ICON_FILE_IMAGE, "DDS", "Output image in DDS format"},
291# define R_IMF_ENUM_JPEG2K \
296 "Output image in JPEG 2000 format"},
298# define R_IMF_ENUM_JPEG2K
302# define R_IMF_ENUM_CINEON \
303 {R_IMF_IMTYPE_CINEON, "CINEON", ICON_FILE_IMAGE, "Cineon", "Output image in Cineon format"},
304# define R_IMF_ENUM_DPX \
305 {R_IMF_IMTYPE_DPX, "DPX", ICON_FILE_IMAGE, "DPX", "Output image in DPX format"},
307# define R_IMF_ENUM_CINEON
308# define R_IMF_ENUM_DPX
312# define R_IMF_ENUM_EXR_MULTILAYER \
313 {R_IMF_IMTYPE_MULTILAYER, \
314 "OPEN_EXR_MULTILAYER", \
316 "OpenEXR MultiLayer", \
317 "Output image in multilayer OpenEXR format"},
318# define R_IMF_ENUM_EXR \
319 {R_IMF_IMTYPE_OPENEXR, \
323 "Output image in OpenEXR format"},
325# define R_IMF_ENUM_EXR_MULTILAYER
326# define R_IMF_ENUM_EXR
329#define R_IMF_ENUM_HDR \
330 {R_IMF_IMTYPE_RADHDR, \
334 "Output image in Radiance HDR format"},
336#define R_IMF_ENUM_TIFF \
337 {R_IMF_IMTYPE_TIFF, "TIFF", ICON_FILE_IMAGE, "TIFF", "Output image in TIFF format"},
340# define R_IMF_ENUM_WEBP \
341 {R_IMF_IMTYPE_WEBP, "WEBP", ICON_FILE_IMAGE, "WebP", "Output image in WebP format"},
343# define R_IMF_ENUM_WEBP
346#define IMAGE_TYPE_ITEMS_IMAGE_ONLY \
354 R_IMF_ENUM_TAGA_RAW \
355 RNA_ENUM_ITEM_SEPR_COLUMN, R_IMF_ENUM_CINEON R_IMF_ENUM_DPX R_IMF_ENUM_EXR_MULTILAYER \
356 R_IMF_ENUM_EXR R_IMF_ENUM_HDR R_IMF_ENUM_TIFF R_IMF_ENUM_WEBP
363 {0,
nullptr, 0,
nullptr,
nullptr},
376 {0,
nullptr, 0,
nullptr,
nullptr},
384 "Images get saved in 8-bit grayscale (only PNG, JPEG, TGA, TIF)"},
385 {
R_IMF_PLANES_RGB,
"RGB", 0,
"RGB",
"Images are saved with RGB (color) data"},
390 "Images are saved with RGB and Alpha data (if supported)"},
391 {0,
nullptr, 0,
nullptr,
nullptr},
395# define IMAGE_COLOR_MODE_BW rna_enum_image_color_mode_items[0]
396# define IMAGE_COLOR_MODE_RGB rna_enum_image_color_mode_items[1]
397# define IMAGE_COLOR_MODE_RGBA rna_enum_image_color_mode_items[2]
408 {0,
nullptr, 0,
nullptr,
nullptr},
414 {0,
nullptr, 0,
nullptr,
nullptr},
424 {0,
nullptr, 0,
nullptr,
nullptr},
432 "Use pixels from adjacent faces across UV seams"},
433 {
R_BAKE_EXTEND,
"EXTEND", 0,
"Extend",
"Extend border pixels outwards"},
434 {0,
nullptr, 0,
nullptr,
nullptr},
442 "Bake to image data-blocks associated with active image texture nodes in materials"},
446 "Active Color Attribute",
447 "Bake to the active color attribute on meshes"},
448 {0,
nullptr, 0,
nullptr,
nullptr},
456 "Save the baking map in an internal image data-block"},
458 {0,
nullptr, 0,
nullptr,
nullptr},
466 "Cast rays from above the surface"},
471 "Use the active camera's position to cast rays"},
472 {0,
nullptr, 0,
nullptr,
nullptr},
475#define R_IMF_VIEWS_ENUM_IND \
476 {R_IMF_VIEWS_INDIVIDUAL, \
480 "Individual files for each view with the prefix as defined by the scene views"},
481#define R_IMF_VIEWS_ENUM_S3D \
482 {R_IMF_VIEWS_STEREO_3D, "STEREO_3D", 0, "Stereo 3D", "Single file with an encoded stereo pair"},
483#define R_IMF_VIEWS_ENUM_MV \
484 {R_IMF_VIEWS_MULTIVIEW, "MULTIVIEW", 0, "Multi-View", "Single file with all the views"},
498#undef R_IMF_VIEWS_ENUM_IND
499#undef R_IMF_VIEWS_ENUM_S3D
500#undef R_IMF_VIEWS_ENUM_MV
507 "Render views for left and right eyes as two differently filtered colors in a single image "
508 "(anaglyph glasses are required)"},
513 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
519 "Render alternate eyes (also known as page flip, quad buffer support in the graphic card is "
525 "Render views for left and right eyes side-by-side"},
530 "Render views for left and right eyes one above another"},
531 {0,
nullptr, 0,
nullptr,
nullptr},
538 {0,
nullptr, 0,
nullptr,
nullptr},
545 {0,
nullptr, 0,
nullptr,
nullptr},
557 {0,
nullptr, 0,
nullptr,
nullptr},
563 {0,
nullptr, 0,
nullptr,
nullptr},
568 "BOUNDING_BOX_CENTER",
570 "Bounding Box Center",
571 "Pivot around bounding box center of selected object(s)"},
572 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"3D Cursor",
"Pivot around the 3D cursor"},
574 "INDIVIDUAL_ORIGINS",
575 ICON_PIVOT_INDIVIDUAL,
576 "Individual Origins",
577 "Pivot around each object's own origin"},
582 "Pivot around the median point of selected objects"},
587 "Pivot around active object"},
588 {0,
nullptr, 0,
nullptr,
nullptr},
595 ICON_ORIENTATION_GLOBAL,
597 "Align the transformation axes to world space"},
600 ICON_ORIENTATION_LOCAL,
602 "Align the transformation axes to the selected objects' local space"},
605 ICON_ORIENTATION_NORMAL,
607 "Align the transformation axes to average normal of selected elements "
608 "(bone Y axis for pose mode)"},
611 ICON_ORIENTATION_GIMBAL,
613 "Align each axis to the Euler rotation axis as used for input"},
616 ICON_ORIENTATION_VIEW,
618 "Align the transformation axes to the window"},
621 ICON_ORIENTATION_CURSOR,
623 "Align the transformation axes to the 3D cursor"},
626 ICON_ORIENTATION_PARENT,
628 "Align the transformation axes to the object's parent space"},
630 {0,
nullptr, 0,
nullptr,
nullptr},
638 "Start placing on the surface, using the 3D cursor position as a fallback"},
643 "Start placement using a point projected onto the orientation axis "
644 "at the 3D cursor position"},
649 "Start placement using a point projected onto the view plane at the 3D cursor position"},
650 {0,
nullptr, 0,
nullptr,
nullptr},
658 "Use the surface normal (using the transform orientation as a fallback)"},
661 ICON_ORIENTATION_GLOBAL,
663 "Use the current transform orientation"},
664 {0,
nullptr, 0,
nullptr,
nullptr},
669 {
SCE_SNAP_TO_NONE,
"DEFAULT", 0,
"Default",
"Use the current snap settings"},
670 {0,
nullptr, 0,
nullptr,
nullptr},
678 ICON_GP_SELECT_BETWEEN_STROKES,
680 "Select all stroke points between other strokes"},
681 {0,
nullptr, 0,
nullptr,
nullptr},
685 {1,
"1", 0,
"1:1",
"Full resolution"},
686 {2,
"2", 0,
"1:2",
"Render this effect at 50% render resolution"},
687 {4,
"4", 0,
"1:4",
"Render this effect at 25% render resolution"},
688 {8,
"8", 0,
"1:8",
"Render this effect at 12.5% render resolution"},
689 {16,
"16", 0,
"1:16",
"Render this effect at 6.25% render resolution"},
690 {0,
nullptr, 0,
nullptr,
nullptr},
697# include <fmt/format.h>
751# ifdef WITH_FREESTYLE
763static void rna_ToolSettings_snap_mode_set(
PointerRNA *
ptr,
int value)
771static void rna_ToolSettings_snap_uv_mode_set(
PointerRNA *
ptr,
int value)
847 iter->valid = ((
BLI_Iterator *)iter->internal.custom)->valid;
876 for (nested_set = set; nested_set; nested_set = nested_set->
set) {
877 if (nested_set == scene) {
881 if (nested_set->
set == set) {
896 if (scene->set !=
nullptr) {
937static const char *rna_Scene_statistics_string_get(
Scene *scene,
945 "View Layer '%s' not found in scene '%s'",
960static void rna_Scene_frame_current_set(
PointerRNA *
ptr,
int value)
966 data->r.cfra = value;
975static void rna_Scene_frame_float_set(
PointerRNA *
ptr,
float value)
981 data->r.subframe = value -
data->r.cfra;
984static float rna_Scene_frame_current_final_get(
PointerRNA *
ptr)
991static void rna_Scene_start_frame_set(
PointerRNA *
ptr,
int value)
996 data->r.sfra = value;
998 if (value >
data->r.efra) {
1003static void rna_Scene_end_frame_set(
PointerRNA *
ptr,
int value)
1007 data->r.efra = value;
1009 if (
data->r.sfra > value) {
1014static void rna_Scene_use_preview_range_set(
PointerRNA *
ptr,
bool value)
1020 if ((
data->r.psfra ==
data->r.pefra) && (
data->r.psfra == 0)) {
1032static void rna_Scene_preview_range_start_frame_set(
PointerRNA *
ptr,
int value)
1043 data->r.psfra = value;
1045 if (value >
data->r.pefra) {
1050static void rna_Scene_preview_range_end_frame_set(
PointerRNA *
ptr,
int value)
1061 data->r.pefra = value;
1063 if (
data->r.psfra > value) {
1068static void rna_Scene_show_subframe_update(
Main * ,
1073 scene->r.subframe = 0.0f;
1103static int rna_Scene_active_keying_set_index_get(
PointerRNA *
ptr)
1106 return scene->active_keyingset - 1;
1112static void rna_Scene_active_keying_set_index_set(
PointerRNA *
ptr,
int value)
1115 scene->active_keyingset = value + 1;
1129 if (scene->keyingsets.first) {
1148 internal->link = (
Link *)ks->next;
1151 iter->valid = (internal->link !=
nullptr);
1154static std::optional<std::string> rna_SceneEEVEE_path(
const PointerRNA * )
1159static std::optional<std::string> rna_RaytraceEEVEE_path(
const PointerRNA * )
1161 return "eevee.ray_tracing_options";
1164static std::optional<std::string> rna_SceneGpencil_path(
const PointerRNA * )
1166 return "grease_pencil_settings";
1169static std::optional<std::string> rna_SceneHydra_path(
const PointerRNA * )
1192static std::optional<std::string> rna_RenderSettings_path(
const PointerRNA * )
1197static std::optional<std::string> rna_BakeSettings_path(
const PointerRNA * )
1199 return "render.bake";
1202static std::optional<std::string> rna_ImageFormatSettings_path(
const PointerRNA *
ptr)
1205 ID *
id =
ptr->owner_id;
1212 return "render.image_settings";
1215 return "render.bake.image_settings";
1226 char node_name_esc[
sizeof(node->
name) * 2];
1228 return fmt::format(
"nodes[\"{}\"].format", node_name_esc);
1236 if (&sockdata->
format == imf) {
1237 char node_name_esc[
sizeof(node->
name) * 2];
1240 char socketdata_path_esc[
sizeof(sockdata->
path) * 2];
1244 "nodes[\"{}\"].file_slots[\"{}\"].format", node_name_esc, socketdata_path_esc);
1263static int rna_RenderSettings_threads_mode_get(
PointerRNA *
ptr)
1276static bool rna_RenderSettings_is_movie_format_get(
PointerRNA *
ptr)
1282static void rna_ImageFormatSettings_file_format_set(
PointerRNA *
ptr,
int value)
1285 ID *
id =
ptr->owner_id;
1286 imf->imtype = value;
1304 if ((imf->depth & depth_ok) == 0) {
1318 for (i = 0; depth_ls[i]; i++) {
1319 if (depth_ok & depth_ls[i]) {
1320 imf->depth = depth_ls[i];
1331 BKE_ffmpeg_image_type_verify(rd, imf);
1344 ID *
id =
ptr->owner_id;
1349 return image_only_type_items;
1359 ID *
id =
ptr->owner_id;
1378 if (BKE_ffmpeg_alpha_channel_is_supported(rd)) {
1415 if (imf ==
nullptr) {
1420 const int is_float =
ELEM(
1448 tmp.
name =
"Float (Half)";
1451 "16-bit color channels. Data passes like Depth will still be saved using full "
1452 "32-bit precision.";
1464 tmp.
name =
"Float (Full)";
1486 if (imf ==
nullptr) {
1511 int i = 1, totitem = 0;
1513 if (imf->depth == 16) {
1514 return rna_enum_exr_codec_items;
1533static bool rna_ImageFormatSettings_has_linear_colorspace_get(
PointerRNA *
ptr)
1539static void rna_ImageFormatSettings_color_management_set(
PointerRNA *
ptr,
int value)
1543 if (imf->color_management != value) {
1544 imf->color_management = value;
1548 ID *owner_id =
ptr->owner_id;
1565 return ext_num ? strlen(ext_array[0]) : 0;
1568static void rna_SceneRender_file_ext_get(
PointerRNA *
ptr,
char *value)
1573 strcpy(value, ext_num ? ext_array[0] :
"");
1577static void rna_FFmpegSettings_lossless_output_set(
PointerRNA *
ptr,
bool value)
1591static int rna_RenderSettings_active_view_index_get(
PointerRNA *
ptr)
1597static void rna_RenderSettings_active_view_index_set(
PointerRNA *
ptr,
int value)
1603static void rna_RenderSettings_active_view_index_range(
1620static void rna_RenderSettings_active_view_set(
PointerRNA *
ptr,
1642static void rna_RenderView_remove(
1651 "Render view '%s' could not be removed from scene '%s'",
1662static void rna_RenderSettings_views_format_set(
PointerRNA *
ptr,
int value)
1676static void rna_RenderSettings_engine_set(
PointerRNA *
ptr,
int value)
1695 int a = 0, totitem = 0;
1730static void rna_Scene_update_render_engine(
Main *bmain)
1735static bool rna_RenderSettings_multiple_engines_get(
PointerRNA * )
1740static bool rna_RenderSettings_use_spherical_stereo_get(
PointerRNA *
ptr)
1808# ifdef WITH_FREESTYLE
1821static void rna_SceneRenderView_name_set(
PointerRNA *
ptr,
const char *value)
1828 DATA_(
"RenderView"),
1846 if (
ptr->type == &RNA_ViewLayer) {
1849 else if (
ptr->type == &RNA_AOV) {
1853 else if (
ptr->type == &RNA_Lightgroup) {
1877static std::optional<std::string> rna_ViewLayerEEVEE_path(
const PointerRNA *
ptr)
1882 char rna_path[
sizeof(view_layer->
name) * 3];
1885 view_layer, rna_path,
sizeof(rna_path));
1887 BLI_strncpy(rna_path + view_layer_path_len,
".eevee",
sizeof(rna_path) - view_layer_path_len);
1892static void rna_SceneEEVEE_gi_cubemap_resolution_update(
Main * ,
1905static void rna_SceneEEVEE_clamp_surface_indirect_update(
Main * ,
1921static void rna_SceneEEVEE_shadow_resolution_update(
Main * ,
1937static std::optional<std::string> rna_SceneRenderView_path(
const PointerRNA *
ptr)
1940 char srv_name_esc[
sizeof(srv->
name) * 2];
1942 return fmt::format(
"render.views[\"{}\"]", srv_name_esc);
1970static void rna_Scene_editmesh_select_mode_set(
PointerRNA *
ptr,
const bool *value)
1977 ts->selectmode =
flag;
1989 if (mesh && mesh->
runtime->edit_mesh && mesh->
runtime->edit_mesh->selectmode !=
flag) {
2003 Mesh *mesh =
nullptr;
2009 if (mesh && mesh->
runtime->edit_mesh ==
nullptr) {
2027static void object_simplify_update(
Scene *scene,
2029 bool update_normals,
2045 if (geometry_set !=
nullptr && geometry_set->
has_volume()) {
2063 object_simplify_update(scene, ob_collection, update_normals,
depsgraph);
2083static void rna_Scene_simplify_update_impl(
Main *bmain,
2085 bool update_normals,
2093 object_simplify_update(sce, ob, update_normals,
depsgraph);
2111 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2120 rna_Scene_simplify_update_impl(bmain, scene,
false,
depsgraph);
2127 rna_Scene_simplify_update_impl(bmain, scene,
false,
nullptr);
2131static void rna_Scene_use_simplify_normals_update(
Main *bmain,
Scene *scene,
PointerRNA * )
2136 rna_Scene_simplify_update_impl(bmain, scene,
true,
nullptr);
2140static void rna_Scene_use_persistent_data_update(
Main * ,
2161static int rna_Scene_transform_orientation_slots_length(
PointerRNA * )
2172static void rna_Scene_use_audio_set(
PointerRNA *
ptr,
bool value)
2198static void rna_Scene_sync_mode_set(
PointerRNA *
ptr,
int value)
2215static void rna_View3DCursor_rotation_mode_set(
PointerRNA *
ptr,
int value)
2231static void rna_View3DCursor_rotation_axis_angle_get(
PointerRNA *
ptr,
float *value)
2238static void rna_View3DCursor_rotation_axis_angle_set(
PointerRNA *
ptr,
const float *value)
2245static void rna_View3DCursor_matrix_get(
PointerRNA *
ptr,
float *values)
2251static void rna_View3DCursor_matrix_set(
PointerRNA *
ptr,
const float *values)
2254 float unit_mat[4][4];
2259static std::optional<std::string> rna_TransformOrientationSlot_path(
const PointerRNA *
ptr)
2265 if (!
ELEM(
nullptr, scene, orientation_slot)) {
2268 return fmt::format(
"transform_orientation_slots[{}]", i);
2275 return "transform_orientation_slots[0]";
2278static std::optional<std::string> rna_View3DCursor_path(
const PointerRNA * )
2283static TimeMarker *rna_TimeLine_add(
Scene *scene,
const char name[],
int frame)
2285 TimeMarker *marker = MEM_cnew<TimeMarker>(
"TimeMarker");
2287 marker->
frame = frame;
2303 "Timeline marker '%s' not found in scene '%s'",
2316static void rna_TimeLine_clear(
Scene *scene)
2324static std::optional<std::string> rna_Scene_KeyingsSetsAll_path(
const PointerRNA * )
2326 return "keying_sets_all";
2331 const char idname[],
2357static void rna_UnifiedPaintSettings_size_set(
PointerRNA *
ptr,
int value)
2366static void rna_UnifiedPaintSettings_unprojected_radius_set(
PointerRNA *
ptr,
float value)
2379 rna_UnifiedPaintSettings_update(
C,
ptr);
2382static std::optional<std::string> rna_UnifiedPaintSettings_path(
const PointerRNA * )
2384 return "tool_settings.unified_paint_settings";
2387static std::optional<std::string> rna_CurvePaintSettings_path(
const PointerRNA * )
2389 return "tool_settings.curve_paint_settings";
2392static std::optional<std::string> rna_SequencerToolSettings_path(
const PointerRNA * )
2394 return "tool_settings.sequencer_tool_settings";
2406 for (
Object *obedit : objects) {
2414static std::optional<std::string> rna_MeshStatVis_path(
const PointerRNA * )
2416 return "tool_settings.statvis";
2454static std::optional<std::string> rna_ToolSettings_path(
const PointerRNA * )
2456 return "tool_settings";
2472 if (lineset->linestyle) {
2563 "Style module '%s' could not be removed",
2564 module->script->id.name + 2);
2580 ID *
id =
ptr->owner_id;
2612static void rna_ViewLayer_remove(
2623static void rna_ViewLayer_move(
2687static void rna_ViewLayerLightgroup_name_get(
PointerRNA *
ptr,
char *value)
2690 strcpy(value, lightgroup->name);
2693static int rna_ViewLayerLightgroup_name_length(
PointerRNA *
ptr)
2696 return strlen(lightgroup->name);
2699static void rna_ViewLayerLightgroup_name_set(
PointerRNA *
ptr,
const char *value)
2709# define V3D_ORIENT_DEFAULT -1
2711static int rna_TransformOrientationSlot_type_get(
PointerRNA *
ptr)
2717 return V3D_ORIENT_DEFAULT;
2723void rna_TransformOrientationSlot_type_set(
PointerRNA *
ptr,
int value)
2729 if (value == V3D_ORIENT_DEFAULT) {
2747 orientation =
nullptr;
2756 const bool include_default,
2763 if (include_default) {
2765 tmp.
name =
N_(
"Default");
2767 tmp.
value = V3D_ORIENT_DEFAULT;
2768 tmp.
icon = ICON_OBJECT_ORIGIN;
2784 tmp.
name = ts->name;
2811 return rna_TransformOrientation_impl_itemf(scene,
false, r_free);
2826 return rna_TransformOrientation_impl_itemf(scene, include_default, r_free);
2829# undef V3D_ORIENT_DEFAULT
2831static const EnumPropertyItem *rna_UnitSettings_itemf_wrapper(
const int system,
2844 adaptive.
name =
N_(
"Adaptive");
2848 for (
int i = 0; i <
len; i++) {
2913static std::optional<std::string> rna_UnitSettings_path(
const PointerRNA * )
2915 return "unit_settings";
2918static std::optional<std::string> rna_FFmpegSettings_path(
const PointerRNA * )
2920 return "render.ffmpeg";
2928 if (!
ELEM(codec_data->codec,
2951 srna =
RNA_def_struct(brna,
"GPencilInterpolateSettings",
nullptr);
2954 "Grease Pencil Interpolate Settings",
2955 "Settings for Grease Pencil interpolation tools");
2963 "Interpolation Curve",
2964 "Custom curve to control 'sequence' interpolation between Grease Pencil frames");
2990 srna =
RNA_def_struct(brna,
"TransformOrientationSlot",
nullptr);
2999 "rna_TransformOrientationSlot_type_get",
3000 "rna_TransformOrientationSlot_type_set",
3001 "rna_TransformOrientation_with_scene_itemf");
3008 prop,
"rna_TransformOrientationSlot_get",
nullptr,
nullptr,
nullptr);
3041 prop,
"Quaternion Rotation",
"Rotation in quaternions (keep normalized)");
3048 "rna_View3DCursor_rotation_axis_angle_get",
3049 "rna_View3DCursor_rotation_axis_angle_set",
3053 prop,
"Axis-Angle Rotation",
"Angle of Rotation for Axis-Angle rotation representation");
3076 prop,
"Transform Matrix",
"Matrix combining location and rotation of the cursor");
3078 prop,
"rna_View3DCursor_matrix_get",
"rna_View3DCursor_matrix_set",
nullptr);
3094 {0,
nullptr, 0,
nullptr,
nullptr},
3103 "Show vertices with no weights in the active group"},
3105 {0,
nullptr, 0,
nullptr,
nullptr},
3114 "Vertex Groups assigned to Deform Bones"},
3119 "Vertex Groups assigned to non Deform Bones"},
3120 {0,
nullptr, 0,
nullptr,
nullptr},
3128 "Draw stroke at Object origin"},
3133 "Draw stroke at 3D cursor location"},
3138 "Stick stroke to surfaces"},
3143 "Stick stroke to other strokes"},
3144 {0,
nullptr, 0,
nullptr,
nullptr},
3148 {0,
"NONE", 0,
"All Points",
"Snap to all points"},
3153 "Snap to first and last points and interpolate"},
3155 {0,
nullptr, 0,
nullptr,
nullptr},
3158 static const EnumPropertyItem annotation_stroke_placement_view2d_items[] = {
3163 "Stick stroke to the image"},
3165 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3166 {0,
nullptr, 0,
nullptr,
nullptr},
3169 static const EnumPropertyItem annotation_stroke_placement_view3d_items[] = {
3174 "Draw stroke at 3D cursor location"},
3176 {0,
"VIEW", ICON_RESTRICT_VIEW_ON,
"View",
"Stick stroke to the view"},
3181 "Stick stroke to surfaces"},
3182 {0,
nullptr, 0,
nullptr,
nullptr},
3188 ICON_STICKY_UVS_DISABLE,
3190 "Sticky vertex selection disabled"},
3193 ICON_STICKY_UVS_LOC,
3195 "Select UVs that are at the same location and share a mesh vertex"},
3198 ICON_STICKY_UVS_VERT,
3200 "Select UVs that share a mesh vertex, whether or not they are at the same location"},
3201 {0,
nullptr, 0,
nullptr,
nullptr},
3220 "Weight Paint Auto-Normalize",
3221 "Ensure all bone-deforming vertex groups add up "
3222 "to 1.0 while weight painting");
3229 "Weight Paint Lock-Relative",
3230 "Display bone-deforming groups as if all locked deform groups "
3231 "were deleted, and the remaining ones were re-normalized");
3238 "Weight Paint Multi-Paint",
3239 "Paint across the weights of all selected bones, "
3240 "maintaining their relative influence");
3311 "Lock Object Modes",
3312 "Restrict selection to objects using the same mode as the active "
3313 "object, to prevent accidental mode switch when selecting");
3319 {0,
nullptr, 0,
nullptr,
nullptr},
3341 prop,
"Proportional Editing Objects",
"Proportional editing object mode");
3349 prop,
"Projected from View",
"Proportional Editing using screen space locations");
3356 prop,
"Connected Only",
"Proportional Editing using connected geometry only");
3370 prop,
"Proportional Editing Actions",
"Proportional editing in action editor");
3378 prop,
"Proportional Editing F-Curves",
"Proportional editing in F-Curve editor");
3392 prop,
"Proportional Editing Falloff",
"Falloff type for proportional editing mode");
3401 prop,
"Proportional Size",
"Display size for proportional editing circle");
3408 prop,
"Proportional Size",
"Display size for proportional editing circle");
3432 "Only transform object locations, without affecting rotation or scaling");
3439 prop,
"Transform Origins",
"Transform object origins, while leaving the shape in place");
3446 prop,
"Transform Parents",
"Transform the parents, leaving the children in place");
3453 "Correct Face Attributes",
3454 "Correct data such as UVs and color attributes when transforming");
3464 "During the Face Attributes correction, merge attributes connected to the same vertex");
3471 prop,
"Auto Merge Vertices",
"Automatically merge vertices moved to the same location");
3515 prop,
"Align Rotation to Target",
"Align rotation with the snapping target");
3523 "Absolute Increment Snap",
3524 "Absolute grid alignment while translating (based on the pivot center)");
3530 prop,
"Rotation Increment",
"Angle used for rotation increments in 2D editors");
3538 "Rotation Precision Increment",
3539 "Precision angle used for rotation increments in 2D editors");
3547 prop,
"Rotation Increment",
"Angle used for rotation increments in 3D editors");
3555 "Rotation Precision Increment",
3556 "Precision angle used for rotation increments in 3D editors");
3566 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3576 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3579 prop,
"Snap Element",
"Type of element for the \"Snap Base\" to snap to");
3587 prop,
"rna_ToolSettings_snap_mode_get",
"rna_ToolSettings_snap_mode_set",
nullptr);
3590 prop,
"Project Mode",
"Type of element for individual transformed elements to snap to");
3599 "Face Nearest Steps",
3600 "Number of steps to break transformation into for face nearest snapping");
3607 "Snap to Same Target",
3608 "Snap only to target that source was initially near (\"Face Nearest\" only)");
3629 prop,
"Absolute Time Snap",
"Absolute time alignment when transforming keyframes");
3663 prop,
"Snap Peel Object",
"Consider objects as whole when finding volume center");
3678 prop,
"Snap onto Active",
"Snap onto itself only if enabled (edit mode only)");
3685 prop,
"Snap onto Edited",
"Snap onto non-active objects in edit mode (edit mode only)");
3692 prop,
"Snap onto Non-edited",
"Snap onto objects not in edit mode (edit mode only)");
3699 prop,
"Snap onto Selectable Only",
"Snap only onto objects that are selectable");
3707 prop,
"Use Snap for Translation",
"Move is affected by snapping settings");
3716 prop,
"Use Snap for Rotation",
"Rotate is affected by the snapping settings");
3740 "Select the closest axis when placing objects "
3741 "(surface overrides)");
3769 "Use Additive Drawing",
3770 "When creating new frames, the strokes from the previous/active frame "
3771 "are included as the basis for the new one");
3778 prop,
"Draw Strokes on Back",
"New strokes are drawn below of all strokes in the layer");
3786 prop,
"Compact List",
"Show compact list of colors instead of thumbnails");
3793 "Add weight data for new strokes",
3794 "Weight data for new strokes is added according to the current vertex "
3795 "group and weight. If no vertex group selected, weight is not added.");
3806 "Join the last drawn stroke with previous strokes in the active layer by distance");
3815 prop,
"Grease Pencil Sculpt",
"Settings for stroke sculpting tools and brushes");
3822 prop,
"Grease Pencil Interpolate",
"Settings for grease pencil interpolation tools");
3843 prop,
"Surface Offset",
"Offset along the normal when drawing on surfaces");
3853 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
3892 prop,
"Selection Mask",
"Only sculpt selected stroke points between other strokes");
3926 prop,
"Selection Mask",
"Only paint selected stroke points between other strokes");
3958 "Annotation Stroke Placement (3D View)",
3959 "How annotation strokes are orientated in 3D space");
3967 prop,
"Only Endpoints",
"Only use the first and last parts of the stroke for snapping");
3975 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
3991 prop,
"Auto Keying",
"Automatic keyframe insertion for objects, bones and masks");
4000 "Mode of automatic keyframe insertion for objects, bones and masks");
4008 "Add a new NLA Track + Strip for every loop/pass made over the animation "
4009 "to allow non-destructive tweaking");
4015 "Auto Keyframe Insert Keying Set",
4016 "Automatic keyframe insertion using active Keying Set only");
4024 "Cycle-Aware Keying",
4025 "For channels with cyclic extrapolation, keyframe insertion is automatically "
4026 "remapped inside the cycle time range, and keeps ends in sync. Curves newly added to "
4027 "actions with a Manual Frame Range and Cyclic Animation are automatically made cyclic.");
4035 prop,
"New Keyframe Type",
"Type of keyframes to create when inserting keyframes");
4051 prop,
"Sticky Selection Mode",
"Method for extending UV vertex selection");
4058 prop,
"UV Sync Selection",
"Keep UV and edit mode mesh selection in sync");
4066 prop,
"UV Local View",
"Display only faces with the currently displayed image assigned");
4130 {
SEQ_SCALE_TO_FIT,
"FIT", 0,
"Scale to Fit",
"Scale image to fit within the canvas"},
4131 {
SEQ_SCALE_TO_FILL,
"FILL", 0,
"Scale to Fill",
"Scale image to completely fill the canvas"},
4132 {
SEQ_STRETCH_TO_FILL,
"STRETCH", 0,
"Stretch to Fill",
"Stretch image to fill the canvas"},
4136 "Use Original Size",
4137 "Keep image at its original size"},
4138 {0,
nullptr, 0,
nullptr,
nullptr},
4142 {
SEQ_OVERLAP_EXPAND,
"EXPAND", 0,
"Expand",
"Move strips so transformed strips fit"},
4147 "Trim or split strips to resolve overlap"},
4152 "Move transformed strips to nearest free space to resolve overlap"},
4153 {0,
nullptr, 0,
nullptr,
nullptr},
4159 {
V3D_AROUND_CURSOR,
"CURSOR", ICON_PIVOT_CURSOR,
"2D Cursor",
"Pivot around the 2D cursor"},
4161 "INDIVIDUAL_ORIGINS",
4162 ICON_PIVOT_INDIVIDUAL,
4163 "Individual Origins",
4164 "Pivot around each selected island's own median point"},
4165 {0,
nullptr, 0,
nullptr,
nullptr},
4206 prop,
"Other Strips",
"Snap to borders and origins of deselected, visible strips");
4220 prop,
"Snap Current Frame to Strips",
"Snap current frame to strip start or end");
4245 {0,
"VIEW", 0,
"View",
"Measure brush size relative to the view"},
4250 "Measure brush size relative to the scene"},
4251 {0,
nullptr, 0,
nullptr,
nullptr},
4257 srna,
"Unified Paint Settings",
"Overrides for some of the active brush's settings");
4263 "Use Unified Radius",
4264 "Instead of per-brush radius, the radius is shared across brushes");
4269 "Use Unified Strength",
4270 "Instead of per-brush strength, the strength is shared across brushes");
4275 "Use Unified Weight",
4276 "Instead of per-brush weight, the weight is shared across brushes");
4281 prop,
"Use Unified Color",
"Instead of per-brush color, the color is shared across brushes");
4287 "Use Unified Input Samples",
4288 "Instead of per-brush input samples, the value is shared across brushes");
4302 prop,
nullptr,
"rna_UnifiedPaintSettings_unprojected_radius_set",
nullptr);
4315 prop,
"Strength",
"How powerful the effect of the brush is when applied");
4348 "Number of input samples to average together to smooth the brush stroke");
4355 prop,
"Radius Unit",
"Measure brush size relative to the view or the scene");
4368 {
CU_POLY,
"POLY", 0,
"Poly",
""},
4369 {
CU_BEZIER,
"BEZIER", 0,
"Bézier",
""},
4370 {0,
nullptr, 0,
nullptr,
nullptr},
4399 prop,
"Absolute Offset",
"Apply a fixed offset (don't scale by the radius)");
4405 prop,
"Project Onto Selected",
"Project the strokes only onto selected objects");
4430 "Minimum radius when the minimum pressure is applied (also the minimum when tapering)");
4439 "Radius to use when the maximum pressure is applied (or when a tablet isn't used)");
4446 prop,
"Radius Min",
"Taper factor for the radius of each point along the curve");
4453 prop,
"Radius Max",
"Taper factor for the radius of each point along the curve");
4464 {0,
nullptr, 0,
nullptr,
nullptr},
4477 "Normal to Surface",
4478 "Draw in a plane perpendicular to the surface"},
4482 "Tangent to Surface",
4483 "Draw in the surface plane"},
4488 "Draw in a plane aligned to the viewport"},
4489 {0,
nullptr, 0,
nullptr,
nullptr},
4510 {0,
nullptr, 0,
nullptr,
nullptr},
4615 {0,
nullptr, 0,
nullptr,
nullptr},
4619 {0,
"DEGREES", 0,
"Degrees",
"Use degrees for measuring angles and rotations"},
4621 {0,
nullptr, 0,
nullptr,
nullptr},
4633 prop,
"Unit System",
"The unit system to use for user interface controls");
4639 prop,
"Rotation Units",
"Unit to use for displaying/editing rotation values");
4646 "Scale to use when converting between Blender units and dimensions."
4647 " When working at microscopic or astronomical scale, a small or large unit scale"
4648 " respectively can be used to avoid numerical precision problems");
4680 prop,
"Temperature Unit",
"Unit that will be used to display temperature values");
4709 prop,
"Transparent",
"Deliver alpha blended surfaces in a separate pass");
4780 parm =
RNA_def_pointer(func,
"lightgroup",
"Lightgroup",
"",
"Newly created Lightgroup");
4782 parm =
RNA_def_string(func,
"name",
nullptr, 0,
"Name",
"Name of newly created lightgroup");
4796 "rna_ViewLayerLightgroup_name_get",
4797 "rna_ViewLayerLightgroup_name_length",
4798 "rna_ViewLayerLightgroup_name_set");
4831 prop,
"Material Override",
"Material to override all other materials in this view layer");
4845 "Override number of render samples for this view layer, "
4846 "0 will use the scene setting");
4853 "Z, Index, normal, UV and vector passes are only affected by surfaces with "
4854 "alpha transparency equal to or higher than this threshold");
4875 "rna_ViewLayer_active_aov_index_get",
4876 "rna_ViewLayer_active_aov_index_set",
4877 "rna_ViewLayer_active_aov_index_range");
4894 "rna_ViewLayer_active_lightgroup_index_get",
4895 "rna_ViewLayer_active_lightgroup_index_set",
4896 "rna_ViewLayer_active_lightgroup_index_range");
4905 "Cryptomatte Object",
4906 "Render cryptomatte object pass, for isolating objects in compositing");
4914 "Cryptomatte Material",
4915 "Render cryptomatte material pass, for isolating materials in compositing");
4922 "Cryptomatte Asset",
4923 "Render cryptomatte asset pass, for isolating groups of objects with the same parent");
4931 prop,
"Cryptomatte Levels",
"Sets how many unique objects can be distinguished per pixel");
4940 prop,
"Cryptomatte Accurate",
"Generate a more accurate cryptomatte pass");
4996 prop,
"Motion Blur",
"Render motion blur in this Layer, if enabled in the scene");
5267 srna,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5271 "Add a style module to scene render layer Freestyle settings");
5274 func,
"module",
"FreestyleModuleSettings",
"",
"Newly created style module");
5277 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_module_remove");
5279 func,
"Remove a style module from scene render layer Freestyle settings");
5281 parm =
RNA_def_pointer(func,
"module",
"FreestyleModuleSettings",
"",
"Style module to remove");
5297 srna,
"Line Sets",
"Line sets for associating lines and style parameters");
5302 prop,
"rna_FreestyleSettings_active_lineset_get",
nullptr,
nullptr,
nullptr);
5308 "rna_FreestyleSettings_active_lineset_index_get",
5309 "rna_FreestyleSettings_active_lineset_index_set",
5310 "rna_FreestyleSettings_active_lineset_index_range");
5317 parm =
RNA_def_string(func,
"name",
"LineSet", 0,
"",
"New name for the line set (not unique)");
5319 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Newly created line set");
5322 func =
RNA_def_function(srna,
"remove",
"rna_FreestyleSettings_lineset_remove");
5324 "Remove a line set from scene render layer Freestyle settings");
5326 parm =
RNA_def_pointer(func,
"lineset",
"FreestyleLineSet",
"",
"Line set to remove");
5341 "Select feature edges satisfying the given edge type conditions"},
5346 "Select feature edges not satisfying the given edge type conditions"},
5347 {0,
nullptr, 0,
nullptr,
nullptr},
5355 "Select feature edges satisfying at least one of edge type conditions"},
5360 "Select feature edges satisfying all edge type conditions"},
5361 {0,
nullptr, 0,
nullptr,
nullptr},
5369 "Select feature edges belonging to some object in the group"},
5374 "Select feature edges not belonging to any object in the group"},
5375 {0,
nullptr, 0,
nullptr,
nullptr},
5383 "Select feature edges satisfying the given face mark conditions"},
5388 "Select feature edges not satisfying the given face mark conditions"},
5389 {0,
nullptr, 0,
nullptr,
nullptr},
5393 {0,
"ONE", 0,
"One Face",
"Select a feature edge if either of its adjacent faces is marked"},
5398 "Select a feature edge if both of its adjacent faces are marked"},
5399 {0,
nullptr, 0,
nullptr,
nullptr},
5407 "Advanced mode for using style modules written in Python"},
5412 "Basic mode for interactive style parameter editing"},
5413 {0,
nullptr, 0,
nullptr,
nullptr},
5422 "Quantitative Invisibility",
5423 "Select feature edges within a range of quantitative invisibility (QI) values"},
5424 {0,
nullptr, 0,
nullptr,
nullptr},
5431 srna,
"Freestyle Line Set",
"Line set for associating lines and style parameters");
5440 "rna_FreestyleLineSet_linestyle_get",
5441 "rna_FreestyleLineSet_linestyle_set",
5456 prop,
"Render",
"Enable or disable this line set during stroke rendering");
5462 prop,
"Selection by Visibility",
"Select feature edges based on visibility");
5468 prop,
"Selection by Edge Types",
"Select feature edges based on edge types");
5474 prop,
"Selection by Collection",
"Select feature edges based on a collection of objects");
5480 "Selection by Image Border",
5481 "Select feature edges by image border (less memory consumption)");
5494 "Edge Type Negation",
5495 "Specify either inclusion or exclusion of feature edges selected by edge types");
5503 "Edge Type Combination",
5504 "Specify a logical combination of selection conditions on feature edge types");
5512 prop,
"Collection",
"A collection of objects based on which feature edges are selected");
5519 "Collection Negation",
5520 "Specify either inclusion or exclusion of feature edges belonging to a "
5521 "collection of objects");
5529 "Face Mark Negation",
5530 "Specify either inclusion or exclusion of feature edges selected by face marks");
5537 "Face Mark Condition",
5538 "Specify a feature edge selection condition based on face marks");
5546 "Select silhouettes (edges at the boundary of visible and hidden faces)");
5558 "Select crease edges (those between two faces making an angle smaller "
5559 "than the Crease Angle)");
5567 "Select ridges and valleys (boundary lines between convex and concave areas of surface)");
5573 prop,
"Suggestive Contour",
"Select suggestive contours (almost silhouette/contour edges)");
5591 "Select external contours (outer silhouettes of occluding and occluded objects)");
5597 prop,
"Edge Mark",
"Select edge marks (edges annotated by Freestyle edge marks)");
5661 prop,
"Visibility",
"Determine how to use visibility for feature edge selection");
5681 srna,
"Freestyle Module",
"Style module configuration for specifying a style module");
5692 prop,
"Use",
"Enable or disable this style module during stroke rendering");
5701 srna,
"Freestyle Settings",
"Freestyle settings for a ViewLayer data-block");
5707 prop,
"Style Modules",
"A list of style modules (to be applied from top to bottom)");
5739 prop,
"Face Smoothness",
"Take face smoothness into account in view map calculation");
5747 "Keep the computed view map and avoid recalculating it if mesh geometry is unchanged");
5756 "Renders Freestyle output to a separate pass instead of overlaying it on the Combined pass");
5771 prop,
"Kr Derivative Epsilon",
"Kr derivative epsilon for computing suggestive contours");
5802 "Object to use as cage "
5803 "instead of calculating the cage from the active object with cage extrusion");
5837 "The maximum ray distance for matching points between the active and "
5838 "selected objects. If zero, there is no limit.");
5847 "Inflate the active object by the specified distance for baking. This helps matching to "
5848 "points nearer to the outside of the selected object meshes.");
5901 "Selected to Active",
5902 "Bake shading on the surface of selected objects to the active object");
5913 prop,
"Split Materials",
"Split external images per material (external only)");
5921 "Automatically name the output file with the pass type (external only)");
5987 func,
"name",
"ViewLayer", 0,
"",
"New name for the view layer (not unique)");
5989 parm =
RNA_def_pointer(func,
"result",
"ViewLayer",
"",
"Newly created view layer");
5995 parm =
RNA_def_pointer(func,
"layer",
"ViewLayer",
"",
"View layer to remove");
6003 func,
"from_index", -1, INT_MIN, INT_MAX,
"From Index",
"Index to move", 0, 10000);
6005 parm =
RNA_def_int(func,
"to_index", -1, INT_MIN, INT_MAX,
"To Index",
"Target index", 0, 10000);
6017 srna,
"Scene Render View",
"Render viewpoint for 3D stereo and multiview rendering");
6037 "Suffix to identify the cameras to use, and added to the render images for this view");
6064 "rna_RenderSettings_active_view_index_get",
6065 "rna_RenderSettings_active_view_index_set",
6066 "rna_RenderSettings_active_view_index_range");
6073 "rna_RenderSettings_active_view_get",
6074 "rna_RenderSettings_active_view_set",
6084 parm =
RNA_def_string(func,
"name",
"RenderView", 0,
"",
"New name for the marker (not unique)");
6086 parm =
RNA_def_pointer(func,
"result",
"SceneRenderView",
"",
"Newly created render view");
6092 parm =
RNA_def_pointer(func,
"view",
"SceneRenderView",
"",
"Render view to remove");
6108 "Render views for left and right eyes as two differently filtered colors in a single image "
6109 "(anaglyph glasses are required)"},
6114 "Render views for left and right eyes interlaced in a single image (3D-ready monitor is "
6120 "Render views for left and right eyes side-by-side"},
6125 "Render views for left and right eyes one above another"},
6126 {0,
nullptr, 0,
nullptr,
nullptr},
6173# ifdef WITH_OPENJPEG
6177 {0,
nullptr, 0,
nullptr,
nullptr},
6186 {0,
nullptr, 0,
nullptr,
nullptr},
6192 {0,
nullptr, 0,
nullptr,
nullptr},
6211 "rna_ImageFormatSettings_file_format_set",
6212 "rna_ImageFormatSettings_file_format_itemf");
6223 "Choose BW for saving grayscale images, RGB for saving red, green and blue channels, "
6224 "and RGBA for saving red, green, blue and alpha channels");
6239 prop,
"Quality",
"Quality for image formats that support lossy compression");
6248 "Amount of time to determine best compression: "
6249 "0 = no compression with fast file output, "
6250 "100 = maximum lossless compression with slow file output");
6256 prop,
"Preview",
"When rendering animations, save JPG preview images in same directory");
6272# ifdef WITH_OPENJPEG
6277 prop,
"YCC",
"Save luminance-chrominance-chrominance channels instead of RGB colors");
6334 prop,
nullptr,
nullptr,
"rna_ImageFormatSettings_views_format_itemf");
6348 prop,
"Color Management",
"Which color management settings to use for file saving");
6350 prop,
nullptr,
"rna_ImageFormatSettings_color_management_set",
nullptr);
6356 prop,
"View Settings",
"Color management settings applied on image before saving");
6361 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
6369 prop,
"rna_ImageFormatSettings_has_linear_colorspace_get",
nullptr);
6372 prop,
"Has Linear Color Space",
"File format expects linear color space");
6383 {FFMPEG_MPEG1,
"MPEG1", 0,
"MPEG-1",
""},
6384 {FFMPEG_MPEG2,
"MPEG2", 0,
"MPEG-2",
""},
6385 {FFMPEG_MPEG4,
"MPEG4", 0,
"MPEG-4",
""},
6386 {FFMPEG_AVI,
"AVI", 0,
"AVI",
""},
6387 {FFMPEG_MOV,
"QUICKTIME", 0,
"QuickTime",
""},
6388 {FFMPEG_DV,
"DV", 0,
"DV",
""},
6389 {FFMPEG_OGG,
"OGG", 0,
"Ogg",
""},
6390 {FFMPEG_MKV,
"MKV", 0,
"Matroska",
""},
6391 {FFMPEG_FLV,
"FLASH", 0,
"Flash",
""},
6392 {FFMPEG_WEBM,
"WEBM", 0,
"WebM",
""},
6393 {0,
nullptr, 0,
nullptr,
nullptr},
6397 {AV_CODEC_ID_NONE,
"NONE", 0,
"No Video",
"Disables video output, for audio-only renders"},
6398 {AV_CODEC_ID_DNXHD,
"DNXHD", 0,
"DNxHD",
""},
6399 {AV_CODEC_ID_DVVIDEO,
"DV", 0,
"DV",
""},
6400 {AV_CODEC_ID_FFV1,
"FFV1", 0,
"FFmpeg video codec #1",
""},
6401 {AV_CODEC_ID_FLV1,
"FLASH", 0,
"Flash Video",
""},
6402 {AV_CODEC_ID_H264,
"H264", 0,
"H.264",
""},
6403 {AV_CODEC_ID_HUFFYUV,
"HUFFYUV", 0,
"HuffYUV",
""},
6404 {AV_CODEC_ID_MPEG1VIDEO,
"MPEG1", 0,
"MPEG-1",
""},
6405 {AV_CODEC_ID_MPEG2VIDEO,
"MPEG2", 0,
"MPEG-2",
""},
6406 {AV_CODEC_ID_MPEG4,
"MPEG4", 0,
"MPEG-4 (divx)",
""},
6407 {AV_CODEC_ID_PNG,
"PNG", 0,
"PNG",
""},
6408 {AV_CODEC_ID_QTRLE,
"QTRLE", 0,
"QuickTime Animation",
""},
6409 {AV_CODEC_ID_THEORA,
"THEORA", 0,
"Theora",
""},
6410 {AV_CODEC_ID_VP9,
"WEBM", 0,
"WebM / VP9",
""},
6411 {AV_CODEC_ID_AV1,
"AV1", 0,
"AV1",
""},
6412 {0,
nullptr, 0,
nullptr,
nullptr},
6423 "Recommended if you have lots of time and want the best compression efficiency"},
6424 {
FFM_PRESET_GOOD,
"GOOD", 0,
"Good",
"The default and recommended for most applications"},
6426 {0,
nullptr, 0,
nullptr,
nullptr},
6434 "Configure constant bit rate, rather than constant output quality"},
6442 {0,
nullptr, 0,
nullptr,
nullptr},
6446 {AV_CODEC_ID_NONE,
"NONE", 0,
"No Audio",
"Disables audio output, for video-only renders"},
6447 {AV_CODEC_ID_AAC,
"AAC", 0,
"AAC",
""},
6448 {AV_CODEC_ID_AC3,
"AC3", 0,
"AC3",
""},
6449 {AV_CODEC_ID_FLAC,
"FLAC", 0,
"FLAC",
""},
6450 {AV_CODEC_ID_MP2,
"MP2", 0,
"MP2",
""},
6451 {AV_CODEC_ID_MP3,
"MP3", 0,
"MP3",
""},
6452 {AV_CODEC_ID_OPUS,
"OPUS", 0,
"Opus",
""},
6453 {AV_CODEC_ID_PCM_S16LE,
"PCM", 0,
"PCM",
""},
6454 {AV_CODEC_ID_VORBIS,
"VORBIS", 0,
"Vorbis",
""},
6455 {0,
nullptr, 0,
nullptr,
nullptr},
6467 "Set audio channels to 5.1 surround sound"},
6472 "Set audio channels to 7.1 surround sound"},
6473 {0,
nullptr, 0,
nullptr,
nullptr},
6528 "Keyframe Interval",
6529 "Distance between key frames, also known as GOP size; "
6530 "influences file size and seekability");
6540 "Maximum number of B-frames between non-B-frames; influences file size and seekability");
6571 "Constant Rate Factor (CRF); tradeoff between video quality and file size");
6580 prop,
"Encoding Speed",
"Tradeoff between encoding speed and compression ratio");
6645 {0,
nullptr, 0,
nullptr,
nullptr},
6653 "Use pixels from adjacent faces across UV seams"},
6654 {
R_BAKE_EXTEND,
"EXTEND", 0,
"Extend",
"Extend border pixels outwards"},
6655 {0,
nullptr, 0,
nullptr,
nullptr},
6659 {0,
"AUTO", 0,
"Automatic",
"Automatic pixel size, depends on the user interface scale"},
6664 {0,
nullptr, 0,
nullptr,
nullptr},
6672 "Automatically determine the number of threads, based on CPUs"},
6673 {
R_FIXED_THREADS,
"FIXED", 0,
"Fixed",
"Manually determine the number of threads"},
6674 {0,
nullptr, 0,
nullptr,
nullptr},
6678 {0,
"BLENDER_EEVEE_NEXT", 0,
"EEVEE",
""},
6679 {0,
nullptr, 0,
nullptr,
nullptr},
6687 "Specify unit line thickness in pixels"},
6692 "Unit line thickness is scaled by the proportion of the present vertical image "
6693 "resolution to 480 pixels"},
6694 {0,
nullptr, 0,
nullptr,
nullptr},
6702 "Single stereo camera system, adjust the stereo settings in the camera panel"},
6707 "Multi camera system, adjust the cameras individually"},
6708 {0,
nullptr, 0,
nullptr,
nullptr},
6712 {
SCE_MB_START,
"START", 0,
"Start on Frame",
"The shutter opens at the current frame"},
6717 "The shutter is open during the current frame"},
6718 {
SCE_MB_END,
"END", 0,
"End on Frame",
"The shutter closes at the current frame"},
6719 {0,
nullptr, 0,
nullptr,
nullptr},
6725 {0,
nullptr, 0,
nullptr,
nullptr},
6729 {0,
"SCENE", 0,
"Scene",
"Use metadata from the current scene"},
6734 "Use metadata from the strips in the sequencer"},
6735 {0,
nullptr, 0,
nullptr,
nullptr},
6741 {0,
nullptr, 0,
nullptr,
nullptr},
6749 "Full precision for final renders, half precision otherwise"},
6751 {0,
nullptr, 0,
nullptr,
nullptr},
6775 prop,
"Resolution X",
"Number of horizontal pixels in the rendered image");
6784 prop,
"Resolution Y",
"Number of vertical pixels in the rendered image");
6808 "Horizontal aspect ratio - for anamorphic or non-square pixel output");
6817 prop,
"Pixel Aspect Y",
"Vertical aspect ratio - for anamorphic or non-square pixel output");
6865 "Amount of dithering noise added to the rendered image to break up banding");
6873 prop,
"Filter Size",
"Width over which the reconstruction filter combines samples");
6881 "World background is transparent, for compositing the render over another background");
6897 "Maximum number of CPU cores to use simultaneously while rendering "
6898 "(for multi-core/CPU systems)");
6924 "Motion Blur Position",
6925 "Offset for the shutter's time interval, "
6926 "allows to change the motion blur trails");
6934 prop,
"Shutter Curve",
"Curve defining the shutter's openness over time");
6946 prop,
"Additional Subdivision",
"Additional subdivision along the curves");
6953 "High Quality Normals",
6954 "Use high quality tangent space at the cost of lower performance");
6962 prop,
"Render Region",
"Render a user-defined render region, within the frame size");
6997 prop,
"Crop to Render Region",
"Crop the rendered frame to the defined render region size");
7006 "Create empty placeholder files while rendering frames (similar to Unix 'touch')");
7019 "Process the render result through the compositing pipeline, "
7020 "if compositing nodes are enabled");
7028 "Process the render (and composited) result through the video sequence "
7029 "editor pipeline, if sequencer strips exist");
7038 "Add the file format extensions to the rendered file name (eg: filename + .jpg)");
7052 prop,
"rna_SceneRender_file_ext_get",
"rna_SceneRender_file_ext_length",
nullptr);
7068 "Lock interface during rendering in favor of giving more memory to the renderer");
7075 "Directory/name to save animations, # characters define the position "
7076 "and padding of frame numbers");
7086 "Save render cache to EXR files (useful for heavy compositing, "
7087 "Note: affects indirectly rendered scenes)");
7101 "Selected to Active",
7102 "Bake shading on the surface of selected objects to the active object");
7126 prop,
"Bias",
"Bias towards faces further away from the object (in Blender units)");
7137 prop,
"Low Resolution Mesh",
"Calculate heights against unsubdivided low resolution mesh");
7144 prop,
"Samples",
"Number of samples used for ambient occlusion baking from multires");
7156 "Instead of automatically normalizing to the range 0 to 1, "
7157 "apply a user scale to the derivative map");
7164 prop,
"Stamp Time",
"Include the rendered frame timecode as HH:MM:SS.FF in image metadata");
7180 prop,
"Stamp Frame",
"Include the rendered frame range in image/video metadata");
7186 prop,
"Stamp Camera",
"Include the name of the active camera in image metadata");
7192 prop,
"Stamp Lens",
"Include the active camera's lens in image metadata");
7198 prop,
"Stamp Scene",
"Include the name of the active scene in image/video metadata");
7209 prop,
"Stamp Marker",
"Include the name of the last marker in image metadata");
7215 prop,
"Stamp Filename",
"Include the .blend filename in image/video metadata");
7221 "Stamp Sequence Strip",
7222 "Include the name of the foreground sequence strip in image metadata");
7238 prop,
"Stamp Output",
"Render the stamp info text in the rendered image");
7244 prop,
"Stamp Labels",
"Display stamp labels (\"Camera\" in front of camera name, etc.)");
7256 prop,
"Stamp Peak Memory",
"Include the peak memory usage in image metadata");
7262 prop,
"Stamp Hostname",
"Include the hostname of the machine that rendered the frame");
7291 prop,
"Sequencer Preview Shading",
"Display method used in the sequencer view");
7297 "Override Scene Settings",
7298 "Use workbench render settings from the sequencer scene, instead of "
7299 "each individual scene used in the strip");
7305 "Render Single Layer",
7306 "Only render the active layer. Only affects rendering from the "
7307 "interface, ignored for rendering from command line.");
7320 "rna_RenderSettings_stereoViews_begin",
7321 "rna_iterator_listbase_next",
7322 "rna_iterator_listbase_end",
7323 "rna_iterator_listbase_get",
7347 "rna_RenderSettings_engine_get",
7348 "rna_RenderSettings_engine_set",
7349 "rna_RenderSettings_engine_itemf");
7358 prop,
"Multiple Engines",
"More than one rendering engine is available");
7364 prop,
"Use Spherical Stereo",
"Active render engine supports spherical stereo rendering");
7370 prop,
"Use Simplify",
"Enable simplification of scene for quicker preview renders");
7389 prop,
"Simplify Subdivision",
"Global maximum subdivision level during rendering");
7395 prop,
"Simplify Child Particles",
"Global child particles percentage during rendering");
7401 prop,
"Simplify Volumes",
"Resolution percentage of volume objects in viewport");
7409 "Skip computing custom normals and face corner normals for displaying "
7410 "meshes in the viewport");
7422 prop,
"Playback Only",
"Simplify Grease Pencil only during animation playback");
7456 "Keep render data around for faster re-renders and animation renders, "
7457 "at the cost of increased memory usage");
7465 prop,
"Line Thickness Mode",
"Line thickness mode for Freestyle line drawing");
7492 prop,
"Compositor Precision",
"The precision of compositor intermediate result");
7498 prop,
"Use New CPU Compositor",
"Use the new CPU compositor implementation");
7539 parm =
RNA_def_string(func,
"name",
"Marker", 0,
"",
"New name for the marker (not unique)");
7547 "The frame for the new marker",
7550 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Newly created timeline marker");
7556 parm =
RNA_def_pointer(func,
"marker",
"TimelineMarker",
"",
"Timeline marker to remove");
7583 RNA_def_string(func,
"idname",
"KeyingSet", 64,
"IDName",
"Internal identifier of Keying Set");
7584 RNA_def_string(func,
"name",
"KeyingSet", 64,
"Name",
"User visible name of Keying Set");
7586 parm =
RNA_def_pointer(func,
"keyingset",
"KeyingSet",
"",
"Newly created Keying Set");
7593 "rna_Scene_active_keying_set_get",
7594 "rna_Scene_active_keying_set_set",
7598 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7604 "rna_Scene_active_keying_set_index_get",
7605 "rna_Scene_active_keying_set_index_set",
7609 "Active Keying Set Index",
7610 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7631 "rna_Scene_active_keying_set_get",
7632 "rna_Scene_active_keying_set_set",
7636 prop,
"Active Keying Set",
"Active Keying Set used to insert/delete keyframes");
7642 "rna_Scene_active_keying_set_index_get",
7643 "rna_Scene_active_keying_set_index_set",
7647 "Active Keying Set Index",
7648 "Current Keying Set index (negative for 'builtin' and positive for 'absolute')");
7659 srna =
RNA_def_struct(brna,
"SelectedUvElement",
"PropertyGroup");
7701 "Center Title Safe Margins",
7702 "Safe area for text and graphics in a different aspect ratio");
7710 "Center Action Safe Margins",
7711 "Safe area for general elements in a different aspect ratio");
7729 prop,
"Light Direction",
"Direction of the light for shadows and highlights");
7749 prop,
"Distance",
"Distance of object that contribute to the Cavity/Edge effect");
7765 prop,
"Render Anti-Aliasing",
"Method of anti-aliasing when rendering final image");
7771 prop,
"Viewport Anti-Aliasing",
"Method of anti-aliasing when rendering 3d viewport");
7787 srna,
"EEVEE Raytrace Options",
"Quality options for the raytracing pipeline");
7793 "Determines the number of rays per pixel. "
7794 "Higher resolution uses more memory.");
7801 prop,
"Denoise",
"Enable noise reduction techniques for raytraced effects");
7814 prop,
"Temporal Accumulation",
"Accumulate samples by reprojecting last tracing results");
7821 prop,
"Bilateral Filter",
"Blur the resolved radiance using a bilateral filter");
7828 "Screen-Trace Thickness",
7829 "Surface thickness used to detect intersection when using screen-tracing");
7837 "Raytrace Max Roughness",
7838 "Maximum roughness to use the tracing pipeline for. Higher "
7839 "roughness surfaces will use fast GI approximation. A value of 1 will "
7840 "disable fast GI approximation.");
7847 prop,
"Screen-Trace Precision",
"Precision of the screen space ray-tracing");
7859 {128,
"128", 0,
"128 px",
""},
7860 {256,
"256", 0,
"256 px",
""},
7861 {512,
"512", 0,
"512 px",
""},
7862 {1024,
"1024", 0,
"1024 px",
""},
7863 {2048,
"2048", 0,
"2048 px",
""},
7864 {4096,
"4096", 0,
"4096 px",
""},
7865 {0,
nullptr, 0,
nullptr,
nullptr},
7869 {16,
"16", 0,
"16 MB",
""},
7870 {32,
"32", 0,
"32 MB",
""},
7871 {64,
"64", 0,
"64 MB",
""},
7872 {128,
"128", 0,
"128 MB",
""},
7873 {256,
"256", 0,
"256 MB",
""},
7874 {512,
"512", 0,
"512 MB",
""},
7875 {1024,
"1024", 0,
"1 GB",
""},
7876 {0,
nullptr, 0,
nullptr,
nullptr},
7880 {8,
"8", 0,
"8 px",
""},
7881 {16,
"16", 0,
"16 px",
""},
7882 {32,
"32", 0,
"32 px",
""},
7883 {64,
"64", 0,
"64 px",
""},
7884 {0,
nullptr, 0,
nullptr,
nullptr},
7892 "Use light probes to find scene intersection"},
7897 "Raytrace against the depth buffer. Fallback to light probes for invalid rays."},
7898 {0,
nullptr, 0,
nullptr,
nullptr},
7903 "AMBIENT_OCCLUSION_ONLY",
7905 "Ambient Occlusion",
7906 "Use ambient occlusion instead of full global illumination"},
7908 "GLOBAL_ILLUMINATION",
7910 "Global Illumination",
7911 "Compute global illumination taking into account light bouncing off surrounding objects"},
7912 {0,
nullptr, 0,
nullptr,
nullptr},
7923 "Number of times the light is reinjected inside light grids, "
7924 "0 disable indirect diffuse light");
7937 "Irradiance Visibility Size",
7938 "Size of the shadow map applied to each irradiance sample");
7944 "Clamp pixel intensity to reduce noise inside glossy reflections "
7945 "from reflection cubemaps (0 to disable)");
7952 "Irradiance Pool Size",
7953 "Size of the irradiance pool, "
7954 "a bigger pool size allows for more irradiance grid in the scene "
7955 "but might not fit into GPU memory and decrease performance");
7977 "Viewport Denoising",
7978 "Denoise image using temporal reprojection "
7979 "(can leave some ghosting)");
7987 prop,
"Tracing Method",
"Select the tracing method used to find scene-ray intersections");
7993 "Jittered Shadows (Viewport)",
7994 "Enable jittered shadows on the viewport. (Jittered shadows are always "
7995 "enabled for final renders).");
8001 "Clamp Surface Direct",
8002 "If non-zero, the maximum value for lights contribution on a surface. "
8003 "Higher values will be scaled down to avoid too "
8004 "much noise and slow convergence at the cost of accuracy. "
8005 "Used by light objects.");
8012 "Clamp Surface Indirect",
8013 "If non-zero, the maximum value for indirect lighting on surface. "
8014 "Higher values will be scaled down to avoid too "
8015 "much noise and slow convergence at the cost of accuracy. "
8016 "Used by ray-tracing and light-probes.");
8024 "Clamp Volume Direct",
8025 "If non-zero, the maximum value for lights contribution in volumes. "
8026 "Higher values will be scaled down to avoid too "
8027 "much noise and slow convergence at the cost of accuracy. "
8028 "Used by light objects.");
8035 "Clamp Volume Indirect",
8036 "If non-zero, the maximum value for indirect lighting in volumes. "
8037 "Higher values will be scaled down to avoid too "
8038 "much noise and slow convergence at the cost of accuracy. "
8039 "Used by light-probes.");
8063 "Control the quality of the volumetric effects. "
8064 "Higher resolution uses more memory.");
8071 "Number of steps to compute volumetric effects. "
8072 "Higher step count increase VRAM usage and quality.");
8079 prop,
"Exponential Sampling",
"Distribute more samples closer to the camera");
8085 "Volume Max Ray Depth",
8086 "Maximum surface intersection count used by the accurate volume "
8087 "intersection method. Will create artifact if it is exceeded. "
8088 "Higher count increases VRAM usage.");
8103 "Volumetric Shadows",
8104 "Cast shadows from volumetric materials onto volumetric materials (Very expensive)");
8111 prop,
"Volumetric Shadow Samples",
"Number of samples to compute volumetric shadowing");
8118 "Volume Custom Range",
8119 "Enable custom start and end clip distances for volume computation");
8126 "Ambient Occlusion",
8127 "Enable ambient occlusion to simulate medium scale indirect shadowing");
8142 prop,
"Distance",
"Distance of object that contribute to the ambient occlusion effect");
8153 "Fast GI Approximation",
8154 "Use faster global illumination technique for high roughness surfaces");
8162 "Geometric thickness of the surfaces when computing fast GI and ambient occlusion. "
8163 "Reduces light leaking and missing contact occlusion.");
8173 "Angular thickness of the surfaces when computing fast GI and ambient occlusion. "
8174 "Reduces energy loss and missing occlusion of far geometry.");
8208 "If non-zero, the maximum distance at which other surfaces will "
8209 "contribute to the fast GI approximation");
8215 prop,
"Bias",
"Bias the shading normal to reduce self intersection artifacts");
8226 "Control the quality of the fast GI lighting. "
8227 "Higher resolution uses more memory.");
8235 prop,
"Max Size",
"Max size of the bokeh shape for the depth of field (lower is faster)");
8242 prop,
"Sprite Threshold",
"Brightness threshold for using sprite base depth of field");
8250 "Neighbor Rejection",
8251 "Maximum brightness to consider when rejecting bokeh sprites "
8252 "based on neighborhood (lower is faster)");
8262 "Jitter camera position to create accurate blurring "
8263 "using render samples (only for final render)");
8270 "Apply blur to each jittered sample to reduce "
8271 "under-sampling artifacts");
8280 "Lower values will reduce background"
8281 " bleeding onto foreground elements");
8297 "Controls accuracy of motion blur, "
8298 "more steps means longer render time");
8315 "Size of the shadow pool, "
8316 "a bigger pool size allows for more shadows in the scene "
8317 "but might not fit into GPU memory");
8324 prop,
"Shadow Ray Count",
"Amount of shadow ray to trace for each light");
8331 prop,
"Shadow Step Count",
"Amount of shadow map sample per shadow ray");
8338 "Minimum light intensity for a light to contribute to the lighting");
8349 "Internally render past the image border to avoid "
8350 "screen-space effects disappearing");
8357 "Percentage of render size to add as overscan to the "
8358 "internal render buffers");
8366 prop,
"Reflection Trace Options",
"EEVEE settings for tracing reflections");
8378 prop,
"Shadows Resolution Scale",
"Resolution percentage of shadow maps");
8398 "Anti-Aliasing Threshold",
8399 "Threshold for edge detection algorithm (higher values might over-blur "
8400 "some part of the image)");
8415 "Fast interactive editing through native Hydra integration"},
8420 "Export scene through USD file, for accurate comparison with USD file export"},
8421 {0,
nullptr, 0,
nullptr,
nullptr},
8431 prop,
"Export Method",
"How to export the Blender scene to the Hydra render engine");
8444 {0,
"NONE", 0,
"None",
"No distance attenuation"},
8445 {1,
"INVERSE", 0,
"Inverse",
"Inverse distance model"},
8446 {2,
"INVERSE_CLAMPED", 0,
"Inverse Clamped",
"Inverse distance model with clamping"},
8447 {3,
"LINEAR", 0,
"Linear",
"Linear distance model"},
8448 {4,
"LINEAR_CLAMPED", 0,
"Linear Clamped",
"Linear distance model with clamping"},
8449 {5,
"EXPONENT", 0,
"Exponential",
"Exponential distance model"},
8453 "Exponential Clamped",
8454 "Exponential distance model with clamping"},
8455 {0,
nullptr, 0,
nullptr,
nullptr},
8459 {0,
"NONE", 0,
"Play Every Frame",
"Do not sync, play every frame"},
8460 {
SCE_FRAME_DROP,
"FRAME_DROP", 0,
"Frame Dropping",
"Drop frames if playback is too slow"},
8461 {
AUDIO_SYNC,
"AUDIO_SYNC", 0,
"Sync to Audio",
"Sync to audio playback, dropping frames"},
8462 {0,
nullptr, 0,
nullptr,
nullptr},
8469 "Scene data-block, consisting in objects and "
8470 "defining time and render related settings");
8502 "rna_Scene_objects_begin",
8503 "rna_Scene_objects_next",
8504 "rna_Scene_objects_end",
8505 "rna_Scene_objects_get",
8521 "Current frame, to update animation data from Python frame_set() instead");
8538 prop,
"rna_Scene_frame_float_get",
"rna_Scene_frame_float_set",
nullptr);
8565 "Number of frames to skip forward while rendering/playing back each frame");
8573 prop,
"Current Frame Final",
"Current frame with subframe and time remapping applied");
8579 "Lock Frame Selection",
8580 "Don't allow frame to be selected with mouse outside of frame range");
8590 "Use Preview Range",
8591 "Use an alternative start/end frame range for animation playback and view renders");
8600 prop,
"Preview Range Start Frame",
"Alternative start frame for UI playback");
8608 prop,
"Preview Range End Frame",
"Alternative end frame for UI playback");
8616 prop,
"Show Subframe",
"Show current scene subframe and allow set it using interface tools");
8623 prop,
"Only Show Selected",
"Only include channels relating to selected objects and data");
8643 "Whether there is any action referenced by NLA being edited (strictly read-only)");
8651 prop,
"Frame Dropping",
"Play back dropping frames if frame display is too slow");
8658 "Custom Simulation Range",
8659 "Use a simulation range that is different from the scene range for "
8660 "simulation nodes that don't override the frame range themselves");
8710 "rna_Scene_all_keyingsets_begin",
8711 "rna_Scene_all_keyingsets_next",
8712 "rna_iterator_listbase_end",
8713 "rna_iterator_listbase_get",
8722 "All Keying Sets available for use (Builtins and Absolute Keying Sets for this Scene)");
8780 prop,
"Timeline Markers",
"Markers used in all timelines for the current scene");
8786 "rna_Scene_transform_orientation_slots_begin",
8787 "rna_iterator_array_next",
8788 "rna_iterator_array_end",
8789 "rna_iterator_array_get",
8790 "rna_Scene_transform_orientation_slots_length",
8808 prop,
"Play Audio",
"Play back of audio from Sequence Editor, otherwise mute audio");
8817 "Play back and sync with audio clock, dropping frames if frame display is too slow");
8824 prop,
"Audio Scrubbing",
"Play audio from Sequence Editor while scrubbing");
8832 prop,
"Speed of Sound",
"Speed of sound for Doppler effect calculation");
8847 prop,
"Distance Model",
"Distance model for distance attenuation calculation");
8858 func =
RNA_def_function(srna,
"update_render_engine",
"rna_Scene_update_render_engine");
8863 func =
RNA_def_function(srna,
"statistics",
"rna_Scene_statistics_string_get");
8865 parm =
RNA_def_pointer(func,
"view_layer",
"ViewLayer",
"View Layer",
"");
8867 parm =
RNA_def_string(func,
"statistics",
nullptr, 0,
"Statistics",
"");
8875 prop,
nullptr,
nullptr,
nullptr,
"rna_GPencil_datablocks_annotations_poll");
8879 prop,
"Annotations",
"Grease Pencil data-block used for annotations in the 3D view");
8888 "Active Movie Clip",
8889 "Active Movie Clip that can be used by motion tracking constraints "
8890 "or as a camera's background image");
8898 prop,
"View Settings",
"Color management settings applied on image before saving");
8904 prop,
"Display Settings",
"Settings of device saved image would be displayed on");
8910 prop,
"Sequencer Color Space Settings",
"Settings of color space sequencer is working in");
8927 "Scene root collection that owns all the objects and other collections "
8928 "instantiated in the scene");
struct KeyingSet * BKE_keyingset_add(struct ListBase *list, const char idname[], const char name[], short flag, short keyingflag)
void BKE_rotMode_change_values(float quat[4], float eul[3], float axis[3], float *angle, short oldMode, short newMode)
void BKE_brush_scale_size(int *r_brush_size, float new_unprojected_radius, float old_unprojected_radius)
void BKE_brush_scale_unprojected_radius(float *unprojected_radius, int new_brush_size, int old_brush_size)
#define FOREACH_COLLECTION_OBJECT_RECURSIVE_END
#define FOREACH_SCENE_OBJECT_END
void BKE_scene_objects_iterator_end(BLI_Iterator *iter)
#define FOREACH_COLLECTION_OBJECT_RECURSIVE_BEGIN(_collection, _object)
#define FOREACH_SCENE_OBJECT_BEGIN(scene, _instance)
void BKE_scene_objects_iterator_begin(BLI_Iterator *iter, void *data_in)
void BKE_scene_objects_iterator_next(BLI_Iterator *iter)
Depsgraph * CTX_data_depsgraph_pointer(const bContext *C)
Object * CTX_data_active_object(const bContext *C)
Scene * CTX_data_scene(const bContext *C)
Main * CTX_data_main(const bContext *C)
View3D * CTX_wm_view3d(const bContext *C)
ViewLayer * CTX_data_view_layer(const bContext *C)
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)
Mesh * BKE_mesh_from_object(Object *ob)
#define CMP_NODE_OUTPUT_FILE
Paint * BKE_paint_get_active(Scene *sce, ViewLayer *view_layer)
Brush * BKE_paint_brush(Paint *paint)
void BKE_paint_invalidate_overlay_all()
int BKE_ptcache_object_reset(struct Scene *scene, struct Object *ob, int mode)
#define PTCACHE_RESET_DEPSGRAPH
void BKE_reportf(ReportList *reports, eReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
void BKE_report(ReportList *reports, eReportType type, const char *message)
bool BKE_scene_has_view_layer(const Scene *scene, const ViewLayer *layer)
int BKE_render_num_threads(const RenderData *r)
#define SETLOOPER_SET_ONLY(_sce_basis, _sce_iter, _base)
TransformOrientation * BKE_scene_transform_orientation_find(const Scene *scene, int index)
int BKE_scene_orientation_slot_get_index(const TransformOrientationSlot *orient_slot)
bool BKE_scene_use_spherical_stereo(Scene *scene)
void BKE_scene_orientation_slot_set_index(TransformOrientationSlot *orient_slot, int orientation)
bool BKE_scene_remove_render_view(Scene *scene, SceneRenderView *srv)
SceneRenderView * BKE_scene_add_render_view(Scene *sce, const char *name)
float BKE_scene_frame_to_ctime(const Scene *scene, int frame)
int BKE_unit_base_of_type_get(int system, int type)
const char * BKE_unit_identifier_get(const void *usys_pt, int index)
bool BKE_unit_is_suppressed(const void *usys_pt, int index)
void BKE_unit_system_get(int system, int type, const void **r_usys_pt, int *r_len)
const char * BKE_unit_display_name_get(const void *usys_pt, int index)
#define BLI_assert_unreachable()
BLI_INLINE bool BLI_listbase_is_empty(const struct ListBase *lb)
#define LISTBASE_FOREACH(type, var, list)
bool BLI_listbase_move_index(ListBase *listbase, int from, int to) ATTR_NONNULL()
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
bool BLI_remlink_safe(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
void void BLI_freelistN(struct ListBase *listbase) ATTR_NONNULL(1)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
int BLI_findindex(const struct ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
int BLI_listbase_count(const struct 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_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_id_tag_update_ex(Main *bmain, ID *id, unsigned int flags)
void DEG_relations_tag_update(Main *bmain)
Object * DEG_get_evaluated_object(const Depsgraph *depsgraph, Object *object)
@ ID_RECALC_AUDIO_LISTENER
@ ID_RECALC_SEQUENCER_STRIPS
#define MAX_BRUSH_PIXEL_RADIUS
Object groups, one object can be in many groups at once.
@ FREESTYLE_LINESET_FE_AND
@ FREESTYLE_LINESET_ENABLED
@ FREESTYLE_LINESET_FM_NOT
@ FREESTYLE_LINESET_FE_NOT
@ FREESTYLE_LINESET_FM_BOTH
@ FREESTYLE_LINESET_GR_NOT
@ 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_SEL_VISIBILITY
@ FREESTYLE_SEL_EDGE_TYPES
@ FREESTYLE_SEL_IMAGE_BORDER
@ FREESTYLE_SEL_FACE_MARK
@ FREESTYLE_FE_SILHOUETTE
@ FREESTYLE_FE_RIDGE_VALLEY
@ FREESTYLE_FE_EXTERNAL_CONTOUR
@ FREESTYLE_FE_SUGGESTIVE_CONTOUR
@ FREESTYLE_FE_MATERIAL_BOUNDARY
@ FREESTYLE_CONTROL_EDITOR_MODE
@ FREESTYLE_CONTROL_SCRIPT_MODE
@ 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)
Types and defines for representing Rigid Body entities.
@ WT_VGROUP_BONE_DEFORM_OFF
@ R_LINE_THICKNESS_ABSOLUTE
@ R_LINE_THICKNESS_RELATIVE
@ R_IMF_TIFF_CODEC_PACKBITS
@ R_IMF_TIFF_CODEC_DEFLATE
@ 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
@ SCE_XFORM_SKIP_CHILDREN
@ SCE_COMPOSITOR_PRECISION_FULL
@ SCE_COMPOSITOR_PRECISION_AUTO
@ 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
@ 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
@ RAYTRACE_EEVEE_METHOD_SCREEN
@ RAYTRACE_EEVEE_METHOD_PROBE
@ UNIFIED_PAINT_BRUSH_LOCK_SIZE
@ UNIFIED_PAINT_INPUT_SAMPLES
@ FFMPEG_AUTOSPLIT_OUTPUT
@ FFMPEG_USE_MAX_B_FRAMES
@ UVCALC_TRANSFORM_CORRECT
@ UVCALC_TRANSFORM_CORRECT_KEEP_CONNECTED
@ R_IMF_IMTYPE_MULTILAYER
@ SEQ_SNAP_CURRENT_FRAME_TO_STRIPS
@ R_BAKE_TARGET_VERTEX_COLORS
@ R_BAKE_TARGET_IMAGE_TEXTURES
@ S3D_ANAGLYPH_YELLOWBLUE
@ S3D_ANAGLYPH_GREENMAGENTA
@ CURVE_PAINT_FIT_METHOD_REFIT
@ CURVE_PAINT_FIT_METHOD_SPLIT
@ SEQ_SNAP_TO_PREVIEW_CENTER
@ SEQ_SNAP_TO_STRIPS_PREVIEW
@ SEQ_SNAP_TO_PREVIEW_BORDERS
@ SEQ_SNAP_TO_CURRENT_FRAME
@ SCE_WORKSPACE_TOOL_DEFAULT
@ SCE_WORKSPACE_TOOL_FALLBACK
@ S3D_SIDEBYSIDE_CROSSEYED
@ R_SEQ_OVERRIDE_SCENE_SETTINGS
#define PAINT_MAX_INPUT_SAMPLES
@ 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
@ GP_VERTEX_MASK_SELECTMODE_SEGMENT
@ GP_VERTEX_MASK_SELECTMODE_STROKE
@ GP_VERTEX_MASK_SELECTMODE_POINT
#define SCE_SNAP_TO_VERTEX
@ SCE_VIEWS_FORMAT_STEREO_3D
@ SCE_VIEWS_FORMAT_MULTIVIEW
@ S3D_INTERLACE_CHECKERBOARD
@ CURVE_PAINT_PROJECT_CURSOR
@ CURVE_PAINT_PROJECT_SURFACE
@ 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
@ SCER_LOCK_FRAME_SELECTION
@ SIMPLIFY_GPENCIL_ON_PLAY
@ SIMPLIFY_GPENCIL_MODIFIER
@ SIMPLIFY_GPENCIL_ENABLE
@ OB_DRAW_GROUPUSER_ACTIVE
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_SURFACE
@ CURVE_PAINT_SURFACE_PLANE_VIEW
@ CURVE_PAINT_SURFACE_PLANE_NORMAL_VIEW
#define STEREO_RIGHT_NAME
@ GP_TOOL_FLAG_RETAIN_LAST
@ GP_TOOL_FLAG_THUMBNAIL_LIST
@ GP_TOOL_FLAG_PAINT_ONBACK
@ GP_TOOL_FLAG_AUTOMERGE_STROKE
@ GP_TOOL_FLAG_CREATE_WEIGHTS
@ GP_USE_MULTI_FRAME_EDITING
@ SCE_SNAP_TRANSFORM_MODE_SCALE
@ SCE_SNAP_TRANSFORM_MODE_ROTATE
@ SCE_SNAP_TRANSFORM_MODE_TRANSLATE
@ FFM_CHANNELS_SURROUND51
@ FFM_CHANNELS_SURROUND71
#define USER_UNIT_ADAPTIVE
@ SCE_CUSTOM_SIMULATION_RANGE
@ SCE_COMPOSITOR_DEVICE_GPU
@ SCE_COMPOSITOR_DEVICE_CPU
@ SCE_SNAP_SOURCE_CLOSEST
@ R_IMF_COLOR_MANAGEMENT_FOLLOW_SCENE
@ R_IMF_COLOR_MANAGEMENT_OVERRIDE
@ R_IMF_JP2_FLAG_CINE_PRESET
@ R_BAKE_PASS_FILTER_DIFFUSE
@ R_BAKE_PASS_FILTER_NONE
@ R_BAKE_PASS_FILTER_COLOR
@ R_BAKE_PASS_FILTER_INDIRECT
@ R_BAKE_PASS_FILTER_DIRECT
@ R_BAKE_PASS_FILTER_GLOSSY
@ R_BAKE_PASS_FILTER_EMIT
@ R_BAKE_PASS_FILTER_TRANSM
@ SCE_PASS_SUBSURFACE_INDIRECT
@ SCE_PASS_SUBSURFACE_COLOR
@ SCE_PASS_DIFFUSE_DIRECT
@ SCE_PASS_GLOSSY_INDIRECT
@ SCE_PASS_TRANSM_INDIRECT
@ SCE_PASS_DIFFUSE_INDIRECT
@ SCE_PASS_SUBSURFACE_DIRECT
@ RAYTRACE_EEVEE_DENOISE_BILATERAL
@ RAYTRACE_EEVEE_DENOISE_SPATIAL
@ RAYTRACE_EEVEE_DENOISE_TEMPORAL
@ SCE_SNAP_INDIVIDUAL_NEAREST
@ SCE_SNAP_INDIVIDUAL_PROJECT
#define FRAMENUMBER_MIN_CLAMP(cfra)
@ AUTOKEY_FLAG_LAYERED_RECORD
@ AUTOKEY_FLAG_ONLYKEYINGSET
@ V3D_PLACE_ORIENT_DEFAULT
@ V3D_PLACE_ORIENT_SURFACE
@ V3D_PLACE_DEPTH_CURSOR_VIEW
@ V3D_PLACE_DEPTH_CURSOR_PLANE
@ V3D_PLACE_DEPTH_SURFACE
@ V3D_AROUND_CENTER_BOUNDS
@ V3D_AROUND_CENTER_MEDIAN
@ V3D_AROUND_LOCAL_ORIGINS
const char * ED_info_statistics_string(Main *bmain, Scene *scene, ViewLayer *view_layer)
void EDBM_selectmode_set(BMEditMesh *em)
void ED_node_tree_propagate_change(const bContext *C, Main *bmain, bNodeTree *ntree)
void ED_node_composit_default(const bContext *C, Scene *scene)
void ED_render_engine_changed(Main *bmain, bool update_scene_data)
bool ED_scene_view_layer_delete(Main *bmain, Scene *scene, ViewLayer *layer, ReportList *reports) ATTR_NONNULL(1
void ED_uvedit_selectmode_clean_multi(bContext *C)
void FRS_free_view_map_cache(void)
Contains defines and structs used throughout the imbuf module.
Read Guarded memory(de)allocation.
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object for example to give variation to multiple instances of an object Point Retrieve information about points in a point cloud Retrieve the edges of an object as it appears to Cycles topology will always appear triangulated Convert a blackbody temperature to an RGB value Normal Generate a perturbed normal from an RGB normal map image Typically used for faking highly detailed surfaces Generate an OSL shader from a file or text data block Image Sample an image file as a texture Gabor Generate Gabor noise Gradient Generate interpolated color and intensity values based on the input vector Magic Generate a psychedelic color texture Voronoi Generate Worley noise based on the distance to random points Typically used to generate textures such as or biological cells Brick Generate a procedural texture producing bricks Texture Retrieve multiple types of texture coordinates nTypically used as inputs for texture nodes Vector Convert a or normal between camera
#define RE_BAKE_DISPLACEMENT
#define RNA_POINTER_INVALIDATE(ptr)
const EnumPropertyItem * rna_TransformOrientation_itemf(bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
#define RNA_TRANSLATION_PREC_DEFAULT
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
@ PROPOVERRIDE_NO_COMPARISON
#define RNA_ENUM_ITEM_HEADING(name, description)
#define ND_SPACE_SEQUENCER
#define ND_RENDER_OPTIONS
#define ND_DRAW_RENDER_VIEWPORT
ListBase builtin_keyingsets
BPy_StructRNA * depsgraph
draw_view in_light_buf[] float
draw_view push_constant(Type::INT, "radiance_src") .push_constant(Type capture_info_buf storage_buf(1, Qualifier::READ, "ObjectBounds", "bounds_buf[]") .push_constant(Type draw_view int
void SEQ_cache_cleanup(Scene *scene)
RenderEngineType * RE_engines_find(const char *idname)
RenderEngine * RE_engine_create(RenderEngineType *type)
void RE_engine_free(RenderEngine *engine)
int ANIM_scene_get_keyingset_index(Scene *scene, KeyingSet *keyingset)
KeyingSet * ANIM_scene_get_active_keyingset(const Scene *scene)
void MEM_freeN(void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
void scene_simulation_states_reset(Scene &scene)
MatBase< float, 4, 4 > float4x4
void ntreeCompositUpdateRLayers(bNodeTree *ntree)
static struct PyModuleDef module
void rna_iterator_listbase_begin(CollectionPropertyIterator *iter, ListBase *lb, IteratorSkipFunc skip)
void rna_iterator_array_begin(CollectionPropertyIterator *iter, void *ptr, int itemsize, int length, bool free_ptr, IteratorSkipFunc skip)
PointerRNA rna_pointer_inherit_refine(const PointerRNA *ptr, StructRNA *type, void *data)
void rna_def_animdata_common(StructRNA *srna)
static const EnumPropertyItem curve_type_items[]
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_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
void RNA_def_parameter_clear_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_property_float_default(PropertyRNA *prop, float value)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
void RNA_def_property_enum_default(PropertyRNA *prop, int value)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_property_ui_text(PropertyRNA *prop, const char *name, const char *description)
void RNA_def_property_string_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_icon(PropertyRNA *prop, int icon, int consecutive)
void RNA_def_property_srna(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring, const char *assignint)
void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description)
void RNA_def_property_boolean_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)
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)
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)
void rna_FreestyleSettings_active_lineset_index_set(PointerRNA *ptr, int value)
void rna_ViewLayer_active_lightgroup_index_set(PointerRNA *ptr, int value)
void rna_ViewLayer_pass_update(Main *bmain, Scene *activescene, PointerRNA *ptr)
const EnumPropertyItem rna_enum_axis_xyz_items[]
const EnumPropertyItem rna_enum_object_rotation_mode_items[]
const EnumPropertyItem rna_enum_object_axis_items[]
const EnumPropertyItem rna_enum_dummy_DEFAULT_items[]
const EnumPropertyItem rna_enum_mesh_select_mode_uv_items[]
static void rna_def_raytrace_eevee(BlenderRNA *brna)
static void rna_def_view3d_cursor(BlenderRNA *brna)
static void rna_def_scene_ffmpeg_settings(BlenderRNA *brna)
void rna_def_freestyle_settings(BlenderRNA *brna)
const EnumPropertyItem rna_enum_image_color_depth_items[]
const EnumPropertyItem rna_enum_image_type_items[]
static void rna_def_scene_keying_sets_all(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_display_safe_areas(BlenderRNA *brna)
const EnumPropertyItem rna_enum_proportional_falloff_curve_only_items[]
static void rna_def_timeline_markers(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_gpencil(BlenderRNA *brna)
static const EnumPropertyItem plane_depth_items[]
static const EnumPropertyItem eevee_resolution_scale_items[]
static const EnumPropertyItem plane_orientation_items[]
const EnumPropertyItem rna_enum_views_format_multilayer_items[]
const EnumPropertyItem rna_enum_mesh_select_mode_items[]
static void rna_def_curve_paint_settings(BlenderRNA *brna)
static void rna_def_scene_keying_sets(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_display(BlenderRNA *brna)
static void rna_def_tool_settings(BlenderRNA *brna)
void rna_def_view_layer_common(BlenderRNA *brna, StructRNA *srna, const bool scene)
static void rna_def_freestyle_linesets(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_stereo3d_display_items[]
const EnumPropertyItem rna_enum_normal_swizzle_items[]
static const EnumPropertyItem rna_enum_scene_display_aa_methods[]
static void rna_def_scene_objects(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_scene_eevee(BlenderRNA *brna)
static void rna_def_view_layer_lightgroups(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem snap_uv_element_items[]
#define R_IMF_VIEWS_ENUM_MV
static void rna_def_selected_uv_element(BlenderRNA *brna)
static void rna_def_transform_orientation_slot(BlenderRNA *brna)
const EnumPropertyItem rna_enum_grease_pencil_selectmode_items[]
const EnumPropertyItem rna_enum_proportional_falloff_items[]
void RNA_def_scene(BlenderRNA *brna)
const EnumPropertyItem rna_enum_snap_animation_element_items[]
const EnumPropertyItem rna_enum_snap_node_element_items[]
static void rna_def_gpencil_interpolate(BlenderRNA *brna)
static void rna_def_scene_hydra(BlenderRNA *brna)
static void rna_def_bake_data(BlenderRNA *brna)
static void rna_def_sequencer_tool_settings(BlenderRNA *brna)
#define R_IMF_VIEWS_ENUM_IND
static const EnumPropertyItem rna_enum_snap_element_base_items[]
static void rna_def_view_layer_lightgroup(BlenderRNA *brna)
static void rna_def_transform_orientation(BlenderRNA *brna)
static void rna_def_scene_image_format_data(BlenderRNA *brna)
const EnumPropertyItem rna_enum_bake_pass_filter_type_items[]
static void rna_def_statvis(BlenderRNA *brna)
const EnumPropertyItem rna_enum_snap_source_items[]
const EnumPropertyItem rna_enum_snap_element_items[]
const EnumPropertyItem rna_enum_bake_save_mode_items[]
static void rna_def_scene_render_view(BlenderRNA *brna)
static void rna_def_view_layer_aovs(BlenderRNA *brna, PropertyRNA *cprop)
static const EnumPropertyItem snap_to_items[]
static const EnumPropertyItem rna_enum_view_layer_aov_type_items[]
static const EnumPropertyItem rna_enum_bake_view_from_items[]
const EnumPropertyItem rna_enum_bake_margin_type_items[]
static void rna_def_view_layer_eevee(BlenderRNA *brna)
const EnumPropertyItem rna_enum_bake_target_items[]
static void rna_def_freestyle_modules(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_curve_fit_method_items[]
const EnumPropertyItem rna_enum_views_format_items[]
const EnumPropertyItem rna_enum_transform_pivot_full_items[]
static void rna_def_render_views(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_normal_space_items[]
static void rna_def_unified_paint_settings(BlenderRNA *brna)
const EnumPropertyItem rna_enum_views_format_multiview_items[]
#define IMAGE_TYPE_ITEMS_IMAGE_ONLY
const EnumPropertyItem rna_enum_transform_orientation_items[]
const EnumPropertyItem rna_enum_stereo3d_anaglyph_type_items[]
const EnumPropertyItem rna_enum_stereo3d_interlace_type_items[]
#define R_IMF_VIEWS_ENUM_S3D
#define RNA_SNAP_ELEMENTS_BASE
static const EnumPropertyItem * rna_enum_snap_element_individual_items
static void rna_def_view_layer_aov(BlenderRNA *brna)
static void rna_def_unit_settings(BlenderRNA *brna)
static void rna_def_image_format_stereo3d_format(BlenderRNA *brna)
const EnumPropertyItem rna_enum_image_color_mode_items[]
static void rna_def_scene_render_data(BlenderRNA *brna)
static void rna_def_view_layers(BlenderRNA *brna, PropertyRNA *cprop)
const EnumPropertyItem rna_enum_shading_type_items[]
void SEQ_sound_update_length(Main *bmain, Scene *scene)
static const EnumPropertyItem scale_fit_methods[]
void RE_FreePersistentData(const Scene *scene)
struct ImageFormatData im_format
union CollectionPropertyIterator::@007202232026116251301165241340012352366154236373 internal
ListBaseIterator listbase
MeshRuntimeHandle * runtime
struct ModifierData * next
struct Collection * instance_collection
ObjectRuntimeHandle * runtime
struct ParticleSystem * next
struct ImageFormatData im_format
struct FFMpegCodecData ffcodecdata
struct RenderEngineType * next
void(* update_render_passes)(struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer)
struct bNodeTree * nodetree
TransformOrientationSlot orientation_slots[4]
ListBase transform_spaces
float rotation_quaternion[4]
ViewLayerLightgroup * active_lightgroup
ViewLayerAOV * active_aov
struct bNodeSocket * next
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)