|
Blender
V2.93
|
Go to the source code of this file.
Classes | |
| struct | RenderView |
| struct | RenderPass |
| struct | RenderLayer |
| struct | RenderResult |
| class | RenderStats |
Macros | |
| #define | RE_MAXNAME ((MAX_ID_NAME - 2) + 10) |
| #define | RE_BAKE_NORMALS 0 |
| #define | RE_BAKE_DISPLACEMENT 1 |
| #define | RE_BAKE_AO 2 |
Typedefs | |
| typedef struct Render | Render |
| typedef struct RenderView | RenderView |
| typedef struct RenderPass | RenderPass |
| typedef struct RenderLayer | RenderLayer |
| typedef struct RenderResult | RenderResult |
| typedef struct RenderStats | RenderStats |
Functions | |
| struct Render * | RE_NewRender (const char *name) |
| struct Render * | RE_GetRender (const char *name) |
| struct Render * | RE_NewSceneRender (const struct Scene *scene) |
| struct Render * | RE_GetSceneRender (const struct Scene *scene) |
| void | RE_InitRenderCB (struct Render *re) |
| void | RE_FreeRender (struct Render *re) |
| void | RE_FreeAllRender (void) |
| void | RE_FreeAllRenderResults (void) |
| void | RE_FreeAllPersistentData (void) |
| void | RE_FreePersistentData (const Scene *scene) |
| void | RE_FreeRenderResult (struct RenderResult *rr) |
| struct RenderResult * | RE_AcquireResultRead (struct Render *re) |
| struct RenderResult * | RE_AcquireResultWrite (struct Render *re) |
| void | RE_ReleaseResult (struct Render *re) |
| void | RE_AcquireResultImageViews (struct Render *re, struct RenderResult *rr) |
| void | RE_ReleaseResultImageViews (struct Render *re, struct RenderResult *rr) |
| void | RE_AcquireResultImage (struct Render *re, struct RenderResult *rr, const int view_id) |
| void | RE_ReleaseResultImage (struct Render *re) |
| void | RE_SwapResult (struct Render *re, struct RenderResult **rr) |
| void | RE_ClearResult (struct Render *re) |
| struct RenderStats * | RE_GetStats (struct Render *re) |
| void | RE_ResultGet32 (struct Render *re, unsigned int *rect) |
| void | RE_AcquiredResultGet32 (struct Render *re, struct RenderResult *result, unsigned int *rect, const int view_id) |
| void | RE_render_result_rect_from_ibuf (struct RenderResult *rr, struct RenderData *rd, struct ImBuf *ibuf, const int view_id) |
| struct RenderLayer * | RE_GetRenderLayer (struct RenderResult *rr, const char *name) |
| float * | RE_RenderLayerGetPass (volatile struct RenderLayer *rl, const char *name, const char *viewname) |
| bool | RE_HasSingleLayer (struct Render *re) |
| struct RenderPass * | RE_create_gp_pass (struct RenderResult *rr, const char *layername, const char *viewname) |
| void | RE_create_render_pass (struct RenderResult *rr, const char *name, int channels, const char *chan_id, const char *layername, const char *viewname) |
| void | RE_InitState (struct Render *re, struct Render *source, struct RenderData *rd, struct ListBase *render_layers, struct ViewLayer *single_layer, int winx, int winy, rcti *disprect) |
| struct Object * | RE_GetCamera (struct Render *re) |
| void | RE_SetOverrideCamera (struct Render *re, struct Object *cam_ob) |
| void | RE_SetCamera (struct Render *re, struct Object *cam_ob) |
| void | RE_GetViewPlane (struct Render *re, rctf *r_viewplane, rcti *r_disprect) |
| void | RE_init_threadcount (Render *re) |
| bool | RE_WriteRenderViewsImage (struct ReportList *reports, struct RenderResult *rr, struct Scene *scene, const bool stamp, char *name) |
| bool | RE_WriteRenderViewsMovie (struct ReportList *reports, struct RenderResult *rr, struct Scene *scene, struct RenderData *rd, struct bMovieHandle *mh, void **movie_ctx_arr, const int totvideos, bool preview) |
| void | RE_RenderFrame (struct Render *re, struct Main *bmain, struct Scene *scene, struct ViewLayer *single_layer, struct Object *camera_override, int frame, const bool write_still) |
| void | RE_RenderAnim (struct Render *re, struct Main *bmain, struct Scene *scene, struct ViewLayer *single_layer, struct Object *camera_override, int sfra, int efra, int tfra) |
| void | RE_SetActiveRenderView (struct Render *re, const char *viewname) |
| const char * | RE_GetActiveRenderView (struct Render *re) |
| void | RE_SetReports (struct Render *re, struct ReportList *reports) |
| void | RE_PreviewRender (struct Render *re, struct Main *bmain, struct Scene *scene) |
| bool | RE_ReadRenderResult (struct Scene *scene, struct Scene *scenode) |
| bool | RE_WriteRenderResult (struct ReportList *reports, RenderResult *rr, const char *filename, struct ImageFormatData *imf, const char *view, int layer) |
| struct RenderResult * | RE_MultilayerConvert (void *exrhandle, const char *colorspace, bool predivide, int rectx, int recty) |
| void | RE_display_init_cb (struct Render *re, void *handle, void(*f)(void *handle, RenderResult *rr)) |
| void | RE_display_clear_cb (struct Render *re, void *handle, void(*f)(void *handle, RenderResult *rr)) |
| void | RE_display_update_cb (struct Render *re, void *handle, void(*f)(void *handle, RenderResult *rr, volatile struct rcti *rect)) |
| void | RE_stats_draw_cb (struct Render *re, void *handle, void(*f)(void *handle, RenderStats *rs)) |
| void | RE_progress_cb (struct Render *re, void *handle, void(*f)(void *handle, float)) |
| void | RE_draw_lock_cb (struct Render *re, void *handle, void(*f)(void *handle, bool lock)) |
| void | RE_test_break_cb (struct Render *re, void *handle, int(*f)(void *handle)) |
| void | RE_current_scene_update_cb (struct Render *re, void *handle, void(*f)(void *handle, struct Scene *scene)) |
| void | RE_gl_context_create (Render *re) |
| void | RE_gl_context_destroy (Render *re) |
| void * | RE_gl_context_get (Render *re) |
| void * | RE_gpu_context_get (Render *re) |
| float | RE_filter_value (int type, float x) |
| int | RE_seq_render_active (struct Scene *scene, struct RenderData *rd) |
| bool | RE_layers_have_name (struct RenderResult *result) |
| bool | RE_passes_have_name (struct RenderLayer *rl) |
| struct RenderPass * | RE_pass_find_by_name (volatile struct RenderLayer *rl, const char *name, const char *viewname) |
| struct RenderPass * | RE_pass_find_by_type (volatile struct RenderLayer *rl, int passtype, const char *viewname) |
| void | RE_GetCameraWindow (struct Render *re, struct Object *camera, float mat[4][4]) |
| void | RE_GetCameraWindowWithOverscan (struct Render *re, float overscan, float r_winmat[4][4]) |
| void | RE_GetCameraModelMatrix (struct Render *re, struct Object *camera, float r_modelmat[4][4]) |
| struct Scene * | RE_GetScene (struct Render *re) |
| void | RE_SetScene (struct Render *re, struct Scene *sce) |
| bool | RE_is_rendering_allowed (struct Scene *scene, struct ViewLayer *single_layer, struct Object *camera_override, struct ReportList *reports) |
| bool | RE_allow_render_generic_object (struct Object *ob) |
| bool | RE_HasCombinedLayer (RenderResult *res) |
| bool | RE_HasFloatPixels (RenderResult *res) |
| bool | RE_RenderResult_is_stereo (RenderResult *res) |
| struct RenderView * | RE_RenderViewGetById (struct RenderResult *rr, const int view_id) |
| struct RenderView * | RE_RenderViewGetByName (struct RenderResult *rr, const char *viewname) |
| RenderResult * | RE_DuplicateRenderResult (RenderResult *rr) |
| #define RE_BAKE_AO 2 |
Definition at line 358 of file RE_pipeline.h.
| #define RE_BAKE_DISPLACEMENT 1 |
Definition at line 357 of file RE_pipeline.h.
| #define RE_BAKE_NORMALS 0 |
Definition at line 356 of file RE_pipeline.h.
| #define RE_MAXNAME ((MAX_ID_NAME - 2) + 10) |
Definition at line 51 of file RE_pipeline.h.
Definition at line 1 of file RE_pipeline.h.
| typedef struct RenderLayer RenderLayer |
| typedef struct RenderPass RenderPass |
| typedef struct RenderResult RenderResult |
| typedef struct RenderStats RenderStats |
| typedef struct RenderView RenderView |
| void RE_AcquiredResultGet32 | ( | struct Render * | re, |
| struct RenderResult * | result, | ||
| unsigned int * | rect, | ||
| const int | view_id | ||
| ) |
Definition at line 538 of file pipeline.c.
References Scene::display_settings, Render::rectx, Render::recty, render_result_rect_get_pixels(), result, Render::scene, and Scene::view_settings.
Referenced by ed_preview_draw_rect().
| void RE_AcquireResultImage | ( | struct Render * | re, |
| struct RenderResult * | rr, | ||
| const int | view_id | ||
| ) |
Definition at line 466 of file pipeline.c.
References BLI_rw_mutex_lock(), Render::disprect, RenderResult::have_combined, RenderResult::layers, RenderView::name, NULL, RE_PASSNAME_COMBINED, RE_PASSNAME_Z, RE_RenderLayerGetPass(), RE_RenderViewGetById(), RenderView::rect32, RenderResult::rect32, RenderView::rectf, RenderResult::rectf, RenderResult::rectx, RenderResult::recty, RenderView::rectz, RenderResult::rectz, render_get_active_layer(), Render::result, Render::resultmutex, RenderResult::stamp_data, THREAD_LOCK_READ, RenderResult::views, rcti::xmin, RenderResult::xof, rcti::ymin, and RenderResult::yof.
Referenced by image_get_render_result(), renderresult_stampinfo(), and seq_render_scene_strip().
| void RE_AcquireResultImageViews | ( | Render * | re, |
| RenderResult * | rr | ||
| ) |
Same as RE_AcquireResultImage but creating the necessary views to store the result fill provided result struct with a copy of thew views of what is done so far the RenderResult.views ListBase needs to be freed after with RE_ReleaseResultImageViews
Definition at line 407 of file pipeline.c.
References BLI_rw_mutex_lock(), Render::disprect, ListBase::first, RenderResult::have_combined, RenderResult::layers, RenderView::name, RenderView::next, NULL, RE_PASSNAME_COMBINED, RE_PASSNAME_Z, RE_RenderLayerGetPass(), RenderView::rectf, RenderResult::rectx, RenderResult::recty, RenderView::rectz, render_get_active_layer(), render_result_views_shallowcopy(), Render::result, Render::resultmutex, RenderResult::stamp_data, THREAD_LOCK_READ, RenderResult::views, rcti::xmin, RenderResult::xof, rcti::ymin, and RenderResult::yof.
Referenced by do_write_image_or_movie(), ed_preview_draw_rect(), and RE_ResultGet32().
| struct RenderResult* RE_AcquireResultRead | ( | struct Render * | re | ) |
Definition at line 343 of file pipeline.c.
References BLI_rw_mutex_lock(), NULL, Render::result, Render::resultmutex, and THREAD_LOCK_READ.
Referenced by BKE_image_acquire_renderresult(), cryptomatte_init_from_node_render(), blender::compositor::CompositorOperation::determineResolution(), blender::compositor::RenderLayersProg::determineResolution(), eyedropper_cryptomatte_sample_render_fl(), blender::compositor::RenderLayersProg::getMetaData(), image_renderinfo_cb(), blender::compositor::RenderLayersProg::initExecution(), RE_engine_set_error_message(), render_image_restore_layer(), render_image_update_pass_and_layer(), screen_opengl_render_anim_step(), screen_opengl_render_apply(), and screen_opengl_render_write().
| struct RenderResult* RE_AcquireResultWrite | ( | struct Render * | re | ) |
Definition at line 353 of file pipeline.c.
References BLI_rw_mutex_lock(), NULL, Render::result, Render::resultmutex, and THREAD_LOCK_WRITE.
Referenced by blender::compositor::CompositorOperation::deinitExecution(), screen_opengl_views_setup(), and shader_preview_texture().
| bool RE_allow_render_generic_object | ( | struct Object * | ob | ) |
Definition at line 2848 of file pipeline.c.
References OB_DUPLI, OB_DUPLIPARTS, and Object::transflag.
Referenced by clean_viewport_memory_base().
| void RE_ClearResult | ( | struct Render * | re | ) |
Definition at line 363 of file pipeline.c.
References NULL, render_result_free(), and Render::result.
Referenced by BKE_image_clear_renderslot().
| struct RenderPass* RE_create_gp_pass | ( | struct RenderResult * | rr, |
| const char * | layername, | ||
| const char * | viewname | ||
| ) |
Definition at line 2822 of file pipeline.c.
References BLI_addtail(), BLI_findstring(), BLI_freelinkN(), BLI_strncpy(), RenderResult::layers, RenderLayer::layflag, MEM_callocN, MEM_freeN, ImBuf::name, RenderLayer::name, RenderLayer::passes, RenderLayer::passflag, RE_pass_find_by_name(), RE_PASSNAME_COMBINED, RenderPass::rect, RenderLayer::rectx, RenderResult::rectx, RenderLayer::recty, RenderResult::recty, render_layer_add_pass(), SCE_LAY_SOLID, and SCE_PASS_COMBINED.
| void RE_create_render_pass | ( | struct RenderResult * | rr, |
| const char * | name, | ||
| int | channels, | ||
| const char * | chan_id, | ||
| const char * | layername, | ||
| const char * | viewname | ||
| ) |
Definition at line 519 of file render_result.c.
References ListBase::first, RenderResult::layers, RenderView::name, RenderPass::name, RenderLayer::name, RenderView::next, RenderPass::next, RenderLayer::next, RenderLayer::passes, render_layer_add_pass(), STREQ, view, RenderPass::view, and RenderResult::views.
Referenced by FRS_composite_result(), RE_engine_add_pass(), render_result_exr_file_begin(), and render_result_exr_file_end().
| void RE_current_scene_update_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, struct Scene *scene) | f | ||
| ) |
| void RE_display_clear_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr) | f | ||
| ) |
Definition at line 925 of file pipeline.c.
References Render::dch, and Render::display_clear.
| void RE_display_init_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr) | f | ||
| ) |
Definition at line 920 of file pipeline.c.
References Render::dih, and Render::display_init.
| void RE_display_update_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderResult *rr, volatile struct rcti *rect) | f | ||
| ) |
| void RE_draw_lock_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, bool lock) | f | ||
| ) |
Definition at line 953 of file pipeline.c.
References Render::dlh, and Render::draw_lock.
Referenced by screen_render_exec(), and screen_render_invoke().
| RenderResult* RE_DuplicateRenderResult | ( | RenderResult * | rr | ) |
Definition at line 1649 of file render_result.c.
References BKE_stamp_data_copy(), BLI_addtail(), duplicate_render_layer(), duplicate_render_view(), ListBase::first, ListBase::last, RenderResult::layers, MEM_dupallocN, MEM_mallocN, RenderResult::next, NULL, RenderResult::prev, RenderResult::rect32, RenderResult::rectf, RenderResult::rectz, RenderResult::stamp_data, and RenderResult::views.
Referenced by screen_opengl_render_anim_step().
Definition at line 128 of file initrender.c.
References expf, fabsf, filt_catrom(), filt_cubic(), filt_mitchell(), filt_quadratic(), M_PI, R_FILTER_BOX, R_FILTER_CATROM, R_FILTER_CUBIC, R_FILTER_GAUSS, R_FILTER_MITCH, R_FILTER_QUAD, R_FILTER_TENT, sqrtf, type, and x.
Referenced by make_gaussian_blur_kernel(), and blender::compositor::BlurBaseOperation::make_gausstab().
| void RE_FreeAllPersistentData | ( | void | ) |
Definition at line 679 of file pipeline.c.
References BLI_assert, Render::engine, RenderEngine::flag, Render::next, NULL, RE_engine_free(), RE_ENGINE_RENDERING, and RenderGlobal.
Referenced by setup_app_data().
| void RE_FreeAllRender | ( | void | ) |
Definition at line 653 of file pipeline.c.
References FRS_exit(), RE_FreeRender(), and RenderGlobal.
Referenced by WM_exit_ex().
| void RE_FreeAllRenderResults | ( | void | ) |
Definition at line 666 of file pipeline.c.
References Render::next, NULL, Render::pushedresult, render_result_free(), RenderGlobal, and Render::result.
Referenced by setup_app_data().
| void RE_FreePersistentData | ( | const Scene * | scene | ) |
Definition at line 700 of file pipeline.c.
References re_free_persistent_data(), RE_GetSceneRender(), RenderGlobal, and scene.
Referenced by ED_render_engine_changed(), and engine_depsgraph_init().
| void RE_FreeRender | ( | struct Render * | re | ) |
Definition at line 627 of file pipeline.c.
References BKE_curvemapping_free_data(), BLI_freelistN(), BLI_remlink(), BLI_rw_mutex_end(), Render::engine, Render::main, RenderData::mblur_shutter_curve, MEM_freeN, NULL, Render::partsmutex, Render::pushedresult, Render::r, RE_engine_free(), render_result_free(), RenderGlobal, Render::result, Render::resultmutex, Render::scene, Render::view_layers, and RenderData::views.
Referenced by FRS_do_stroke_rendering(), and RE_FreeAllRender().
| void RE_FreeRenderResult | ( | struct RenderResult * | rr | ) |
Definition at line 265 of file pipeline.c.
References render_result_free().
Referenced by BKE_image_clear_renderslot(), BKE_image_free_buffers_ex(), BKE_image_remove_renderslot(), image_free_data(), image_load_sequence_multilayer(), render_result_exr_file_cache_read(), render_result_single_layer_begin(), render_result_single_layer_end(), schedule_write_result(), blender::bke::cryptomatte::tests::TEST(), and write_result_func().
| const char* RE_GetActiveRenderView | ( | struct Render * | re | ) |
Definition at line 1746 of file pipeline.c.
References Render::viewname.
Referenced by EEVEE_render_draw(), EEVEE_render_read_result(), GPENCIL_render_init(), GPENCIL_render_to_image(), image_rect_update(), RE_engine_active_view_get(), screen_opengl_render_doit(), and workbench_render().
Definition at line 169 of file initrender.c.
References BKE_camera_multiview_render(), Scene::camera, Render::camera_override, Render::scene, and Render::viewname.
Referenced by do_render_engine(), do_render_full_pipeline(), EEVEE_render_init(), FRS_do_stroke_rendering(), GPENCIL_render_init(), GPENCIL_render_to_image(), Freestyle::BlenderFileLoader::insertShapeNode(), RE_PreviewRender(), renderresult_stampinfo(), workbench_render(), and workbench_render_matrices_init().
Definition at line 230 of file initrender.c.
References BKE_camera_multiview_model_matrix(), Render::r, and Render::viewname.
Referenced by EEVEE_render_view_sync(), GPENCIL_render_init(), Freestyle::BlenderFileLoader::insertShapeNode(), and workbench_render_matrices_init().
Definition at line 205 of file initrender.c.
References copy_m4_m4(), RE_SetCamera(), and Render::winmat.
Referenced by EEVEE_render_view_sync(), FRS_do_stroke_rendering(), GPENCIL_render_init(), and workbench_render_matrices_init().
Definition at line 212 of file initrender.c.
References BKE_camera_params_compute_matrix(), BLI_rctf_size_x(), BLI_rctf_size_y(), Render::clip_end, Render::clip_start, copy_m4_m4(), max_ff(), params, Render::viewplane, and Render::winmat.
Referenced by EEVEE_render_view_sync().
| struct Render* RE_GetRender | ( | const char * | name | ) |
Definition at line 328 of file pipeline.c.
References Render::name, Render::next, RE_MAXNAME, RenderGlobal, and STREQLEN.
Referenced by ed_preview_draw_rect(), RE_GetSceneRender(), RE_NewRender(), and shader_preview_render().
| struct RenderLayer* RE_GetRenderLayer | ( | struct RenderResult * | rr, |
| const char * | name | ||
| ) |
Definition at line 276 of file pipeline.c.
References BLI_findstring(), RenderResult::layers, and NULL.
Referenced by blender::compositor::RenderLayersProg::determineResolution(), DRW_render_gpencil(), eyedropper_cryptomatte_sample_render_fl(), FRS_composite_result(), blender::compositor::RenderLayersProg::initExecution(), prepare(), render_result_merge(), render_result_single_layer_end(), and save_render_result_tile().
Definition at line 387 of file pipeline.c.
References NULL, and Render::scene.
| struct RenderStats* RE_GetStats | ( | struct Render * | re | ) |
Definition at line 235 of file initrender.c.
References BLI_rcti_init(), Render::disprect, RenderData::mode, Render::r, R_BORDER, and Render::viewplane.
Referenced by DRW_render_gpencil(), and DRW_render_to_image().
| void RE_gl_context_create | ( | Render * | re | ) |
Definition at line 967 of file pipeline.c.
References Render::gl_context, WM_opengl_context_create(), and wm_window_reset_drawable().
Referenced by screen_render_invoke().
| void RE_gl_context_destroy | ( | Render * | re | ) |
Definition at line 975 of file pipeline.c.
References Render::gl_context, Render::gpu_context, GPU_context_active_set(), GPU_context_discard(), NULL, WM_opengl_context_activate(), and WM_opengl_context_dispose().
Referenced by render_pipeline_free().
| void* RE_gl_context_get | ( | Render * | re | ) |
Definition at line 991 of file pipeline.c.
References Render::gl_context.
Referenced by DRW_render_context_disable(), and DRW_render_context_enable().
| void* RE_gpu_context_get | ( | Render * | re | ) |
Definition at line 996 of file pipeline.c.
References Render::gpu_context, GPU_context_create(), and NULL.
Referenced by DRW_render_context_disable(), and DRW_render_context_enable().
| bool RE_HasCombinedLayer | ( | RenderResult * | res | ) |
Definition at line 1552 of file render_result.c.
References ListBase::first, NULL, RenderView::rect32, RenderView::rectf, and RenderResult::views.
Referenced by BKE_image_multilayer_index(), render_image_restore_layer(), ui_imageuser_layer_menu_step(), and ui_imageuser_pass_menu_step().
| bool RE_HasFloatPixels | ( | RenderResult * | res | ) |
Definition at line 1568 of file render_result.c.
References ListBase::first, RenderView::next, RenderView::rect32, RenderView::rectf, and RenderResult::views.
Referenced by image_save_single(), and RE_WriteRenderViewsImage().
| bool RE_HasSingleLayer | ( | struct Render * | re | ) |
Definition at line 285 of file pipeline.c.
References Render::r, R_SINGLE_LAYER, and RenderData::scemode.
Referenced by render_image_restore_layer().
| void RE_init_threadcount | ( | Render * | re | ) |
Definition at line 2657 of file pipeline.c.
References BKE_render_num_threads(), Render::r, and RenderData::threads.
Referenced by RE_InitState().
| void RE_InitRenderCB | ( | struct Render * | re | ) |
Definition at line 607 of file pipeline.c.
References current_scene_nothing(), Render::current_scene_update, Render::dch, default_break(), Render::dih, Render::display_clear, Render::display_init, Render::display_update, Render::duh, float_nothing(), G, NULL, Render::prh, Render::progress, result_nothing(), result_rcti_nothing(), Render::sdh, stats_background(), Render::stats_draw, stats_nothing(), Render::tbh, and Render::test_break.
Referenced by RE_NewRender(), and render_endjob().
| void RE_InitState | ( | struct Render * | re, |
| struct Render * | source, | ||
| struct RenderData * | rd, | ||
| struct ListBase * | render_layers, | ||
| struct ViewLayer * | single_layer, | ||
| int | winx, | ||
| int | winy, | ||
| rcti * | disprect | ||
| ) |
Definition at line 788 of file pipeline.c.
References Render::active_view_layer, BKE_imtype_is_movie(), BKE_report(), BLI_duplicatelist(), BLI_findindex(), BLI_findlink(), BLI_freelistN(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderData::border, check_mode_full_sample(), ListBase::first, Render::i, RenderData::im_format, ImageFormatData::imtype, RenderResult::layers, MEM_callocN, RenderData::mode, ViewLayer::name, RenderLayer::name, RenderLayer::next, NULL, Render::ok, PIL_check_seconds_timer(), Render::r, R_BORDER, R_BUTS_PREVIEW, R_CROP, R_EDGE_FRS, R_SINGLE_LAYER, re_init_resolution(), RE_init_threadcount(), RE_parts_clamp(), RE_point_density_fix_linking(), Render::rectx, RenderResult::rectx, Render::recty, RenderResult::recty, render_copy_renderdata(), render_result_free(), render_result_view_new(), Render::reports, Render::result, Render::resultmutex, RPT_ERROR, RenderData::scemode, RenderData::size, RenderStats::starttime, STREQ, THREAD_LOCK_WRITE, Render::view_layers, rctf::xmax, rctf::xmin, RenderData::xsch, rctf::ymax, rctf::ymin, and RenderData::ysch.
Referenced by do_render_compositor_scene(), RE_PreviewRender(), RE_ReadRenderResult(), render_init_from_main(), screen_opengl_render_init(), and shader_preview_texture().
| bool RE_is_rendering_allowed | ( | struct Scene * | scene, |
| struct ViewLayer * | single_layer, | ||
| struct Object * | camera_override, | ||
| struct ReportList * | reports | ||
| ) |
Definition at line 1645 of file pipeline.c.
References BKE_report(), BLI_file_is_writable(), RenderData::border, check_compositor_output(), check_mode_full_sample(), check_valid_camera(), compositor_needs_render(), FILE_MAX, RenderData::mode, Scene::nodetree, Scene::r, R_BORDER, R_DOCOMP, R_EXR_TILE_FILE, R_FULL_SAMPLE, RE_seq_render_active(), render_result_exr_file_path(), render_scene_has_layers_to_render(), RPT_ERROR, scene, str, Scene::use_nodes, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by screen_render_invoke().
| bool RE_layers_have_name | ( | struct RenderResult * | result | ) |
Definition at line 2740 of file pipeline.c.
References BLI_listbase_count_at_most(), ListBase::first, and RenderResult::layers.
Referenced by uiblock_layer_pass_buttons().
| struct RenderResult* RE_MultilayerConvert | ( | void * | exrhandle, |
| const char * | colorspace, | ||
| bool | predivide, | ||
| int | rectx, | ||
| int | recty | ||
| ) |
Definition at line 290 of file pipeline.c.
References render_result_new_from_exr().
| struct Render* RE_NewRender | ( | const char * | name | ) |
Definition at line 557 of file pipeline.c.
References BLI_addtail(), BLI_rw_mutex_init(), BLI_strncpy(), MEM_callocN, Render::name, NULL, Render::partsmutex, RE_GetRender(), RE_InitRenderCB(), RE_MAXNAME, RenderGlobal, and Render::resultmutex.
Referenced by RE_NewSceneRender(), and shader_preview_render().
| struct RenderPass* RE_pass_find_by_name | ( | volatile struct RenderLayer * | rl, |
| const char * | name, | ||
| const char * | viewname | ||
| ) |
| struct RenderPass* RE_pass_find_by_type | ( | volatile struct RenderLayer * | rl, |
| int | passtype, | ||
| const char * | viewname | ||
| ) |
| bool RE_passes_have_name | ( | struct RenderLayer * | rl | ) |
Definition at line 2753 of file pipeline.c.
References LISTBASE_FOREACH, RenderLayer::passes, and STREQ.
Referenced by uiblock_layer_pass_buttons().
Definition at line 2583 of file pipeline.c.
References Render::engine, Render::main, NULL, Scene::r, RE_engine_free(), RE_engine_render(), RE_GetCamera(), RE_InitState(), RE_SetCamera(), Render::scene, RenderData::size, Scene::view_layers, RenderData::xsch, and RenderData::ysch.
Referenced by shader_preview_render().
Definition at line 947 of file pipeline.c.
References Render::prh, and Render::progress.
Referenced by bake_invoke(), and screen_render_invoke().
Definition at line 2611 of file pipeline.c.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderData::border, RenderData::mode, NULL, Scene::r, R_BORDER, RE_GetSceneRender(), RE_InitState(), RE_NewSceneRender(), render_result_exr_file_cache_read(), render_result_uncrop(), Render::resultmutex, scene, Render::scene, RenderData::size, THREAD_LOCK_WRITE, Scene::view_layers, rcti::xmax, rctf::xmax, rcti::xmin, rctf::xmin, RenderData::xsch, rcti::ymax, rctf::ymax, rcti::ymin, rctf::ymin, and RenderData::ysch.
Referenced by image_read_viewlayers_exec(), and node_read_viewlayers_exec().
| void RE_ReleaseResult | ( | struct Render * | re | ) |
Definition at line 379 of file pipeline.c.
References BLI_rw_mutex_unlock(), and Render::resultmutex.
Referenced by BKE_image_release_renderresult(), blender::compositor::RenderLayersNode::convertToOperations(), cryptomatte_init_from_node_render(), blender::compositor::CompositorOperation::deinitExecution(), blender::compositor::CompositorOperation::determineResolution(), blender::compositor::RenderLayersProg::determineResolution(), eyedropper_cryptomatte_sample_render_fl(), blender::compositor::RenderLayersProg::getMetaData(), image_renderinfo_cb(), blender::compositor::RenderLayersProg::initExecution(), RE_engine_set_error_message(), render_image_restore_layer(), render_image_update_pass_and_layer(), screen_opengl_render_anim_step(), screen_opengl_render_apply(), screen_opengl_views_setup(), and shader_preview_texture().
| void RE_ReleaseResultImage | ( | struct Render * | re | ) |
Definition at line 512 of file pipeline.c.
References BLI_rw_mutex_unlock(), and Render::resultmutex.
Referenced by BKE_image_release_ibuf(), image_get_render_result(), renderresult_stampinfo(), screen_opengl_render_write(), and seq_render_scene_strip().
| void RE_ReleaseResultImageViews | ( | struct Render * | re, |
| struct RenderResult * | rr | ||
| ) |
Definition at line 453 of file pipeline.c.
References BLI_rw_mutex_unlock(), render_result_views_shallowdelete(), and Render::resultmutex.
Referenced by do_write_image_or_movie(), ed_preview_draw_rect(), and RE_ResultGet32().
| void RE_render_result_rect_from_ibuf | ( | struct RenderResult * | rr, |
| struct RenderData * | rd, | ||
| struct ImBuf * | ibuf, | ||
| const int | view_id | ||
| ) |
| void RE_RenderAnim | ( | struct Render * | re, |
| struct Main * | bmain, | ||
| struct Scene * | scene, | ||
| struct ViewLayer * | single_layer, | ||
| struct Object * | camera_override, | ||
| int | sfra, | ||
| int | efra, | ||
| int | tfra | ||
| ) |
Definition at line 2314 of file pipeline.c.
References ADT_RECALC_ALL, BKE_animdata_from_id(), BKE_animsys_eval_context_construct(), BKE_animsys_evaluate_animdata(), BKE_CB_EVT_RENDER_CANCEL, BKE_CB_EVT_RENDER_COMPLETE, BKE_CB_EVT_RENDER_INIT, BKE_CB_EVT_RENDER_POST, BKE_CB_EVT_RENDER_PRE, BKE_CB_EVT_RENDER_WRITE, BKE_image_path_from_imformat(), BKE_imtype_is_movie(), BKE_main_blendfile_path(), BKE_movie_handle_get(), BKE_report(), BKE_scene_frame_get(), BKE_scene_multiview_filepath_get(), BKE_scene_multiview_is_render_view_active(), BKE_scene_multiview_num_videos_get(), BKE_scene_multiview_view_id_suffix_get(), BKE_sound_reset_scene_specs(), BLI_delete(), BLI_exists(), BLI_file_size(), BLI_file_touch(), BLI_make_existing_file(), RenderData::cfra, bMovieHandle::context_create, do_render_full_pipeline(), do_write_image_or_movie(), FILE_MAX, ListBase::first, Render::flag, G, get_videos_dimensions(), height, Scene::id, RenderData::im_format, ImageFormatData::imtype, Render::main, MEM_mallocN, RenderData::mode, Render::movie_ctx_arr, SceneRenderView::name, ImBuf::name, SceneRenderView::next, NULL, RenderData::pic, Render::pipeline_depsgraph, Render::pipeline_scene_eval, Scene::r, Render::r, R_ANIMATION, R_EXTENSION, R_IMF_VIEWS_INDIVIDUAL, R_MULTIVIEW, R_NO_OVERWRITE, R_TOUCH, re_movie_free_all(), render_callback_exec_id(), render_init_depsgraph(), render_init_from_main(), render_pipeline_free(), render_update_depsgraph(), Render::reports, RPT_ERROR, RPT_INFO, RenderData::scemode, scene, bMovieHandle::start_movie, Render::tbh, Render::test_break, RenderData::views, ImageFormatData::views_format, and width.
Referenced by arg_handle_render_animation(), arg_handle_render_frame(), render_startjob(), and screen_render_exec().
| void RE_RenderFrame | ( | struct Render * | re, |
| struct Main * | bmain, | ||
| struct Scene * | scene, | ||
| struct ViewLayer * | single_layer, | ||
| struct Object * | camera_override, | ||
| int | frame, | ||
| const bool | write_still | ||
| ) |
Definition at line 1877 of file pipeline.c.
References BKE_CB_EVT_RENDER_CANCEL, BKE_CB_EVT_RENDER_COMPLETE, BKE_CB_EVT_RENDER_INIT, BKE_CB_EVT_RENDER_POST, BKE_CB_EVT_RENDER_PRE, BKE_CB_EVT_RENDER_WRITE, BKE_image_path_from_imformat(), BKE_imtype_is_movie(), BKE_main_blendfile_path(), RenderData::cfra, do_render_full_pipeline(), do_write_image_or_movie(), FILE_MAX, G, Scene::id, RenderData::im_format, ImageFormatData::imtype, Render::main, MEM_reset_peak_memory, ImBuf::name, NULL, RenderData::pic, Scene::r, R_EXTENSION, render_callback_exec_id(), render_init_depsgraph(), render_init_from_main(), render_pipeline_free(), RenderData::scemode, and scene.
Referenced by render_startjob(), screen_render_exec(), and seq_render_scene_strip().
| float* RE_RenderLayerGetPass | ( | volatile struct RenderLayer * | rl, |
| const char * | name, | ||
| const char * | viewname | ||
| ) |
| bool RE_RenderResult_is_stereo | ( | RenderResult * | res | ) |
Definition at line 1581 of file render_result.c.
References BLI_findstring(), STEREO_LEFT_NAME, STEREO_RIGHT_NAME, and RenderResult::views.
Referenced by BKE_image_multilayer_index(), and uiblock_layer_pass_buttons().
| struct RenderView* RE_RenderViewGetById | ( | struct RenderResult * | rr, |
| const int | view_id | ||
| ) |
Definition at line 1594 of file render_result.c.
References BLI_assert, BLI_findlink(), ListBase::first, and RenderResult::views.
Referenced by do_render_sequencer(), ed_preview_draw_rect(), image_buffer_rect_update(), RE_AcquireResultImage(), RE_render_result_rect_from_ibuf(), render_result_rect_fill_zero(), render_result_rect_get_pixels(), render_result_rect_to_ibuf(), screen_opengl_render_doit(), and ui_imageuser_layer_fake_name().
| struct RenderView* RE_RenderViewGetByName | ( | struct RenderResult * | rr, |
| const char * | viewname | ||
| ) |
Definition at line 1601 of file render_result.c.
References BLI_assert, BLI_findstring(), ListBase::first, and RenderResult::views.
Referenced by blender::compositor::CompositorOperation::deinitExecution().
| void RE_ResultGet32 | ( | struct Render * | re, |
| unsigned int * | rect | ||
| ) |
Definition at line 520 of file pipeline.c.
References BKE_scene_multiview_view_id_get(), Scene::display_settings, Render::r, RE_AcquireResultImageViews(), RE_ReleaseResultImageViews(), Render::rectx, Render::recty, render_result_rect_get_pixels(), Render::scene, Scene::view_settings, and Render::viewname.
Referenced by shader_preview_render().
| int RE_seq_render_active | ( | struct Scene * | scene, |
| struct RenderData * | rd | ||
| ) |
Definition at line 1313 of file pipeline.c.
References Scene::ed, ListBase::first, Sequence::next, R_DOSEQ, RenderData::scemode, scene, SEQ_TYPE_SOUND_RAM, Editing::seqbase, and Sequence::type.
Referenced by check_valid_camera(), do_render_full_pipeline(), RE_is_rendering_allowed(), and screen_render_invoke().
| void RE_SetActiveRenderView | ( | struct Render * | re, |
| const char * | viewname | ||
| ) |
Definition at line 1741 of file pipeline.c.
References BLI_strncpy(), and Render::viewname.
Referenced by do_render_sequencer(), DRW_render_gpencil(), DRW_render_to_image(), RE_engine_active_view_set(), renderresult_stampinfo(), and screen_opengl_render_apply().
Per render, there's one persistent view-plane. Parts will set their own view-planes.
Definition at line 185 of file initrender.c.
References BKE_camera_multiview_params(), BKE_camera_params_compute_matrix(), BKE_camera_params_compute_viewplane(), BKE_camera_params_from_object(), BKE_camera_params_init(), Render::clip_end, Render::clip_start, copy_m4_m4(), params, Render::r, Render::viewname, Render::viewplane, Render::winmat, Render::winx, Render::winy, RenderData::xasp, and RenderData::yasp.
Referenced by do_render_engine(), RE_GetCameraWindow(), and RE_PreviewRender().
Definition at line 175 of file initrender.c.
References Render::camera_override.
Referenced by screen_opengl_views_setup().
| void RE_SetReports | ( | struct Render * | re, |
| struct ReportList * | reports | ||
| ) |
Definition at line 1831 of file pipeline.c.
References Render::reports.
Referenced by arg_handle_render_animation(), arg_handle_render_frame(), bake_exec(), bake_startjob(), render_startjob(), and screen_render_exec().
Definition at line 395 of file pipeline.c.
References Render::scene.
Referenced by shader_preview_texture().
| void RE_stats_draw_cb | ( | struct Render * | re, |
| void * | handle, | ||
| void(*)(void *handle, RenderStats *rs) | f | ||
| ) |
Definition at line 942 of file pipeline.c.
References Render::sdh, and Render::stats_draw.
Referenced by screen_render_invoke().
| void RE_SwapResult | ( | struct Render * | re, |
| struct RenderResult ** | rr | ||
| ) |
Definition at line 371 of file pipeline.c.
References Render::result, and SWAP.
Referenced by BKE_image_backup_render(), and BKE_image_remove_renderslot().
| void RE_test_break_cb | ( | struct Render * | re, |
| void * | handle, | ||
| int(*)(void *handle) | f | ||
| ) |
Definition at line 959 of file pipeline.c.
References Render::tbh, and Render::test_break.
Referenced by bake_exec(), bake_invoke(), screen_render_exec(), screen_render_invoke(), and shader_preview_render().
| bool RE_WriteRenderResult | ( | struct ReportList * | reports, |
| RenderResult * | rr, | ||
| const char * | filename, | ||
| struct ImageFormatData * | imf, | ||
| const char * | view, | ||
| int | layer | ||
| ) |
Definition at line 872 of file render_result.c.
References Freestyle::a, BKE_reportf(), BLI_make_existing_file(), BLI_strncpy(), ImageFormatData::depth, ImageFormatData::exr_codec, EXR_PASS_MAXNAME, ListBase::first, ImageFormatData::flag, RenderResult::have_combined, IMB_exr_add_channel(), IMB_exr_add_view(), IMB_exr_begin_write(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_write_channels(), ImageFormatData::imtype, RenderResult::layers, LISTBASE_FOREACH, R_IMF_CHAN_DEPTH_16, R_IMF_FLAG_ZBUF, R_IMF_IMTYPE_OPENEXR, RE_PASSNAME_COMBINED, RE_PASSNAME_Z, RenderResult::rectx, RenderResult::recty, render_result_has_views(), RPT_ERROR, set_pass_name(), RenderResult::stamp_data, STR_ELEM, STREQ, view, and RenderResult::views.
Referenced by image_save_single(), RE_WriteRenderViewsImage(), and render_result_exr_file_cache_write().
| bool RE_WriteRenderViewsImage | ( | struct ReportList * | reports, |
| struct RenderResult * | rr, | ||
| struct Scene * | scene, | ||
| const bool | stamp, | ||
| char * | name | ||
| ) |
Definition at line 2010 of file pipeline.c.
References BKE_image_path_ensure_ext_from_imformat(), BKE_scene_multiview_view_filepath_get(), BLI_assert, BLI_findstringindex(), BLI_listbase_count_at_most(), BLI_path_extension_check(), BLI_strncpy(), Scene::display_settings, ELEM, FILE_MAX, ListBase::first, ImageFormatData::flag, RenderData::im_format, IMB_colormanagement_imbuf_for_write(), IMB_freeImBuf(), IMB_isfloat(), IMB_prepare_write_ImBuf(), IMB_stereo3d_ImBuf(), ImageFormatData::imtype, RenderView::name, ImBuf::name, names, RenderView::next, NULL, ImBuf::planes, Scene::r, R_IMF_FLAG_PREVIEW_JPG, R_IMF_IMTYPE_JPEG90, R_IMF_IMTYPE_MULTILAYER, R_IMF_IMTYPE_OPENEXR, R_IMF_VIEWS_INDIVIDUAL, R_IMF_VIEWS_MULTIVIEW, R_IMF_VIEWS_STEREO_3D, RE_HasFloatPixels(), RE_WriteRenderResult(), render_imbuf_write_stamp_test(), render_print_save_message(), render_result_rect_to_ibuf(), scene, STEREO_LEFT_NAME, STEREO_RIGHT_NAME, Scene::view_settings, RenderResult::views, and ImageFormatData::views_format.
Referenced by do_write_image_or_movie(), screen_opengl_render_write(), and write_result_func().
| bool RE_WriteRenderViewsMovie | ( | struct ReportList * | reports, |
| struct RenderResult * | rr, | ||
| struct Scene * | scene, | ||
| struct RenderData * | rd, | ||
| struct bMovieHandle * | mh, | ||
| void ** | movie_ctx_arr, | ||
| const int | totvideos, | ||
| bool | preview | ||
| ) |
Definition at line 2133 of file pipeline.c.
References bMovieHandle::append_movie, BKE_scene_multiview_view_id_suffix_get(), BLI_assert, BLI_findstringindex(), BLI_listbase_count_at_most(), RenderData::cfra, Scene::display_settings, RenderData::im_format, IMB_colormanagement_imbuf_for_write(), IMB_freeImBuf(), IMB_stereo3d_ImBuf(), ImBuf::name, names, NULL, RenderData::psfra, Scene::r, R_IMF_VIEWS_INDIVIDUAL, R_IMF_VIEWS_STEREO_3D, ImBuf::rect, render_result_rect_to_ibuf(), scene, RenderData::sfra, STEREO_LEFT_NAME, STEREO_RIGHT_NAME, Scene::view_settings, RenderResult::views, ImageFormatData::views_format, ImBuf::x, and ImBuf::y.
Referenced by do_write_image_or_movie(), and write_result_func().