Changeset View
Changeset View
Standalone View
Standalone View
source/blender/render/intern/source/external_engine.c
| Show First 20 Lines • Show All 609 Lines • ▼ Show 20 Lines | static void engine_depsgraph_init(RenderEngine *engine, ViewLayer *view_layer) | ||||
| if (engine->re->r.scemode & R_BUTS_PREVIEW) { | if (engine->re->r.scemode & R_BUTS_PREVIEW) { | ||||
| Depsgraph *depsgraph = engine->depsgraph; | Depsgraph *depsgraph = engine->depsgraph; | ||||
| DEG_graph_relations_update(depsgraph, bmain, scene, view_layer); | DEG_graph_relations_update(depsgraph, bmain, scene, view_layer); | ||||
| DEG_evaluate_on_framechange(bmain, depsgraph, CFRA); | DEG_evaluate_on_framechange(bmain, depsgraph, CFRA); | ||||
| DEG_ids_check_recalc(bmain, depsgraph, scene, view_layer, true); | DEG_ids_check_recalc(bmain, depsgraph, scene, view_layer, true); | ||||
| DEG_ids_clear_recalc(bmain, depsgraph); | DEG_ids_clear_recalc(bmain, depsgraph); | ||||
| } | } | ||||
| else { | else { | ||||
| BKE_scene_graph_update_for_newframe(engine->depsgraph, bmain); | BKE_scene_graph_update_for_newframe(engine->depsgraph); | ||||
| } | } | ||||
| } | } | ||||
| static void engine_depsgraph_free(RenderEngine *engine) | static void engine_depsgraph_free(RenderEngine *engine) | ||||
| { | { | ||||
| DEG_graph_free(engine->depsgraph); | DEG_graph_free(engine->depsgraph); | ||||
| engine->depsgraph = NULL; | engine->depsgraph = NULL; | ||||
| } | } | ||||
| void RE_engine_frame_set(RenderEngine *engine, int frame, float subframe) | void RE_engine_frame_set(RenderEngine *engine, int frame, float subframe) | ||||
| { | { | ||||
| if (!engine->depsgraph) { | if (!engine->depsgraph) { | ||||
| return; | return; | ||||
| } | } | ||||
| Render *re = engine->re; | Render *re = engine->re; | ||||
| double cfra = (double)frame + (double)subframe; | double cfra = (double)frame + (double)subframe; | ||||
| CLAMP(cfra, MINAFRAME, MAXFRAME); | CLAMP(cfra, MINAFRAME, MAXFRAME); | ||||
| BKE_scene_frame_set(re->scene, cfra); | BKE_scene_frame_set(re->scene, cfra); | ||||
| BKE_scene_graph_update_for_newframe(engine->depsgraph, re->main); | BKE_scene_graph_update_for_newframe(engine->depsgraph); | ||||
| BKE_scene_camera_switch_update(re->scene); | BKE_scene_camera_switch_update(re->scene); | ||||
| } | } | ||||
| /* Bake */ | /* Bake */ | ||||
| void RE_bake_engine_set_engine_parameters(Render *re, Main *bmain, Scene *scene) | void RE_bake_engine_set_engine_parameters(Render *re, Main *bmain, Scene *scene) | ||||
| { | { | ||||
| re->scene = scene; | re->scene = scene; | ||||
| ▲ Show 20 Lines • Show All 343 Lines • Show Last 20 Lines | |||||