|
Blender V4.3
|
Go to the source code of this file.
Macros | |
| #define | PASS_VECTOR_MAX 10000.0f |
| #define | RR_ALL_LAYERS NULL |
| #define | RR_ALL_VIEWS NULL |
| #define | FOREACH_VIEW_LAYER_TO_RENDER_BEGIN(re_, iter_) |
| #define | FOREACH_VIEW_LAYER_TO_RENDER_END |
Functions | |
| struct RenderResult * | render_result_new (struct Render *re, const struct rcti *partrct, const char *layername, const char *viewname) |
| void | render_result_passes_allocated_ensure (struct RenderResult *rr) |
| struct RenderResult * | render_result_new_from_exr (void *exrhandle, const char *colorspace, bool predivide, int rectx, int recty) |
| void | render_result_view_new (struct RenderResult *rr, const char *viewname) |
| void | render_result_views_new (struct RenderResult *rr, const struct RenderData *rd) |
| void | render_result_merge (struct RenderResult *rr, struct RenderResult *rrpart) |
| void | render_result_clone_passes (struct Render *re, struct RenderResult *rr, const char *viewname) |
| void | render_result_free (struct RenderResult *rr) |
| void | render_result_free_list (struct ListBase *lb, struct RenderResult *rr) |
| void | render_result_single_layer_begin (struct Render *re) |
| void | render_result_single_layer_end (struct Render *re) |
| struct RenderPass * | render_layer_add_pass (struct RenderResult *rr, struct RenderLayer *rl, int channels, const char *name, const char *viewname, const char *chan_id, bool allocate) |
| bool | render_result_exr_file_read_path (struct RenderResult *rr, struct RenderLayer *rl_single, struct ReportList *reports, const char *filepath) |
| void | render_result_exr_file_cache_write (struct Render *re) |
| bool | render_result_exr_file_cache_read (struct Render *re) |
| struct ImBuf * | render_result_rect_to_ibuf (struct RenderResult *rr, const struct RenderData *rd, int view_id) |
| void | render_result_rect_fill_zero (struct RenderResult *rr, int view_id) |
| void | render_result_rect_get_pixels (struct RenderResult *rr, unsigned int *rect, int rectx, int recty, const struct ColorManagedViewSettings *view_settings, const struct ColorManagedDisplaySettings *display_settings, int view_id) |
| void | render_result_views_shallowcopy (struct RenderResult *dst, struct RenderResult *src) |
| void | render_result_views_shallowdelete (struct RenderResult *rr) |
| void | render_result_free_gpu_texture_caches (struct RenderResult *rr) |
| #define FOREACH_VIEW_LAYER_TO_RENDER_BEGIN | ( | re_, | |
| iter_ ) |
Definition at line 141 of file render_result.h.
Referenced by engine_render_create_result(), RE_engine_render(), and render_result_new().
| #define FOREACH_VIEW_LAYER_TO_RENDER_END |
Definition at line 160 of file render_result.h.
Referenced by engine_render_create_result(), RE_engine_render(), and render_result_new().
| #define PASS_VECTOR_MAX 10000.0f |
Definition at line 11 of file render_result.h.
Referenced by render_layer_allocate_pass().
Definition at line 13 of file render_result.h.
Referenced by do_render_compositor(), engine_render_create_result(), and render_result_uncrop().
Definition at line 14 of file render_result.h.
Referenced by do_render_compositor(), engine_render_add_result_pass_cb(), engine_render_create_result(), and render_result_uncrop().
| struct RenderPass * render_layer_add_pass | ( | struct RenderResult * | rr, |
| struct RenderLayer * | rl, | ||
| int | channels, | ||
| const char * | name, | ||
| const char * | viewname, | ||
| const char * | chan_id, | ||
| bool | allocate ) |
Render pass wrapper for grease-pencil.
Definition at line 229 of file render_result.cc.
References BLI_addtail(), BLI_findstringindex(), RenderPass::chan_id, channels(), RenderPass::channels, EXR_PASS_MAXNAME, RenderLayer::exrhandle, RenderPass::fullname, IMB_exr_add_channel(), RenderLayer::name, RenderPass::name, offsetof, RenderLayer::passes, RenderResult::passes_allocated, RE_render_result_full_channel_name(), RenderLayer::rectx, RenderPass::rectx, RenderLayer::recty, RenderPass::recty, render_layer_allocate_pass(), STRNCPY, RenderPass::view, RenderPass::view_id, and RenderResult::views.
Referenced by RE_create_gp_pass(), RE_create_render_pass(), render_result_clone_passes(), render_result_from_bake(), and render_result_new().
| void render_result_clone_passes | ( | struct Render * | re, |
| struct RenderResult * | rr, | ||
| const char * | viewname ) |
Definition at line 395 of file render_result.cc.
References BLI_findstring(), RenderResult::layers, LISTBASE_FOREACH, offsetof, RenderLayer::passes, RE_GetRenderLayer(), render_layer_add_pass(), BaseRender::result, and STREQ.
Referenced by RE_engine_begin_result(), and render_result_uncrop().
| bool render_result_exr_file_cache_read | ( | struct Render * | re | ) |
For cache, makes exact copy of render result.
Definition at line 1049 of file render_result.cc.
References COLOR_ROLE_SCENE_LINEAR, FILE_CACHE_MAX, IMB_colormanagement_role_colorspace_name_get(), IMB_exr_begin_read(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_read_channels(), printf, RE_FreeRenderResult(), render_result_exr_file_cache_path(), render_result_new_from_exr(), BaseRender::result, and Render::scene.
Referenced by RE_ReadRenderResult().
| void render_result_exr_file_cache_write | ( | struct Render * | re | ) |
Definition at line 1035 of file render_result.cc.
References BKE_image_render_write_exr(), FILE_CACHE_MAX, printf, RenderResult::rectx, RenderResult::recty, render_result_exr_file_cache_path(), render_result_passes_allocated_ensure(), BaseRender::result, Render::scene, and str.
Referenced by RE_engine_render().
| bool render_result_exr_file_read_path | ( | struct RenderResult * | rr, |
| struct RenderLayer * | rl_single, | ||
| struct ReportList * | reports, | ||
| const char * | filepath ) |
Called for reading temp files, and for external engines.
Definition at line 899 of file render_result.cc.
References BKE_reportf(), EXR_PASS_MAXNAME, IMB_exr_begin_read(), IMB_exr_close(), IMB_exr_get_handle(), IMB_exr_read_channels(), IMB_exr_set_channel(), RenderResult::layers, LISTBASE_FOREACH, RE_render_result_full_channel_name(), RenderLayer::rectx, RenderResult::rectx, RenderLayer::recty, RenderResult::recty, RPT_ERROR, and RPT_WARNING.
Referenced by RE_layer_load_from_file(), and RE_result_load_from_file().
| void render_result_free | ( | struct RenderResult * | rr | ) |
Definition at line 62 of file render_result.cc.
References BKE_stamp_data_free(), BLI_freelinkN(), BLI_remlink(), RenderResult::error, ListBase::first, RenderPass::ibuf, RenderResult::ibuf, IMB_freeImBuf(), RenderResult::layers, MEM_freeN(), RenderLayer::passes, render_result_views_free(), RenderResult::stamp_data, RenderResult::text, and RenderResult::user_counter.
Referenced by do_render_compositor(), RE_ClearResult(), RE_engine_end_result(), RE_engine_render(), RE_FreeAllRenderResults(), RE_FreeRenderResult(), RE_InitState(), render_result_free_list(), render_result_uncrop(), BaseRender::~BaseRender(), and Render::~Render().
| void render_result_free_gpu_texture_caches | ( | struct RenderResult * | rr | ) |
Free GPU texture caches to reduce memory usage.
Definition at line 122 of file render_result.cc.
References IMB_free_gpu_textures(), RenderResult::layers, and LISTBASE_FOREACH.
Referenced by re_gpu_texture_caches_free().
| void render_result_free_list | ( | struct ListBase * | lb, |
| struct RenderResult * | rr ) |
Version that's compatible with full-sample buffers.
Definition at line 107 of file render_result.cc.
References BLI_remlink(), ListBase::first, RenderResult::next, and render_result_free().
Referenced by RE_engine_render().
| void render_result_merge | ( | struct RenderResult * | rr, |
| struct RenderResult * | rrpart ) |
Used when rendering to a full buffer, or when reading the EXR part-layer-pass file. no test happens here if it fits... we also assume layers are in sync.
Definition at line 805 of file render_result.cc.
References ImBufFloatBuffer::data, do_merge_tile(), ListBase::first, ImBuf::float_buffer, RenderResult::ibuf, RenderResult::layers, LISTBASE_FOREACH, RenderLayer::passes, RE_GetRenderLayer(), and STREQ.
Referenced by RE_engine_end_result(), RE_engine_update_result(), and render_result_uncrop().
| struct RenderResult * render_result_new | ( | struct Render * | re, |
| const struct rcti * | partrct, | ||
| const char * | layername, | ||
| const char * | viewname ) |
Called by main render as well for parts will read info from Render *re to define layers.
re->winx, re->winy is coordinate space of entire image, partrct the part within.
| struct RenderResult * render_result_new_from_exr | ( | void * | exrhandle, |
| const char * | colorspace, | ||
| bool | predivide, | ||
| int | rectx, | ||
| int | recty ) |
From imbuf, if a handle was returned and it's not a single-layer multi-view we convert this to render result.
Definition at line 707 of file render_result.cc.
References BLI_listbase_sort(), COLOR_ROLE_DATA, COLOR_ROLE_SCENE_LINEAR, IMB_colormanagement_assign_float_colorspace(), IMB_colormanagement_role_colorspace_name_get(), IMB_colormanagement_transform(), IMB_exr_multilayer_convert(), RenderResult::layers, LISTBASE_FOREACH, ml_addlayer_cb(), ml_addpass_cb(), ml_addview_cb(), order_render_passes(), RE_RenderPassIsColor(), RenderResult::rectx, and RenderResult::recty.
Referenced by RE_MultilayerConvert(), and render_result_exr_file_cache_read().
| void render_result_passes_allocated_ensure | ( | struct RenderResult * | rr | ) |
Definition at line 374 of file render_result.cc.
References RenderResult::layers, LISTBASE_FOREACH, RenderResult::passes_allocated, RE_PASSNAME_COMBINED, render_layer_allocate_pass(), and STREQ.
Referenced by engine_render_create_result(), RE_AcquireResultWrite(), RE_engine_begin_result(), re_ensure_passes_allocated_thread_safe(), render_result_exr_file_cache_write(), and render_result_uncrop().
| void render_result_rect_fill_zero | ( | struct RenderResult * | rr, |
| int | view_id ) |
Definition at line 1179 of file render_result.cc.
References ImBuf::byte_buffer, ImBufByteBuffer::data, ImBufFloatBuffer::data, ImBuf::float_buffer, IB_TAKE_OWNERSHIP, IMB_assign_byte_buffer(), RE_RenderViewEnsureImBuf(), RE_RenderViewGetById(), RenderResult::rectx, and RenderResult::recty.
Referenced by do_render_sequencer().
| void render_result_rect_get_pixels | ( | struct RenderResult * | rr, |
| unsigned int * | rect, | ||
| int | rectx, | ||
| int | recty, | ||
| const struct ColorManagedViewSettings * | view_settings, | ||
| const struct ColorManagedDisplaySettings * | display_settings, | ||
| int | view_id ) |
| struct ImBuf * render_result_rect_to_ibuf | ( | struct RenderResult * | rr, |
| const struct RenderData * | rd, | ||
| int | view_id ) |
| void render_result_single_layer_begin | ( | struct Render * | re | ) |
Definition at line 850 of file render_result.cc.
References Render::pushedresult, RE_FreeRenderResult(), and BaseRender::result.
Referenced by render_init_from_main().
| void render_result_single_layer_end | ( | struct Render * | re | ) |
If RenderData.scemode is R_SINGLE_LAYER, at end of rendering, merge the both render results.
Definition at line 861 of file render_result.cc.
References BLI_addtail(), BLI_remlink(), ListBase::first, RenderResult::layers, LISTBASE_FOREACH, printf, Render::pushedresult, RE_FreeRenderResult(), RE_GetRenderLayer(), RenderResult::rectx, RenderResult::recty, BaseRender::result, Render::scene, Render::single_view_layer, STREQ, and Scene::view_layers.
Referenced by do_render_compositor().
| void render_result_view_new | ( | struct RenderResult * | rr, |
| const char * | viewname ) |
Definition at line 748 of file render_result.cc.
References BLI_addtail(), RenderView::name, STRNCPY, and RenderResult::views.
Referenced by RE_InitState(), and render_result_views_new().
| void render_result_views_new | ( | struct RenderResult * | rr, |
| const struct RenderData * | rd ) |
| void render_result_views_shallowcopy | ( | struct RenderResult * | dst, |
| struct RenderResult * | src ) |
Create a new views ListBase in rr without duplicating the memory pointers.
Definition at line 137 of file render_result.cc.
References BLI_addtail(), RenderView::ibuf, LISTBASE_FOREACH, RenderView::name, STRNCPY, and RenderResult::views.
Referenced by RE_AcquireResultImageViews().
| void render_result_views_shallowdelete | ( | struct RenderResult * | rr | ) |
Free the views created temporarily.
Definition at line 155 of file render_result.cc.
References BLI_remlink(), ListBase::first, MEM_freeN(), and RenderResult::views.
Referenced by RE_ReleaseResultImageViews().