Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/render/render_internal.c
| Show First 20 Lines • Show All 362 Lines • ▼ Show 20 Lines | static int screen_render_exec(bContext *C, wmOperator *op) | ||||
| else { | else { | ||||
| RE_RenderFrame(re, mainp, scene, single_layer, camera_override, scene->r.cfra, is_write_still); | RE_RenderFrame(re, mainp, scene, single_layer, camera_override, scene->r.cfra, is_write_still); | ||||
| } | } | ||||
| BLI_threaded_malloc_end(); | BLI_threaded_malloc_end(); | ||||
| RE_SetReports(re, NULL); | RE_SetReports(re, NULL); | ||||
| // no redraw needed, we leave state as we entered it | // no redraw needed, we leave state as we entered it | ||||
| ED_update_for_newframe(mainp, CTX_data_depsgraph(C)); | ED_update_for_newframe(mainp, CTX_data_depsgraph_pointer(C)); | ||||
| WM_event_add_notifier(C, NC_SCENE | ND_RENDER_RESULT, scene); | WM_event_add_notifier(C, NC_SCENE | ND_RENDER_RESULT, scene); | ||||
| return OPERATOR_FINISHED; | return OPERATOR_FINISHED; | ||||
| } | } | ||||
| static void render_freejob(void *rjv) | static void render_freejob(void *rjv) | ||||
| { | { | ||||
| ▲ Show 20 Lines • Show All 593 Lines • ▼ Show 20 Lines | static int screen_render_invoke(bContext *C, wmOperator *op, const wmEvent *event) | ||||
| sa = render_view_open(C, event->x, event->y, op->reports); | sa = render_view_open(C, event->x, event->y, op->reports); | ||||
| /* job custom data */ | /* job custom data */ | ||||
| rj = MEM_callocN(sizeof(RenderJob), "render job"); | rj = MEM_callocN(sizeof(RenderJob), "render job"); | ||||
| rj->main = bmain; | rj->main = bmain; | ||||
| rj->scene = scene; | rj->scene = scene; | ||||
| rj->current_scene = rj->scene; | rj->current_scene = rj->scene; | ||||
| rj->single_layer = single_layer; | rj->single_layer = single_layer; | ||||
| /* TODO(sergey): Render engine should be using own depsgraph. */ | /* TODO(sergey): Render engine should be using own depsgraph. | ||||
| rj->depsgraph = CTX_data_depsgraph(C); | * | ||||
| * NOTE: Currently is only used by ED_update_for_newframe() at the end of the render, so no | |||||
| * need to ensure evaluation here. */ | |||||
| rj->depsgraph = CTX_data_depsgraph_pointer(C); | |||||
| rj->camera_override = camera_override; | rj->camera_override = camera_override; | ||||
| rj->anim = is_animation; | rj->anim = is_animation; | ||||
| rj->write_still = is_write_still && !is_animation; | rj->write_still = is_write_still && !is_animation; | ||||
| rj->iuser.scene = scene; | rj->iuser.scene = scene; | ||||
| rj->iuser.ok = 1; | rj->iuser.ok = 1; | ||||
| rj->reports = op->reports; | rj->reports = op->reports; | ||||
| rj->orig_layer = 0; | rj->orig_layer = 0; | ||||
| rj->last_layer = 0; | rj->last_layer = 0; | ||||
| ▲ Show 20 Lines • Show All 215 Lines • Show Last 20 Lines | |||||