62 static void rna_Scene_frame_set(
Scene *
scene,
Main *bmain,
int frame,
float subframe)
64 double cfra = (
double)frame + (
double)subframe;
74 view_layer = view_layer->next) {
91 if (!
G.is_rendering) {
112 aspect[0] = aspect[1] = 1.0f;
115 static void rna_SceneRender_get_frame_path(
132 (frame == INT_MIN) ? rd->
cfra : frame,
167 (
float(*)[4])r_obmat);
171 if (r_ob !=
NULL && *r_ob !=
NULL) {
187 static void rna_Scene_sequencer_editing_free(
Scene *
scene)
194 static void rna_Scene_alembic_export(
Scene *
scene,
196 const char *filepath,
208 bool flatten_hierarchy,
209 bool visible_objects_only,
211 bool use_subdiv_schema,
213 bool export_particles,
230 .frame_samples_xform = xform_samples,
231 .frame_samples_shape = geom_samples,
252 .global_scale = scale,
277 func,
"subframe", 0.0, 0.0, 1.0,
"",
"Subframe time, between 0.0 and 1.0", 0.0, 1.0);
292 parm =
RNA_def_pointer(func,
"depsgraph",
"Depsgraph",
"",
"The current dependency graph");
318 "The hit location of this ray cast",
330 "The face normal at the ray cast hit location",
336 func,
"index", 0, 0, 0,
"",
"The face index, -1 when original data isn't available", 0, 0);
338 parm =
RNA_def_pointer(func,
"object",
"Object",
"",
"Ray cast object");
340 parm =
RNA_def_float_matrix(func,
"matrix", 4, 4,
NULL, 0.0f, 0.0f,
"",
"Matrix", 0.0f, 0.0f);
344 func =
RNA_def_function(srna,
"sequence_editor_create",
"SEQ_editing_ensure");
347 func,
"sequence_editor",
"SequenceEditor",
"",
"New sequence editor data or NULL");
350 func =
RNA_def_function(srna,
"sequence_editor_clear",
"rna_Scene_sequencer_editing_free");
355 func =
RNA_def_function(srna,
"alembic_export",
"rna_Scene_alembic_export");
357 func,
"Export to Alembic file (deprecated, use the Alembic export operator)");
360 func,
"filepath",
NULL,
FILE_MAX,
"File Path",
"File path to write Alembic file");
364 RNA_def_int(func,
"frame_start", 1, INT_MIN, INT_MAX,
"Start",
"Start Frame", INT_MIN, INT_MAX);
365 RNA_def_int(func,
"frame_end", 1, INT_MIN, INT_MAX,
"End",
"End Frame", INT_MIN, INT_MAX);
367 func,
"xform_samples", 1, 1, 128,
"Xform samples",
"Transform samples per frame", 1, 128);
369 func,
"geom_samples", 1, 1, 128,
"Geom samples",
"Geometry samples per frame", 1, 128);
370 RNA_def_float(func,
"shutter_open", 0.0f, -1.0f, 1.0f,
"Shutter open",
"", -1.0f, 1.0f);
371 RNA_def_float(func,
"shutter_close", 1.0f, -1.0f, 1.0f,
"Shutter close",
"", -1.0f, 1.0f);
372 RNA_def_boolean(func,
"selected_only", 0,
"Selected only",
"Export only selected objects");
375 RNA_def_boolean(func,
"vcolors", 0,
"Vertex colors",
"Export vertex colors");
377 func,
"apply_subdiv", 1,
"Subsurfs as meshes",
"Export subdivision surfaces as meshes");
378 RNA_def_boolean(func,
"flatten", 0,
"Flatten hierarchy",
"Flatten hierarchy");
380 "visible_objects_only",
382 "Visible layers only",
383 "Export only objects in visible layers");
388 "Use Alembic subdivision Schema",
389 "Use Alembic subdivision Schema");
391 func,
"export_hair", 1,
"Export Hair",
"Exports hair particle systems as animated curves");
393 func,
"export_particles", 1,
"Export Particles",
"Exports non-hair particle systems");
395 func,
"packuv", 0,
"Export with packed UV islands",
"Export with packed UV islands");
403 "Value by which to enlarge or shrink the objects with respect to the world's origin",
407 func,
"triangulate", 0,
"Triangulate",
"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",
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)
typedef float(TangentPoint)[2]
BMEditMesh * BKE_editmesh_from_object(struct Object *ob)
Return the BMEditMesh for a given object.
void BKE_image_path_from_imformat(char *string, const char *base, const char *relbase, int frame, const struct ImageFormatData *im_format, const bool use_ext, const bool use_frames, const char *suffix)
bool BKE_imtype_is_movie(const char imtype)
const char * BKE_main_blendfile_path(const struct Main *bmain) ATTR_NONNULL()
void BKE_scene_frame_set(struct Scene *scene, double cfra)
bool BKE_scene_camera_switch_update(struct Scene *scene)
void BKE_scene_graph_update_for_newframe(struct Depsgraph *depsgraph)
struct Depsgraph * BKE_scene_ensure_depsgraph(struct Main *bmain, struct Scene *scene, struct ViewLayer *view_layer)
const char * BKE_scene_multiview_view_suffix_get(const struct RenderData *rd, const char *viewname)
void BKE_screen_view3d_scene_sync(struct bScreen *screen, struct Scene *scene)
void BKE_movie_filepath_get(char *string, const struct RenderData *rd, bool preview, const char *suffix)
#define BVH_RAYCAST_DIST_MAX
void unit_m4(float m[4][4])
MINLINE float normalize_v3(float r[3])
MINLINE void zero_v3(float r[3])
#define BPy_BEGIN_ALLOW_THREADS
#define BPy_END_ALLOW_THREADS
typedef double(DMatrix)[4][4]
struct Depsgraph Depsgraph
struct Object * DEG_get_original_object(struct Object *object)
Object is a sort of wrapper for general info.
bool EDBM_uv_check(struct BMEditMesh *em)
SnapObjectContext * ED_transform_snap_object_context_create(struct Scene *scene, int flag)
void ED_transform_snap_object_context_destroy(SnapObjectContext *sctx)
bool ED_transform_snap_object_project_ray_ex(struct SnapObjectContext *sctx, struct Depsgraph *depsgraph, const struct 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, struct Object **r_ob, float r_obmat[4][4])
void ED_uvedit_get_aspect(struct Object *obedit, float *r_aspx, float *r_aspy)
Group RGB to Bright Vector Camera CLAMP
const Depsgraph * depsgraph
static float normals[][3]
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, 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, int rows, int columns, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyRNA * RNA_def_string_file_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
void RNA_def_function_output(FunctionRNA *UNUSED(func), PropertyRNA *ret)
PropertyRNA * RNA_def_float_vector(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_function_flag(FunctionRNA *func, int flag)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
void RNA_def_property_subtype(PropertyRNA *prop, PropertySubType subtype)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
void RNA_def_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)
bool visible_objects_only
struct ImageFormatData im_format
void WM_main_add_notifier(unsigned int type, void *reference)