|
Blender V4.5
|
#include "DNA_listBase.h"#include "DNA_node_types.h"#include "DNA_scene_types.h"#include "RE_bake.h"#include "RNA_types.hh"#include "BLI_threads.h"Go to the source code of this file.
Classes | |
| struct | RenderEngineType |
| struct | RenderEngine |
Typedefs | |
| using | update_render_passes_cb_t |
Enumerations | |
| enum | RenderEngineTypeFlag { RE_INTERNAL = (1 << 0) , RE_USE_PREVIEW = (1 << 1) , RE_USE_POSTPROCESS = (1 << 2) , RE_USE_EEVEE_VIEWPORT = (1 << 3) , RE_USE_SHADING_NODES_CUSTOM = (1 << 4) , RE_USE_SPHERICAL_STEREO = (1 << 5) , RE_USE_STEREO_VIEWPORT = (1 << 6) , RE_USE_GPU_CONTEXT = (1 << 7) , RE_USE_CUSTOM_FREESTYLE = (1 << 8) , RE_USE_NO_IMAGE_SAVE = (1 << 9) , RE_USE_ALEMBIC_PROCEDURAL = (1 << 10) , RE_USE_MATERIALX = (1 << 11) } |
| enum | RenderEngineFlag { RE_ENGINE_ANIMATION = (1 << 0) , RE_ENGINE_PREVIEW = (1 << 1) , RE_ENGINE_DO_DRAW = (1 << 2) , RE_ENGINE_DO_UPDATE = (1 << 3) , RE_ENGINE_RENDERING = (1 << 4) , RE_ENGINE_HIGHLIGHT_TILES = (1 << 5) , RE_ENGINE_CAN_DRAW = (1 << 6) } |
Functions | |
| RenderEngine * | RE_engine_create (RenderEngineType *type) |
| void | RE_engine_free (RenderEngine *engine) |
| void | RE_layer_load_from_file (struct RenderLayer *layer, struct ReportList *reports, const char *filepath, int x, int y) |
| void | RE_result_load_from_file (struct RenderResult *result, struct ReportList *reports, const char *filepath) |
| struct RenderResult * | RE_engine_begin_result (RenderEngine *engine, int x, int y, int w, int h, const char *layername, const char *viewname) |
| void | RE_engine_update_result (RenderEngine *engine, struct RenderResult *result) |
| void | RE_engine_add_pass (RenderEngine *engine, const char *name, int channels, const char *chan_id, const char *layername) |
| void | RE_engine_end_result (RenderEngine *engine, struct RenderResult *result, bool cancel, bool highlight, bool merge_results) |
| struct RenderResult * | RE_engine_get_result (struct RenderEngine *engine) |
| struct RenderPass * | RE_engine_pass_by_index_get (struct RenderEngine *engine, const char *layer_name, int index) |
| const char * | RE_engine_active_view_get (RenderEngine *engine) |
| void | RE_engine_active_view_set (RenderEngine *engine, const char *viewname) |
| float | RE_engine_get_camera_shift_x (RenderEngine *engine, struct Object *camera, bool use_spherical_stereo) |
| void | RE_engine_get_camera_model_matrix (RenderEngine *engine, struct Object *camera, bool use_spherical_stereo, float r_modelmat[16]) |
| bool | RE_engine_get_spherical_stereo (RenderEngine *engine, struct Object *camera) |
| bool | RE_engine_test_break (RenderEngine *engine) |
| void | RE_engine_update_stats (RenderEngine *engine, const char *stats, const char *info) |
| void | RE_engine_update_progress (RenderEngine *engine, float progress) |
| void | RE_engine_update_memory_stats (RenderEngine *engine, float mem_used, float mem_peak) |
| void | RE_engine_report (RenderEngine *engine, int type, const char *msg) |
| void | RE_engine_set_error_message (RenderEngine *engine, const char *msg) |
| bool | RE_engine_render (struct Render *re, bool do_all) |
| bool | RE_engine_is_external (const struct Render *re) |
| void | RE_engine_frame_set (struct RenderEngine *engine, int frame, float subframe) |
| void | RE_engine_update_render_passes (struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer, update_render_passes_cb_t callback, void *callback_data) |
| void | RE_engine_register_pass (struct RenderEngine *engine, struct Scene *scene, struct ViewLayer *view_layer, const char *name, int channels, const char *chanid, eNodeSocketDatatype type) |
| bool | RE_engine_use_persistent_data (struct RenderEngine *engine) |
| struct RenderEngine * | RE_engine_get (const struct Render *re) |
| struct RenderEngine * | RE_view_engine_get (const struct ViewRender *view_render) |
| bool | RE_engine_draw_acquire (struct Render *re) |
| void | RE_engine_draw_release (struct Render *re) |
| bool | RE_engine_gpu_context_create (struct RenderEngine *engine) |
| void | RE_engine_gpu_context_destroy (struct RenderEngine *engine) |
| bool | RE_engine_gpu_context_enable (struct RenderEngine *engine) |
| void | RE_engine_gpu_context_disable (struct RenderEngine *engine) |
| void | RE_engine_gpu_context_lock (struct RenderEngine *engine) |
| void | RE_engine_gpu_context_unlock (struct RenderEngine *engine) |
| void | RE_engines_init (void) |
| void | RE_engines_exit (void) |
| void | RE_engines_register (RenderEngineType *render_type) |
| bool | RE_engine_supports_alembic_procedural (const RenderEngineType *render_type, Scene *scene) |
| RenderEngineType * | RE_engines_find (const char *idname) |
| const rcti * | RE_engine_get_current_tiles (struct Render *re, int *r_total_tiles) |
| struct RenderData * | RE_engine_get_render_data (struct Render *re) |
| void | RE_bake_engine_set_engine_parameters (struct Render *re, struct Main *bmain, struct Scene *scene) |
| void | RE_engine_free_blender_memory (struct RenderEngine *engine) |
| void | RE_engine_tile_highlight_set (struct RenderEngine *engine, int x, int y, int width, int height, bool highlight) |
| void | RE_engine_tile_highlight_clear_all (struct RenderEngine *engine) |
Variables | |
| ListBase | R_engines |
Definition at line 122 of file RE_engine.h.
| enum RenderEngineFlag |
| Enumerator | |
|---|---|
| RE_ENGINE_ANIMATION | |
| RE_ENGINE_PREVIEW | |
| RE_ENGINE_DO_DRAW | |
| RE_ENGINE_DO_UPDATE | |
| RE_ENGINE_RENDERING | |
| RE_ENGINE_HIGHLIGHT_TILES | |
| RE_ENGINE_CAN_DRAW | |
Definition at line 58 of file RE_engine.h.
| enum RenderEngineTypeFlag |
Definition at line 42 of file RE_engine.h.
| void RE_bake_engine_set_engine_parameters | ( | struct Render * | re, |
| struct Main * | bmain, | ||
| struct Scene * | scene ) |
Definition at line 763 of file intern/engine.cc.
References Render::main, Render::r, Scene::r, RE_bake_engine_set_engine_parameters(), render_copy_renderdata(), and Render::scene.
Referenced by blender::ed::object::bake(), RE_bake_engine_set_engine_parameters(), and RE_view_engine_get().
| const char * RE_engine_active_view_get | ( | RenderEngine * | engine | ) |
Definition at line 586 of file intern/engine.cc.
References RenderEngine::re, RE_engine_active_view_get(), and RE_GetActiveRenderView().
Referenced by RE_engine_active_view_get().
| void RE_engine_active_view_set | ( | RenderEngine * | engine, |
| const char * | viewname ) |
Definition at line 592 of file intern/engine.cc.
References RenderEngine::re, RE_engine_active_view_set(), and RE_SetActiveRenderView().
Referenced by RE_engine_active_view_set().
| void RE_engine_add_pass | ( | RenderEngine * | engine, |
| const char * | name, | ||
| int | channels, | ||
| const char * | chan_id, | ||
| const char * | layername ) |
Definition at line 406 of file intern/engine.cc.
References RenderEngine::re, RE_create_render_pass(), RE_engine_add_pass(), and BaseRender::result.
Referenced by RE_engine_add_pass().
| struct RenderResult * RE_engine_begin_result | ( | RenderEngine * | engine, |
| int | x, | ||
| int | y, | ||
| int | w, | ||
| int | h, | ||
| const char * | layername, | ||
| const char * | viewname ) |
Definition at line 325 of file intern/engine.cc.
References RenderEngine::bake, BLI_addtail(), CLAMP, Render::disprect, RenderEngine::fullresult, RenderEngine::re, RE_engine_begin_result(), RenderResult::rectx, RenderResult::recty, render_result_clone_passes(), render_result_from_bake(), render_result_new(), render_result_passes_allocated_ensure(), BaseRender::result, result, w(), x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by DRW_render_to_image(), and RE_engine_begin_result().
| RenderEngine * RE_engine_create | ( | RenderEngineType * | type | ) |
Definition at line 127 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_init(), MEM_callocN(), RE_engine_create(), RenderEngine::type, and RenderEngine::update_render_passes_mutex.
Referenced by cmp_node_rlayer_create_outputs(), blender::ed::space_node::node_shader_script_update_exec(), blender::ed::object::object_camera_custom_update_exec(), RE_bake_engine(), RE_engine_create(), RE_engine_render(), RE_NewViewRender(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), text_update_shader_exec(), view_layer_add_aov_exec(), and view_layer_remove_aov_exec().
| bool RE_engine_draw_acquire | ( | struct Render * | re | ) |
Acquire render engine for drawing via its draw() callback.
If drawing is not possible false is returned. If drawing is possible then the engine is "acquired" so that it can not be freed by the render pipeline.
Drawing is possible if the engine has the draw() callback and it is in its Rendering callback.
Definition at line 1220 of file intern/engine.cc.
References BLI_mutex_lock(), BLI_mutex_unlock(), RenderEngineType::draw, BaseRender::engine, BaseRender::engine_draw_mutex, RenderEngine::flag, RE_ENGINE_CAN_DRAW, RE_engine_draw_acquire(), and RenderEngine::type.
Referenced by DRW_engine_external_acquire_for_image_editor(), RE_engine_draw_acquire(), and RE_view_engine_get().
| void RE_engine_draw_release | ( | struct Render * | re | ) |
Definition at line 1250 of file intern/engine.cc.
References BLI_mutex_unlock(), BaseRender::engine_draw_mutex, and RE_engine_draw_release().
Referenced by RE_engine_draw_release(), and RE_view_engine_get().
| void RE_engine_end_result | ( | RenderEngine * | engine, |
| struct RenderResult * | result, | ||
| bool | cancel, | ||
| bool | highlight, | ||
| bool | merge_results ) |
Definition at line 421 of file intern/engine.cc.
References RenderEngine::bake, BLI_remlink(), Render::display_update(), BaseRender::engine, RenderEngine::flag, RenderEngine::fullresult, Render::get_tile_highlight(), blender::render::TilesHighlight::highlight_tile_for_result(), Render::r, R_BUTS_PREVIEW, RenderEngine::re, RE_engine_end_result(), RE_ENGINE_HIGHLIGHT_TILES, re_ensure_passes_allocated_thread_safe(), render_result_free(), render_result_merge(), render_result_to_bake(), BaseRender::result, result, RenderData::scemode, Render::test_break(), and blender::render::TilesHighlight::unhighlight_tile_for_result().
Referenced by DRW_render_to_image(), and RE_engine_end_result().
| void RE_engine_frame_set | ( | struct RenderEngine * | engine, |
| int | frame, | ||
| float | subframe ) |
Definition at line 742 of file intern/engine.cc.
References BKE_scene_camera_switch_update(), BKE_scene_frame_set(), BKE_scene_graph_update_for_newframe_ex(), CLAMP, DEG_ids_clear_recalc(), RenderEngine::depsgraph, MAXFRAME, MINAFRAME, RenderEngine::re, RE_engine_frame_set(), and Render::scene.
Referenced by DRW_render_set_time(), RE_engine_frame_set(), RE_engine_is_external(), and blender::eevee::MotionBlurModule::step().
| void RE_engine_free | ( | RenderEngine * | engine | ) |
Definition at line 169 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_end(), BPY_DECREF_RNA_INVALIDATE(), engine_depsgraph_free(), MEM_freeN(), RenderEngine::py_instance, RE_engine_free(), and RenderEngine::update_render_passes_mutex.
Referenced by cmp_node_rlayer_create_outputs(), blender::ed::space_node::node_shader_script_update_exec(), blender::ed::object::object_camera_custom_update_exec(), RE_bake_engine(), RE_engine_free(), RE_engine_render(), re_free_persistent_data(), RE_FreeAllPersistentData(), RE_PreviewRender(), render_pipeline_free(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), text_update_shader_exec(), view_layer_add_aov_exec(), view_layer_remove_aov_exec(), and BaseRender::~BaseRender().
| void RE_engine_free_blender_memory | ( | struct RenderEngine * | engine | ) |
Definition at line 1198 of file intern/engine.cc.
References engine_depsgraph_free(), engine_keep_depsgraph(), RenderEngine::has_grease_pencil, and RE_engine_free_blender_memory().
Referenced by RE_engine_free_blender_memory(), and RE_view_engine_get().
| struct RenderEngine * RE_engine_get | ( | const struct Render * | re | ) |
References RE_engine_get().
| void RE_engine_get_camera_model_matrix | ( | RenderEngine * | engine, |
| struct Object * | camera, | ||
| bool | use_spherical_stereo, | ||
| float | r_modelmat[16] ) |
Definition at line 610 of file intern/engine.cc.
References BKE_camera_multiview_model_matrix(), Render::r, RenderEngine::re, RE_engine_get_camera_model_matrix(), and Render::viewname.
Referenced by RE_engine_get_camera_model_matrix().
| float RE_engine_get_camera_shift_x | ( | RenderEngine * | engine, |
| struct Object * | camera, | ||
| bool | use_spherical_stereo ) |
Definition at line 598 of file intern/engine.cc.
References BKE_camera_multiview_shift_x(), Render::r, RenderEngine::re, RE_engine_get_camera_shift_x(), and Render::viewname.
Referenced by RE_engine_get_camera_shift_x().
Definition at line 632 of file intern/engine.cc.
References blender::Span< T >::data(), blender::render::TilesHighlight::get_all_highlighted_tiles(), Render::get_tile_highlight(), RE_engine_get_current_tiles(), and blender::Span< T >::size().
Referenced by draw_render_info(), RE_engine_get_current_tiles(), and RE_view_engine_get().
| struct RenderData * RE_engine_get_render_data | ( | struct Render * | re | ) |
Definition at line 646 of file intern/engine.cc.
References Render::r, and RE_engine_get_render_data().
Referenced by RE_engine_get_render_data(), RE_view_engine_get(), and render_border_exec().
| struct RenderResult * RE_engine_get_result | ( | struct RenderEngine * | engine | ) |
Definition at line 471 of file intern/engine.cc.
References RenderEngine::re, RE_engine_get_result(), and BaseRender::result.
Referenced by DRW_render_gpencil(), DRW_render_to_image(), RE_engine_get_result(), and blender::render::hydra::FinalEngine::render().
| bool RE_engine_get_spherical_stereo | ( | RenderEngine * | engine, |
| struct Object * | camera ) |
Definition at line 626 of file intern/engine.cc.
References BKE_camera_multiview_spherical_stereo(), Render::r, RenderEngine::re, RE_engine_get_spherical_stereo(), and true.
Referenced by RE_engine_get_spherical_stereo().
| bool RE_engine_gpu_context_create | ( | struct RenderEngine * | engine | ) |
GPU context for engine to create and update GPU resources in its own thread, without blocking the main thread. Used by Cycles' display driver to create display textures.
Definition at line 1314 of file intern/engine.cc.
References RenderEngine::blender_gpu_context, BLI_assert, BLI_thread_is_main(), DRW_gpu_context_activate(), DRW_gpu_context_release(), GPU_context_active_set(), GPU_context_create(), RenderEngine::re, RE_engine_gpu_context_create(), RE_system_gpu_context_get(), RenderEngine::system_gpu_context, RenderEngine::use_drw_render_context, WM_system_gpu_context_activate(), WM_system_gpu_context_create(), and WM_system_gpu_context_release().
Referenced by BlenderDisplayDriver::gpu_context_create(), RE_engine_gpu_context_create(), and RE_view_engine_get().
| void RE_engine_gpu_context_destroy | ( | struct RenderEngine * | engine | ) |
Definition at line 1348 of file intern/engine.cc.
References RenderEngine::blender_gpu_context, DRW_gpu_context_activate(), DRW_gpu_context_release(), GPU_context_active_get(), GPU_context_active_set(), GPU_context_discard(), RE_engine_gpu_context_destroy(), RenderEngine::system_gpu_context, WM_system_gpu_context_activate(), and WM_system_gpu_context_dispose().
Referenced by BlenderDisplayDriver::gpu_context_destroy(), RE_engine_gpu_context_destroy(), and RE_view_engine_get().
| void RE_engine_gpu_context_disable | ( | struct RenderEngine * | engine | ) |
Definition at line 1396 of file intern/engine.cc.
References RenderEngine::blender_gpu_context, RenderEngine::blender_gpu_context_mutex, BLI_mutex_unlock(), DRW_gpu_context_activate(), DRW_render_context_disable(), GPU_context_active_set(), GPU_render_end(), RenderEngine::gpu_restore_context, RenderEngine::re, RE_engine_gpu_context_disable(), RenderEngine::system_gpu_context, RenderEngine::use_drw_render_context, and WM_system_gpu_context_release().
Referenced by BlenderDisplayDriver::gpu_context_disable(), RE_engine_gpu_context_disable(), and RE_view_engine_get().
| bool RE_engine_gpu_context_enable | ( | struct RenderEngine * | engine | ) |
Definition at line 1372 of file intern/engine.cc.
References RenderEngine::blender_gpu_context, RenderEngine::blender_gpu_context_mutex, BLI_mutex_lock(), DRW_gpu_context_release(), DRW_render_context_enable(), GPU_context_active_set(), GPU_render_begin(), RenderEngine::gpu_restore_context, RenderEngine::re, RE_engine_gpu_context_enable(), RenderEngine::system_gpu_context, RenderEngine::use_drw_render_context, and WM_system_gpu_context_activate().
Referenced by BlenderDisplayDriver::gpu_context_enable(), RE_engine_gpu_context_enable(), and RE_view_engine_get().
| void RE_engine_gpu_context_lock | ( | struct RenderEngine * | engine | ) |
Definition at line 1415 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_lock(), RE_engine_gpu_context_lock(), RenderEngine::system_gpu_context, and RenderEngine::use_drw_render_context.
Referenced by BlenderDisplayDriver::gpu_context_lock(), RE_engine_gpu_context_lock(), and RE_view_engine_get().
| void RE_engine_gpu_context_unlock | ( | struct RenderEngine * | engine | ) |
Definition at line 1427 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_unlock(), RE_engine_gpu_context_unlock(), RenderEngine::system_gpu_context, and RenderEngine::use_drw_render_context.
Referenced by BlenderDisplayDriver::gpu_context_unlock(), RE_engine_gpu_context_unlock(), and RE_view_engine_get().
| bool RE_engine_is_external | ( | const struct Render * | re | ) |
| struct RenderPass * RE_engine_pass_by_index_get | ( | struct RenderEngine * | engine, |
| const char * | layer_name, | ||
| int | index ) |
Definition at line 565 of file intern/engine.cc.
References BLI_findlink(), RenderLayer::passes, RenderEngine::re, RE_AcquireResultRead(), RE_engine_pass_by_index_get(), RE_GetRenderLayer(), and RE_ReleaseResult().
Referenced by RE_engine_pass_by_index_get().
| void RE_engine_register_pass | ( | struct RenderEngine * | engine, |
| struct Scene * | scene, | ||
| struct ViewLayer * | view_layer, | ||
| const char * | name, | ||
| int | channels, | ||
| const char * | chanid, | ||
| eNodeSocketDatatype | type ) |
Definition at line 1182 of file intern/engine.cc.
References RE_engine_register_pass(), RenderEngine::update_render_passes_cb, and RenderEngine::update_render_passes_data.
Referenced by RE_engine_is_external(), RE_engine_register_pass(), blender::eevee::Instance::update_passes(), and workbench_render_update_passes().
| bool RE_engine_render | ( | struct Render * | re, |
| bool | do_all ) |
Definition at line 998 of file intern/engine.cc.
References BKE_report(), BKE_reports_contain(), BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), Render::camera_override, RenderEngine::camera_override, RenderData::cfra, RenderStats::cfra, Render::draw_lock(), Render::draw_unlock(), BaseRender::engine, RenderData::engine, engine_depsgraph_free(), engine_keep_depsgraph(), engine_render_create_result(), engine_render_view_layer(), ListBase::first, Render::flag, RenderEngine::flag, RenderEngineType::flag, FOREACH_VIEW_LAYER_TO_RENDER_BEGIN, FOREACH_VIEW_LAYER_TO_RENDER_END, RenderEngine::fullresult, G, GPU_backend_supported(), RenderEngine::has_grease_pencil, Render::i, Scene::id, RenderData::mode, ID::name, RenderResult::passes_allocated, Render::r, Scene::r, R_ANIMATION, R_BUTS_PREVIEW, R_EDGE_FRS, R_EXR_CACHE_FILE, RenderEngine::re, RE_ENGINE_ANIMATION, RE_engine_create(), RE_engine_free(), RE_ENGINE_PREVIEW, RE_engine_render(), RE_ENGINE_RENDERING, RE_engine_test_break(), RE_engines_find(), RE_USE_GPU_CONTEXT, RE_USE_POSTPROCESS, RE_USE_PREVIEW, RenderEngineType::render, RenderEngineType::render_frame_finish, render_result_exr_file_cache_write(), render_result_free(), render_result_free_list(), Render::reports, RenderEngine::resolution_x, RenderEngine::resolution_y, BaseRender::result, BaseRender::resultmutex, RPT_ERROR, SCE_LAY_GREASE_PENCIL, RenderData::scemode, Render::scene, RenderStats::scene_name, STRNCPY(), THREAD_LOCK_WRITE, Render::winx, and Render::winy.
Referenced by do_render_engine(), do_render_full_pipeline(), RE_engine_render(), and RE_PreviewRender().
| void RE_engine_report | ( | RenderEngine * | engine, |
| int | type, | ||
| const char * | msg ) |
Definition at line 538 of file intern/engine.cc.
References BKE_report(), RenderEngine::re, RE_engine_report(), Render::reports, and RenderEngine::reports.
Referenced by RE_engine_report(), and workbench_render_to_image().
| void RE_engine_set_error_message | ( | RenderEngine * | engine, |
| const char * | msg ) |
Definition at line 550 of file intern/engine.cc.
References BLI_strdup(), RenderResult::error, MEM_freeN(), RenderEngine::re, RE_AcquireResultRead(), RE_engine_set_error_message(), and RE_ReleaseResult().
Referenced by RE_engine_set_error_message(), blender::eevee::Instance::render_frame(), and blender::draw::gpencil::render_init_buffers().
| bool RE_engine_supports_alembic_procedural | ( | const RenderEngineType * | render_type, |
| Scene * | scene ) |
Return true if the RenderEngineType has native support for direct loading of Alembic data. For Cycles, this also checks that the experimental feature set is enabled.
Definition at line 112 of file intern/engine.cc.
References BKE_scene_uses_cycles(), BKE_scene_uses_cycles_experimental_features(), RenderEngineType::flag, RE_engine_supports_alembic_procedural(), and RE_USE_ALEMBIC_PROCEDURAL.
Referenced by BKE_cache_file_uses_render_procedural(), RE_engine_supports_alembic_procedural(), RE_view_engine_get(), and uiTemplateCacheFileProcedural().
| bool RE_engine_test_break | ( | RenderEngine * | engine | ) |
Definition at line 478 of file intern/engine.cc.
References RenderEngine::re, RE_engine_test_break(), and Render::test_break().
Referenced by blender::workbench::Instance::draw_image_render(), engine_render_view_layer(), RE_engine_render(), RE_engine_test_break(), and blender::render::hydra::FinalEngine::render().
| void RE_engine_tile_highlight_clear_all | ( | struct RenderEngine * | engine | ) |
Definition at line 1283 of file intern/engine.cc.
References blender::render::TilesHighlight::clear(), RenderEngine::flag, Render::get_tile_highlight(), RenderEngine::re, RE_ENGINE_HIGHLIGHT_TILES, and RE_engine_tile_highlight_clear_all().
Referenced by RE_engine_tile_highlight_clear_all(), and RE_view_engine_get().
| void RE_engine_tile_highlight_set | ( | struct RenderEngine * | engine, |
| int | x, | ||
| int | y, | ||
| int | width, | ||
| int | height, | ||
| bool | highlight ) |
Definition at line 1255 of file intern/engine.cc.
References RenderEngine::flag, Render::get_tile_highlight(), blender::render::TilesHighlight::highlight_tile(), RenderEngine::re, RE_ENGINE_HIGHLIGHT_TILES, RE_engine_tile_highlight_set(), blender::render::TilesHighlight::unhighlight_tile(), x, and y.
Referenced by RE_engine_tile_highlight_set(), and RE_view_engine_get().
| void RE_engine_update_memory_stats | ( | RenderEngine * | engine, |
| float | mem_used, | ||
| float | mem_peak ) |
Definition at line 528 of file intern/engine.cc.
References Render::i, RenderStats::mem_peak, RenderStats::mem_used, RenderEngine::re, and RE_engine_update_memory_stats().
Referenced by RE_engine_update_memory_stats().
| void RE_engine_update_progress | ( | RenderEngine * | engine, |
| float | progress ) |
Definition at line 518 of file intern/engine.cc.
References CLAMP, progress, Render::progress(), RenderEngine::re, and RE_engine_update_progress().
Referenced by blender::render::hydra::FinalEngine::notify_status(), RE_engine_update_progress(), and blender::eevee::Instance::render_frame().
| void RE_engine_update_render_passes | ( | struct RenderEngine * | engine, |
| struct Scene * | scene, | ||
| struct ViewLayer * | view_layer, | ||
| update_render_passes_cb_t | callback, | ||
| void * | callback_data ) |
Definition at line 1161 of file intern/engine.cc.
References BLI_mutex_lock(), BLI_mutex_unlock(), RE_engine_update_render_passes(), RenderEngine::type, RenderEngineType::update_render_passes, RenderEngine::update_render_passes_cb, RenderEngine::update_render_passes_data, and RenderEngine::update_render_passes_mutex.
Referenced by BKE_view_layer_verify_aov(), cmp_node_rlayer_create_outputs(), engine_render_create_result(), RE_engine_is_external(), and RE_engine_update_render_passes().
| void RE_engine_update_result | ( | RenderEngine * | engine, |
| struct RenderResult * | result ) |
Definition at line 388 of file intern/engine.cc.
References RenderEngine::bake, Render::display_update(), RenderEngine::re, RE_engine_update_result(), re_ensure_passes_allocated_thread_safe(), render_result_merge(), BaseRender::result, and result.
Referenced by RE_engine_update_result().
| void RE_engine_update_stats | ( | RenderEngine * | engine, |
| const char * | stats, | ||
| const char * | info ) |
Definition at line 491 of file intern/engine.cc.
References Render::i, RenderStats::infostr, RenderEngine::re, RE_engine_update_stats(), SNPRINTF, Render::stats_draw(), RenderStats::statstr, STRNCPY(), and RenderEngine::text.
Referenced by blender::render::hydra::FinalEngine::notify_status(), blender::render::hydra::ViewportEngine::notify_status(), RE_engine_update_stats(), and blender::eevee::Instance::render_frame().
| bool RE_engine_use_persistent_data | ( | struct RenderEngine * | engine | ) |
Definition at line 651 of file intern/engine.cc.
References RenderEngineType::flag, RenderData::mode, Render::r, R_PERSISTENT_DATA, RenderEngine::re, RE_engine_use_persistent_data(), RE_USE_GPU_CONTEXT, and RenderEngine::type.
Referenced by RE_engine_is_external(), RE_engine_use_persistent_data(), and render_pipeline_free().
| void RE_engines_exit | ( | void | ) |
Definition at line 62 of file intern/engine.cc.
References BLI_remlink(), ExtensionRNA::data, DRW_engines_free(), DRW_gpu_context_disable(), DRW_gpu_context_try_enable(), DRW_module_exit(), ListBase::first, RenderEngineType::flag, ExtensionRNA::free, MEM_freeN(), RenderEngineType::next, R_engines, RE_engines_exit(), RE_INTERNAL, and RenderEngineType::rna_ext.
Referenced by RE_engines_exit(), RE_view_engine_get(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), and WM_exit_ex().
| RenderEngineType * RE_engines_find | ( | const char * | idname | ) |
Definition at line 95 of file intern/engine.cc.
References BLI_findstring(), offsetof, R_engines, and RE_engines_find().
Referenced by BKE_cache_file_uses_render_procedural(), BKE_scene_use_shading_nodes_custom(), BKE_scene_use_spherical_stereo(), check_rendered_viewport_visible(), cmp_node_rlayer_create_outputs(), CTX_data_engine_type(), do_write_image_or_movie(), ED_check_engine_supports_preview(), ED_view3d_engine_type(), ED_view3d_has_depth_buffer_updated(), RE_bake_engine(), RE_bake_has_engine(), RE_engine_render(), RE_engines_find(), RE_RenderAnim(), RE_view_engine_get(), screen_render_exec(), screen_render_invoke(), blender::bke::tests::TEST(), blender::bke::tests::TEST(), view3d_main_region_do_render_draw(), view_layer_add_aov_exec(), and view_layer_remove_aov_exec().
| void RE_engines_init | ( | void | ) |
Definition at line 56 of file intern/engine.cc.
References DRW_engines_register(), DRW_module_init(), and RE_engines_init().
Referenced by main(), RE_engines_init(), RE_view_engine_get(), blender::bke::tests::TEST(), and blender::bke::tests::TEST().
| void RE_engines_register | ( | RenderEngineType * | render_type | ) |
Definition at line 90 of file intern/engine.cc.
References BLI_addtail(), R_engines, and RE_engines_register().
Referenced by DRW_engines_register(), RE_engines_register(), and RE_view_engine_get().
| void RE_layer_load_from_file | ( | struct RenderLayer * | layer, |
| struct ReportList * | reports, | ||
| const char * | filepath, | ||
| int | x, | ||
| int | y ) |
Loads in image into a result, size must match x/y offsets are only used on a partial copy when dimensions don't match.
Definition at line 2787 of file source/blender/render/intern/pipeline.cc.
References BKE_reportf(), ImBuf::byte_buffer, ImBufByteBuffer::data, ImBufFloatBuffer::data, ListBase::first, ImBuf::float_buffer, IB_byte_data, IB_float_data, RenderPass::ibuf, IMB_allocImBuf(), IMB_float_from_byte(), IMB_freeImBuf(), IMB_load_image_from_filepath(), IMB_rectcpy(), RenderPass::name, RenderPass::next, RenderLayer::passes, RE_layer_load_from_file(), RE_PASSNAME_COMBINED, RenderLayer::rectx, RenderLayer::recty, render_result_exr_file_read_path(), reports, RPT_ERROR, STREQ, ImBuf::x, x, ImBuf::y, and y.
Referenced by RE_layer_load_from_file().
| void RE_result_load_from_file | ( | struct RenderResult * | result, |
| struct ReportList * | reports, | ||
| const char * | filepath ) |
Definition at line 2862 of file source/blender/render/intern/pipeline.cc.
References BKE_reportf(), RE_result_load_from_file(), render_result_exr_file_read_path(), reports, result, and RPT_ERROR.
Referenced by RE_result_load_from_file().
| struct RenderEngine * RE_view_engine_get | ( | const struct ViewRender * | view_render | ) |
References RE_bake_engine_set_engine_parameters(), RE_engine_draw_acquire(), RE_engine_draw_release(), RE_engine_free_blender_memory(), RE_engine_get_current_tiles(), RE_engine_get_render_data(), RE_engine_gpu_context_create(), RE_engine_gpu_context_destroy(), RE_engine_gpu_context_disable(), RE_engine_gpu_context_enable(), RE_engine_gpu_context_lock(), RE_engine_gpu_context_unlock(), RE_engine_supports_alembic_procedural(), RE_engine_tile_highlight_clear_all(), RE_engine_tile_highlight_set(), RE_engines_exit(), RE_engines_find(), RE_engines_init(), RE_engines_register(), RE_view_engine_get(), x, and y.
|
extern |
Definition at line 54 of file intern/engine.cc.
Referenced by arg_handle_engine_set(), RE_engines_exit(), RE_engines_find(), RE_engines_register(), and wm_file_read_report().