49static void rna_Scene_frame_set(
Scene *scene,
Main *bmain,
int frame,
float subframe)
61 view_layer !=
nullptr;
62 view_layer = view_layer->next)
74 screen =
static_cast<bScreen *
>(screen->id.next))
82 if (!
G.is_rendering) {
92static void rna_Scene_uvedit_aspect(
Scene * ,
Object *ob,
float aspect[2])
103 aspect[0] = aspect[1] = 1.0f;
106static void rna_SceneRender_get_frame_path(
107 RenderData *rd,
Main *bmain,
int frame,
bool preview,
const char *view,
char *filepath)
123 (frame == INT_MIN) ? rd->
cfra : frame,
131static void rna_Scene_ray_cast(
Scene *scene,
133 const float origin[3],
134 const float direction[3],
143 float direction_unit[3];
161 (
float(*)[4])r_obmat);
165 if (r_ob !=
nullptr && *r_ob !=
nullptr) {
181static void rna_Scene_sequencer_editing_free(
Scene *scene)
188static void rna_Scene_alembic_export(
Scene *scene,
190 const char *filepath,
202 bool flatten_hierarchy,
203 bool visible_objects_only,
205 bool use_subdiv_schema,
207 bool export_particles,
221 params.frame_start = frame_start;
222 params.frame_end = frame_end;
224 params.frame_samples_xform = xform_samples;
225 params.frame_samples_shape = geom_samples;
227 params.shutter_open = shutter_open;
228 params.shutter_close = shutter_close;
230 params.selected_only = selected_only;
234 params.apply_subdiv = apply_subdiv;
235 params.flatten_hierarchy = flatten_hierarchy;
236 params.visible_objects_only = visible_objects_only;
237 params.face_sets = face_sets;
238 params.use_subdiv_schema = use_subdiv_schema;
239 params.export_hair = export_hair;
240 params.export_particles = export_particles;
243 params.quad_method = quad_method;
244 params.ngon_method = ngon_method;
246 params.global_scale = scale;
270 func,
"subframe", 0.0, 0.0, 1.0,
"",
"Subframe time, between 0.0 and 1.0", 0.0, 1.0);
278 func,
"result", 2,
nullptr, 0.0f,
FLT_MAX,
"",
"aspect", 0.0f,
FLT_MAX);
286 parm =
RNA_def_pointer(func,
"depsgraph",
"Depsgraph",
"",
"The current dependency graph");
312 "The hit location of this ray cast",
324 "The face normal at the ray cast hit location",
330 func,
"index", 0, 0, 0,
"",
"The face index, -1 when original data isn't available", 0, 0);
332 parm =
RNA_def_pointer(func,
"object",
"Object",
"",
"Ray cast object");
334 parm =
RNA_def_float_matrix(func,
"matrix", 4, 4,
nullptr, 0.0f, 0.0f,
"",
"Matrix", 0.0f, 0.0f);
338 func =
RNA_def_function(srna,
"sequence_editor_create",
"SEQ_editing_ensure");
341 func,
"sequence_editor",
"SequenceEditor",
"",
"New sequence editor data or nullptr");
344 func =
RNA_def_function(srna,
"sequence_editor_clear",
"rna_Scene_sequencer_editing_free");
349 func =
RNA_def_function(srna,
"alembic_export",
"rna_Scene_alembic_export");
351 func,
"Export to Alembic file (deprecated, use the Alembic export operator)");
354 func,
"filepath",
nullptr,
FILE_MAX,
"File Path",
"File path to write Alembic file");
358 RNA_def_int(func,
"frame_start", 1, INT_MIN, INT_MAX,
"Start",
"Start Frame", INT_MIN, INT_MAX);
359 RNA_def_int(func,
"frame_end", 1, INT_MIN, INT_MAX,
"End",
"End Frame", INT_MIN, INT_MAX);
361 func,
"xform_samples", 1, 1, 128,
"Xform samples",
"Transform samples per frame", 1, 128);
363 func,
"geom_samples", 1, 1, 128,
"Geom samples",
"Geometry samples per frame", 1, 128);
364 RNA_def_float(func,
"shutter_open", 0.0f, -1.0f, 1.0f,
"Shutter open",
"", -1.0f, 1.0f);
365 RNA_def_float(func,
"shutter_close", 1.0f, -1.0f, 1.0f,
"Shutter close",
"", -1.0f, 1.0f);
366 RNA_def_boolean(func,
"selected_only",
false,
"Selected only",
"Export only selected objects");
369 RNA_def_boolean(func,
"vcolors",
false,
"Color Attributes",
"Export color attributes");
371 func,
"apply_subdiv",
true,
"Subsurfs as meshes",
"Export subdivision surfaces as meshes");
372 RNA_def_boolean(func,
"flatten",
false,
"Flatten hierarchy",
"Flatten hierarchy");
374 "visible_objects_only",
376 "Visible layers only",
377 "Export only objects in visible layers");
378 RNA_def_boolean(func,
"face_sets",
false,
"Facesets",
"Export face sets");
382 "Use Alembic subdivision Schema",
383 "Use Alembic subdivision Schema");
388 "Exports hair particle systems as animated curves");
390 func,
"export_particles",
true,
"Export Particles",
"Exports non-hair particle systems");
392 func,
"packuv",
false,
"Export with packed UV islands",
"Export with packed UV islands");
400 "Value by which to enlarge or shrink the objects with respect to the world's origin",
407 "Export polygons (quads and n-gons) as triangles");
413 "Method for splitting the quads into triangles");
419 "Method for splitting the n-gons into triangles");
430 func =
RNA_def_function(srna,
"frame_path",
"rna_SceneRender_get_frame_path");
433 func,
"Return the absolute path to the filename to be written for a given frame");
440 "Frame number to use, if unset the current frame will be used",
443 RNA_def_boolean(func,
"preview",
false,
"Preview",
"Use preview range");
449 "The name of the view to use to replace the \"%\" chars");
455 "The resulting filepath from the scenes render settings");
bool ABC_export(struct Scene *scene, struct bContext *C, const char *filepath, const struct AlembicExportParams *params, bool as_background_job)
BMEditMesh * BKE_editmesh_from_object(Object *ob)
Return the BMEditMesh for a given object.
const char * BKE_main_blendfile_path(const Main *bmain) ATTR_NONNULL()
void BKE_scene_frame_set(Scene *scene, float frame)
const char * BKE_scene_multiview_view_suffix_get(const RenderData *rd, const char *viewname)
bool BKE_scene_camera_switch_update(Scene *scene)
Depsgraph * BKE_scene_ensure_depsgraph(Main *bmain, Scene *scene, ViewLayer *view_layer)
void BKE_scene_graph_update_for_newframe(Depsgraph *depsgraph)
void BKE_screen_view3d_scene_sync(bScreen *screen, Scene *scene)
void BKE_movie_filepath_get(char filepath[1024], const RenderData *rd, bool preview, const char *suffix)
#define BVH_RAYCAST_DIST_MAX
void unit_m4(float m[4][4])
MINLINE float normalize_v3_v3(float r[3], const float a[3])
MINLINE void zero_v3(float r[3])
#define BPy_BEGIN_ALLOW_THREADS
#define BPy_END_ALLOW_THREADS
typedef double(DMatrix)[4][4]
Object * DEG_get_original_object(Object *object)
Object is a sort of wrapper for general info.
bool EDBM_uv_check(BMEditMesh *em)
bool ED_transform_snap_object_project_ray_ex(SnapObjectContext *sctx, Depsgraph *depsgraph, const View3D *v3d, const SnapObjectParams *params, const float ray_start[3], const float ray_normal[3], float *ray_depth, float r_loc[3], float r_no[3], int *r_index, const Object **r_ob, float r_obmat[4][4])
SnapObjectContext * ED_transform_snap_object_context_create(Scene *scene, int flag)
void ED_transform_snap_object_context_destroy(SnapObjectContext *sctx)
void ED_uvedit_get_aspect(Object *obedit, float *r_aspx, float *r_aspy)
const Depsgraph * depsgraph
static float normals[][3]
void triangulate(BMesh *bm)
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_function_return(FunctionRNA *func, PropertyRNA *ret)
PropertyRNA * RNA_def_float_matrix(StructOrFunctionRNA *cont_, const char *identifier, const int rows, const int columns, const float *default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, const float default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
PropertyRNA * RNA_def_float_vector(StructOrFunctionRNA *cont_, const char *identifier, const int len, const float *default_value, const float hardmin, const float hardmax, const char *ui_name, const char *ui_description, const float softmin, const float softmax)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, const int default_value, const char *ui_name, const char *ui_description)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_function_flag(FunctionRNA *func, int flag)
PropertyRNA * RNA_def_string_file_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, const int maxlen, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, const bool default_value, const char *ui_name, const char *ui_description)
void RNA_def_function_output(FunctionRNA *, PropertyRNA *ret)
void RNA_def_property_subtype(PropertyRNA *prop, PropertySubType subtype)
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_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
const EnumPropertyItem rna_enum_modifier_triangulate_ngon_method_items[]
const EnumPropertyItem rna_enum_modifier_triangulate_quad_method_items[]
void RNA_api_scene(StructRNA *srna)
void RNA_api_scene_render(StructRNA *srna)
void SEQ_editing_free(Scene *scene, const bool do_id_user)
struct ImageFormatData im_format
eSnapTargetOP snap_target_select
void WM_main_add_notifier(uint type, void *reference)