|
Blender V5.0
|
#include <cstddef>#include <cstdlib>#include <cstring>#include "MEM_guardedalloc.h"#include "BLI_listbase.h"#include "BLI_math_bits.h"#include "BLI_string.h"#include "BLI_utildefines.h"#include "DNA_object_types.h"#include "BKE_camera.h"#include "BKE_global.hh"#include "BKE_node.hh"#include "BKE_report.hh"#include "BKE_scene.hh"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_debug.hh"#include "DEG_depsgraph_query.hh"#include "GPU_context.hh"#include "IMB_imbuf_types.hh"#include "RE_bake.h"#include "RE_engine.h"#include "RE_pipeline.h"#include "DRW_engine.hh"#include "WM_api.hh"#include "CLG_log.h"#include "pipeline.hh"#include "render_result.h"#include "render_types.h"Go to the source code of this file.
Variables | |
| ListBase | R_engines = {nullptr, nullptr} |
| static CLG_LogRef | LOG = {"render"} |
|
static |
Definition at line 718 of file intern/engine.cc.
References DEG_ids_clear_recalc(), RenderEngine::depsgraph, engine_depsgraph_free(), and engine_keep_depsgraph().
Referenced by engine_render_view_layer().
|
static |
Definition at line 129 of file intern/engine.cc.
References BLI_thread_is_main(), DEG_graph_free(), RenderEngine::depsgraph, DRW_gpu_context_disable(), DRW_gpu_context_enable(), DRW_render_context_disable(), DRW_render_context_enable(), RenderEngineType::flag, RenderEngine::re, RE_USE_GPU_CONTEXT, and RenderEngine::type.
Referenced by engine_depsgraph_exit(), engine_depsgraph_init(), RE_bake_engine(), RE_engine_free(), RE_engine_free_blender_memory(), and RE_engine_render().
|
static |
Definition at line 659 of file intern/engine.cc.
References BKE_scene_frame_get(), BKE_scene_graph_update_for_newframe_ex(), DAG_EVAL_RENDER, DEG_debug_name_set(), DEG_evaluate_on_framechange(), DEG_get_bmain(), DEG_get_input_scene(), DEG_get_input_view_layer(), DEG_graph_new(), DEG_graph_relations_update(), DEG_graph_replace_owners(), DEG_graph_tag_relations_update(), depsgraph, RenderEngine::depsgraph, DRW_render_check_grease_pencil(), DRW_render_context_disable(), DRW_render_context_enable(), engine_depsgraph_free(), RenderEngineType::flag, RenderEngine::has_grease_pencil, Render::main, Render::r, R_BUTS_PREVIEW, RenderEngine::re, RE_FreePersistentData(), RE_USE_GPU_CONTEXT, RenderData::scemode, Render::scene, and RenderEngine::type.
Referenced by engine_render_view_layer().
|
static |
Definition at line 649 of file intern/engine.cc.
References RenderEngineType::flag, RenderData::mode, Render::r, R_PERSISTENT_DATA, RenderEngine::re, RE_USE_GPU_CONTEXT, and RenderEngine::type.
Referenced by engine_depsgraph_exit(), RE_engine_free_blender_memory(), and RE_engine_render().
|
static |
Definition at line 957 of file intern/engine.cc.
References name, ViewLayer::name, RE_create_render_pass(), and RR_ALL_VIEWS.
Referenced by engine_render_create_result().
|
static |
Definition at line 969 of file intern/engine.cc.
References Render::disprect, BaseRender::engine, engine_render_add_result_pass_cb(), FOREACH_VIEW_LAYER_TO_RENDER_BEGIN, FOREACH_VIEW_LAYER_TO_RENDER_END, Render::r, R_BUTS_PREVIEW, RE_engine_update_render_passes(), render_result_new(), render_result_passes_allocated_ensure(), RR_ALL_LAYERS, RR_ALL_VIEWS, RenderData::scemode, and Render::scene.
Referenced by RE_engine_render().
|
static |
Definition at line 859 of file intern/engine.cc.
References BLI_findstring(), BLI_mutex_lock(), BLI_mutex_unlock(), CLOG_INFO, RenderEngine::depsgraph, BaseRender::display, DRW_render_context_disable(), DRW_render_context_enable(), DRW_render_gpencil(), BaseRender::engine, engine_depsgraph_exit(), engine_depsgraph_init(), BaseRender::engine_draw_mutex, RenderEngine::flag, RenderEngineType::flag, G, RenderEngine::has_grease_pencil, LOG, Render::main, name, ViewLayer::name, offsetof, RenderResult::passes_allocated, possibly_using_gpu_compositor(), Render::prepare_viewlayer(), RenderEngine::re, RE_ENGINE_CAN_DRAW, RE_engine_test_break(), RE_USE_GPU_CONTEXT, RenderEngineType::render, BaseRender::result, Render::scene, RenderEngine::type, RenderEngineType::update, and Scene::view_layers.
Referenced by RE_engine_render().
|
static |
Definition at line 849 of file intern/engine.cc.
References Scene::compositing_node_group, RenderData::compositor_device, Render::pipeline_scene_eval, Render::r, Scene::r, R_DOCOMP, SCE_COMPOSITOR_DEVICE_GPU, and RenderData::scemode.
Referenced by engine_render_view_layer().
| bool RE_bake_engine | ( | Render * | re, |
| Depsgraph * | depsgraph, | ||
| Object * | object, | ||
| const int | object_id, | ||
| const BakePixel | pixel_array[], | ||
| const BakeTargets * | targets, | ||
| const eScenePassType | pass_type, | ||
| const int | pass_filter, | ||
| float | result[] ) |
Definition at line 767 of file intern/engine.cc.
References RenderEngine::bake, RenderEngineType::bake, BKE_reports_contain(), RenderData::cfra, RenderStats::cfra, depsgraph, RenderEngine::depsgraph, BaseRender::engine, RenderData::engine, engine_depsgraph_free(), RenderEngine::flag, G, BakeImage::height, i, Render::i, Scene::id, RenderEngine::image_id, BakeTargets::images, BakeTargets::images_num, Render::main, ID::name, RenderEngine::object_id, RenderEngine::pixels, Render::r, Scene::r, RenderEngine::re, RE_engine_create(), RE_engine_free(), RE_ENGINE_RENDERING, RE_engines_find(), RenderEngineType::render_frame_finish, Render::reports, RenderEngine::resolution_x, RenderEngine::resolution_y, RenderEngine::result, result, RPT_ERROR, Render::scene, RenderStats::scene_name, STRNCPY(), RenderEngine::targets, RenderEngineType::update, BakeImage::width, Render::winx, and Render::winy.
Referenced by blender::ed::object::bake().
Definition at line 754 of file intern/engine.cc.
References Render::main, Render::r, Scene::r, render_copy_renderdata(), and Render::scene.
Referenced by blender::ed::object::bake().
| bool RE_bake_has_engine | ( | const Render * | re | ) |
Definition at line 761 of file intern/engine.cc.
References RenderEngineType::bake, RenderData::engine, Render::r, and RE_engines_find().
Referenced by blender::ed::object::bake().
| const char * RE_engine_active_view_get | ( | RenderEngine * | engine | ) |
Definition at line 577 of file intern/engine.cc.
References RenderEngine::re, and RE_GetActiveRenderView().
| void RE_engine_active_view_set | ( | RenderEngine * | engine, |
| const char * | viewname ) |
Definition at line 583 of file intern/engine.cc.
References RenderEngine::re, and RE_SetActiveRenderView().
| void RE_engine_add_pass | ( | RenderEngine * | engine, |
| const char * | name, | ||
| int | channels, | ||
| const char * | chan_id, | ||
| const char * | layername ) |
Definition at line 397 of file intern/engine.cc.
References name, RenderEngine::re, RE_create_render_pass(), and BaseRender::result.
| RenderResult * RE_engine_begin_result | ( | RenderEngine * | engine, |
| int | x, | ||
| int | y, | ||
| int | w, | ||
| int | h, | ||
| const char * | layername, | ||
| const char * | viewname ) |
Definition at line 316 of file intern/engine.cc.
References RenderEngine::bake, BLI_addtail(), CLAMP, Render::disprect, RenderEngine::fullresult, RenderEngine::re, RenderResult::rectx, RenderResult::recty, render_result_clone_passes(), render_result_from_bake(), render_result_new(), render_result_passes_allocated_ensure(), BaseRender::result, result, RenderEngine::targets, w(), x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by DRW_render_to_image().
| RenderEngine * RE_engine_create | ( | RenderEngineType * | type | ) |
Definition at line 118 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_init(), MEM_callocN(), 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_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 1215 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, and RenderEngine::type.
Referenced by DRW_engine_external_acquire_for_image_editor().
| void RE_engine_draw_release | ( | Render * | re | ) |
Definition at line 1245 of file intern/engine.cc.
References BLI_mutex_unlock(), and BaseRender::engine_draw_mutex.
| void RE_engine_end_result | ( | RenderEngine * | engine, |
| RenderResult * | result, | ||
| bool | cancel, | ||
| bool | highlight, | ||
| bool | merge_results ) |
Definition at line 412 of file intern/engine.cc.
References RenderEngine::bake, BLI_remlink(), BaseRender::display, 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_HIGHLIGHT_TILES, re_ensure_passes_allocated_thread_safe(), render_result_free(), render_result_merge(), render_result_to_bake(), BaseRender::result, result, RenderData::scemode, RenderEngine::targets, and blender::render::TilesHighlight::unhighlight_tile_for_result().
Referenced by DRW_render_to_image().
| void RE_engine_frame_set | ( | RenderEngine * | engine, |
| int | frame, | ||
| float | subframe ) |
Definition at line 733 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, and Render::scene.
Referenced by DRW_render_set_time(), blender::draw::gpencil::render_frame(), and blender::eevee::MotionBlurModule::step().
| void RE_engine_free | ( | RenderEngine * | engine | ) |
Definition at line 160 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, 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_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 | ( | RenderEngine * | engine | ) |
Definition at line 1193 of file intern/engine.cc.
References engine_depsgraph_free(), engine_keep_depsgraph(), and RenderEngine::has_grease_pencil.
| RenderEngine * RE_engine_get | ( | const Render * | re | ) |
Definition at line 1205 of file intern/engine.cc.
References BaseRender::engine.
| void RE_engine_get_camera_model_matrix | ( | RenderEngine * | engine, |
| Object * | camera, | ||
| bool | use_spherical_stereo, | ||
| float | r_modelmat[16] ) |
Definition at line 601 of file intern/engine.cc.
References BKE_camera_multiview_model_matrix(), float, Render::r, RenderEngine::re, and Render::viewname.
| float RE_engine_get_camera_shift_x | ( | RenderEngine * | engine, |
| Object * | camera, | ||
| bool | use_spherical_stereo ) |
Definition at line 589 of file intern/engine.cc.
References BKE_camera_multiview_shift_x(), Render::r, RenderEngine::re, and Render::viewname.
Definition at line 623 of file intern/engine.cc.
References blender::Span< T >::data(), blender::render::TilesHighlight::get_all_highlighted_tiles(), Render::get_tile_highlight(), and blender::Span< T >::size().
Referenced by draw_render_info().
| RenderData * RE_engine_get_render_data | ( | Render * | re | ) |
Definition at line 637 of file intern/engine.cc.
References Render::r.
Referenced by render_border_exec().
| RenderResult * RE_engine_get_result | ( | RenderEngine * | engine | ) |
Definition at line 462 of file intern/engine.cc.
References RenderEngine::re, and BaseRender::result.
Referenced by DRW_render_gpencil(), DRW_render_to_image(), and blender::render::hydra::FinalEngine::render().
| bool RE_engine_get_spherical_stereo | ( | RenderEngine * | engine, |
| Object * | camera ) |
Definition at line 617 of file intern/engine.cc.
References BKE_camera_multiview_spherical_stereo(), Render::r, RenderEngine::re, and true.
| 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 1309 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_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().
| void RE_engine_gpu_context_destroy | ( | RenderEngine * | engine | ) |
Definition at line 1343 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(), RenderEngine::system_gpu_context, WM_system_gpu_context_activate(), and WM_system_gpu_context_dispose().
Referenced by BlenderDisplayDriver::gpu_context_destroy().
| void RE_engine_gpu_context_disable | ( | RenderEngine * | engine | ) |
Definition at line 1391 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, RenderEngine::system_gpu_context, RenderEngine::use_drw_render_context, and WM_system_gpu_context_release().
Referenced by BlenderDisplayDriver::gpu_context_disable().
| bool RE_engine_gpu_context_enable | ( | RenderEngine * | engine | ) |
Definition at line 1367 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, RenderEngine::system_gpu_context, RenderEngine::use_drw_render_context, and WM_system_gpu_context_activate().
Referenced by BlenderDisplayDriver::gpu_context_enable().
| void RE_engine_gpu_context_lock | ( | RenderEngine * | engine | ) |
Definition at line 1410 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_lock(), RenderEngine::system_gpu_context, and RenderEngine::use_drw_render_context.
Referenced by BlenderDisplayDriver::gpu_context_lock().
| void RE_engine_gpu_context_unlock | ( | RenderEngine * | engine | ) |
Definition at line 1422 of file intern/engine.cc.
References RenderEngine::blender_gpu_context_mutex, BLI_mutex_unlock(), RenderEngine::system_gpu_context, and RenderEngine::use_drw_render_context.
Referenced by BlenderDisplayDriver::gpu_context_unlock().
| bool RE_engine_is_external | ( | const Render * | re | ) |
Definition at line 111 of file intern/engine.cc.
References BaseRender::engine, RenderEngineType::render, and RenderEngine::type.
| RenderPass * RE_engine_pass_by_index_get | ( | RenderEngine * | engine, |
| const char * | layer_name, | ||
| int | index ) |
Definition at line 556 of file intern/engine.cc.
References BLI_findlink(), RenderLayer::passes, RenderEngine::re, RE_AcquireResultRead(), RE_GetRenderLayer(), and RE_ReleaseResult().
| void RE_engine_register_pass | ( | RenderEngine * | engine, |
| Scene * | scene, | ||
| ViewLayer * | view_layer, | ||
| const char * | name, | ||
| int | channels, | ||
| const char * | chanid, | ||
| eNodeSocketDatatype | type ) |
Definition at line 1177 of file intern/engine.cc.
References name, RenderEngine::update_render_passes_cb, and RenderEngine::update_render_passes_data.
Referenced by blender::eevee::Instance::update_passes(), and workbench_render_update_passes().
| bool RE_engine_render | ( | Render * | re, |
| bool | do_all ) |
Definition at line 990 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, CLOG_INFO, BaseRender::display, 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, LOG, RenderData::mode, ID::name, RenderEngineType::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_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, RenderEngine::type, Render::winx, and Render::winy.
Referenced by do_render_engine(), do_render_full_pipeline(), and RE_PreviewRender().
| void RE_engine_report | ( | RenderEngine * | engine, |
| int | type, | ||
| const char * | msg ) |
Definition at line 529 of file intern/engine.cc.
References BKE_report(), RenderEngine::re, Render::reports, and RenderEngine::reports.
Referenced by workbench_render_to_image().
| void RE_engine_set_error_message | ( | RenderEngine * | engine, |
| const char * | msg ) |
Definition at line 541 of file intern/engine.cc.
References BLI_strdup(), RenderResult::error, MEM_freeN(), RenderEngine::re, RE_AcquireResultRead(), and RE_ReleaseResult().
Referenced by blender::workbench::Instance::draw_image_render(), blender::eevee::Instance::render_frame(), and blender::draw::gpencil::render_init_buffers().
| bool RE_engine_test_break | ( | RenderEngine * | engine | ) |
Definition at line 469 of file intern/engine.cc.
References BaseRender::display, and RenderEngine::re.
Referenced by blender::workbench::Instance::draw_image_render(), engine_render_view_layer(), RE_engine_render(), and blender::render::hydra::FinalEngine::render().
| void RE_engine_tile_highlight_clear_all | ( | RenderEngine * | engine | ) |
Definition at line 1278 of file intern/engine.cc.
References blender::render::TilesHighlight::clear(), RenderEngine::flag, Render::get_tile_highlight(), RenderEngine::re, and RE_ENGINE_HIGHLIGHT_TILES.
| void RE_engine_tile_highlight_set | ( | RenderEngine * | engine, |
| int | x, | ||
| int | y, | ||
| int | width, | ||
| int | height, | ||
| bool | highlight ) |
Definition at line 1250 of file intern/engine.cc.
References RenderEngine::flag, Render::get_tile_highlight(), blender::render::TilesHighlight::highlight_tile(), RenderEngine::re, RE_ENGINE_HIGHLIGHT_TILES, blender::render::TilesHighlight::unhighlight_tile(), x, and y.
| void RE_engine_update_memory_stats | ( | RenderEngine * | engine, |
| float | mem_used, | ||
| float | mem_peak ) |
Definition at line 519 of file intern/engine.cc.
References ceilf, Render::i, RenderStats::mem_peak, RenderStats::mem_used, and RenderEngine::re.
| void RE_engine_update_progress | ( | RenderEngine * | engine, |
| float | progress ) |
Definition at line 509 of file intern/engine.cc.
References CLAMP, BaseRender::display, and RenderEngine::re.
Referenced by blender::render::hydra::FinalEngine::notify_status(), and blender::eevee::Instance::render_frame().
| void RE_engine_update_render_passes | ( | RenderEngine * | engine, |
| Scene * | scene, | ||
| ViewLayer * | view_layer, | ||
| update_render_passes_cb_t | callback, | ||
| void * | callback_data ) |
Definition at line 1156 of file intern/engine.cc.
References BLI_mutex_lock(), BLI_mutex_unlock(), 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(), and engine_render_create_result().
| void RE_engine_update_result | ( | RenderEngine * | engine, |
| RenderResult * | result ) |
Definition at line 379 of file intern/engine.cc.
References RenderEngine::bake, BaseRender::display, RenderEngine::re, re_ensure_passes_allocated_thread_safe(), render_result_merge(), BaseRender::result, result, and RenderEngine::targets.
| void RE_engine_update_stats | ( | RenderEngine * | engine, |
| const char * | stats, | ||
| const char * | info ) |
Definition at line 482 of file intern/engine.cc.
References BaseRender::display, Render::i, RenderStats::infostr, RenderEngine::re, SNPRINTF, RenderStats::statstr, STRNCPY(), and RenderEngine::text.
Referenced by blender::render::hydra::FinalEngine::notify_status(), blender::render::hydra::ViewportEngine::notify_status(), and blender::eevee::Instance::render_frame().
| bool RE_engine_use_persistent_data | ( | RenderEngine * | engine | ) |
Definition at line 642 of file intern/engine.cc.
References RenderEngineType::flag, RenderData::mode, Render::r, R_PERSISTENT_DATA, RenderEngine::re, RE_USE_GPU_CONTEXT, and RenderEngine::type.
Referenced by render_pipeline_free().
| void RE_engines_exit | ( | void | ) |
Definition at line 66 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(), RenderEngineType::flag, ExtensionRNA::free, MEM_freeN(), next, RenderEngineType::next, R_engines, RE_INTERNAL, and RenderEngineType::rna_ext.
Referenced by blender::bke::tests::TEST(), blender::bke::tests::TEST(), and WM_exit_ex().
| RenderEngineType * RE_engines_find | ( | const char * | idname | ) |
Definition at line 99 of file intern/engine.cc.
References BLI_findstring(), offsetof, and R_engines.
Referenced by 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_RenderAnim(), 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 60 of file intern/engine.cc.
References DRW_engines_register(), and DRW_module_init().
Referenced by main(), blender::bke::tests::TEST(), and blender::bke::tests::TEST().
| void RE_engines_register | ( | RenderEngineType * | render_type | ) |
Definition at line 94 of file intern/engine.cc.
References BLI_addtail(), and R_engines.
Referenced by DRW_engines_register().
|
static |
Definition at line 368 of file intern/engine.cc.
References BLI_rw_mutex_lock(), BLI_rw_mutex_unlock(), RenderResult::passes_allocated, render_result_passes_allocated_ensure(), BaseRender::result, BaseRender::resultmutex, and THREAD_LOCK_WRITE.
Referenced by RE_engine_end_result(), and RE_engine_update_result().
| RenderEngine * RE_view_engine_get | ( | const ViewRender * | view_render | ) |
Definition at line 1210 of file intern/engine.cc.
References BaseRender::engine.
Referenced by ED_render_view3d_update(), wm_draw_region_stereo_set(), and wm_region_test_render_do_draw().
|
static |
Definition at line 178 of file intern/engine.cc.
References RenderEngine::bake, BKE_scene_ppm_get(), BLI_addtail(), BakeTargets::channels_num, ImBufFloatBuffer::data, BakePixel::du_dx, BakePixel::du_dy, BakePixel::dv_dx, BakePixel::dv_dy, ImBuf::float_buffer, RenderPass::ibuf, BakeImage::image, RenderEngine::image_id, BakeTargets::images, int_as_float(), RenderResult::layers, MEM_callocN(), RenderLayer::name, BakePixel::object_id, RenderEngine::object_id, BakeImage::offset, RenderEngine::pixels, RenderResult::ppm, BakePixel::primitive_id, Render::r, RenderEngine::re, RE_PASSNAME_COMBINED, RenderLayer::rectx, RenderResult::rectx, RenderLayer::recty, RenderResult::recty, render_layer_add_pass(), BakeImage::render_layer_name, BakePixel::seed, seed, STRNCPY(), RenderEngine::targets, RenderResult::tilerect, BakePixel::uv, w(), BakeImage::width, x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by RE_engine_begin_result().
|
static |
Definition at line 263 of file intern/engine.cc.
References RenderEngine::bake, BakeTargets::channels_num, ImBufFloatBuffer::data, ListBase::first, float, ImBuf::float_buffer, RenderPass::ibuf, BakeTargets::images, BakeTargets::images_num, RenderResult::layers, RenderLayer::name, BakePixel::object_id, RenderEngine::object_id, BakeImage::offset, RenderEngine::pixels, RE_pass_find_by_name(), RE_PASSNAME_COMBINED, BakeImage::render_layer_name, RenderEngine::result, result, STREQ, RenderEngine::targets, RenderResult::tilerect, w(), BakeImage::width, x, rcti::xmax, rcti::xmin, y, rcti::ymax, and rcti::ymin.
Referenced by RE_engine_end_result().
|
static |
Definition at line 58 of file intern/engine.cc.
Definition at line 56 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().