Blender
V3.3
|
#include <cstdlib>
#include <cstring>
#include "DNA_cachefile_types.h"
#include "DNA_light_types.h"
#include "DNA_material_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
#include "DNA_view3d_types.h"
#include "DNA_windowmanager_types.h"
#include "DNA_world_types.h"
#include "DRW_engine.h"
#include "BLI_listbase.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "BKE_context.h"
#include "BKE_icons.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_node.h"
#include "BKE_paint.h"
#include "BKE_scene.h"
#include "NOD_composite.h"
#include "RE_engine.h"
#include "RE_pipeline.h"
#include "ED_node.h"
#include "ED_paint.h"
#include "ED_render.h"
#include "ED_view3d.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_query.h"
#include "WM_api.h"
#include <cstdio>
Go to the source code of this file.
Functions | |
Render Engines | |
void | ED_render_view3d_update (Depsgraph *depsgraph, wmWindow *window, ScrArea *area, const bool updated) |
void | ED_render_scene_update (const DEGEditorUpdateContext *update_ctx, const bool updated) |
void | ED_render_engine_area_exit (Main *bmain, ScrArea *area) |
void | ED_render_engine_changed (Main *bmain, const bool update_scene_data) |
void | ED_render_view_layer_changed (Main *bmain, bScreen *screen) |
Updates | |
ED_render_id_flush_update gets called from DEG_id_tag_update, to do editor level updates when the ID changes. When these ID blocks are in the dependency graph, we can get rid of the manual dependency checks. | |
static void | material_changed (Main *UNUSED(bmain), Material *ma) |
static void | lamp_changed (Main *UNUSED(bmain), Light *la) |
static void | texture_changed (Main *bmain, Tex *tex) |
static void | world_changed (Main *UNUSED(bmain), World *wo) |
static void | image_changed (Main *bmain, Image *ima) |
static void | scene_changed (Main *bmain, Scene *scene) |
void | ED_render_id_flush_update (const DEGEditorUpdateContext *update_ctx, ID *id) |
Definition at line 152 of file render_update.cc.
References blender::compositor::area(), ED_view3d_stop_render_preview(), ListBase::first, ARegion::next, ARegion::regiondata, ARegion::regiontype, RGN_TYPE_WINDOW, SPACE_VIEW3D, and Main::wm.
Referenced by ED_render_engine_changed(), and ED_render_view_layer_changed().
Definition at line 170 of file render_update.cc.
References blender::compositor::area(), BKE_scene_ensure_depsgraph(), DEGEditorUpdateContext::bmain, Main::cachefiles, DEG_id_tag_update(), DEG_relations_tag_update(), DEGEditorUpdateContext::depsgraph, ED_render_engine_area_exit(), ED_render_id_flush_update(), ListBase::first, Scene::id, ID_RECALC_COPY_ON_WRITE, LISTBASE_FOREACH, ID::next, Scene::nodetree, ntreeCompositUpdateRLayers(), RE_FreePersistentData(), DEGEditorUpdateContext::scene, scene, Main::scenes, Main::screens, DEGEditorUpdateContext::view_layer, and Scene::view_layers.
Referenced by ED_scene_change_update().
void ED_render_id_flush_update | ( | const DEGEditorUpdateContext * | update_ctx, |
ID * | id | ||
) |
Definition at line 304 of file render_update.cc.
References BLI_thread_is_main(), DEGEditorUpdateContext::bmain, GS, id, ID_IM, ID_LA, ID_MA, ID_SCE, ID_TE, ID_WO, image_changed(), lamp_changed(), material_changed(), ID::name, scene_changed(), texture_changed(), and world_changed().
Referenced by ED_render_engine_changed().
void ED_render_scene_update | ( | const DEGEditorUpdateContext * | update_ctx, |
const bool | updated | ||
) |
Definition at line 115 of file render_update.cc.
References blender::compositor::area(), bScreen::areabase, BLI_listbase_is_empty(), BLI_thread_is_main(), DEGEditorUpdateContext::bmain, DEGEditorUpdateContext::depsgraph, ED_render_view3d_update(), ListBase::first, LISTBASE_FOREACH, SPACE_VIEW3D, wmWindowManager::windows, Main::wm, and WM_window_get_active_screen().
void ED_render_view3d_update | ( | struct Depsgraph * | depsgraph, |
struct wmWindow * | window, | ||
struct ScrArea * | area, | ||
bool | updated | ||
) |
Update 3D viewport render or draw engine on changes to the scene or view settings.
Definition at line 58 of file render_update.cc.
References blender::compositor::area(), DRWUpdateContext::bmain, C, CTX_create(), CTX_data_depsgraph_pointer(), CTX_data_main_set(), CTX_data_scene_set(), CTX_free(), CTX_wm_area_set(), CTX_wm_manager_set(), CTX_wm_region_set(), CTX_wm_screen_set(), CTX_wm_window_set(), DEG_get_bmain(), DEG_get_input_scene(), DEG_get_input_view_layer(), depsgraph, DRWUpdateContext::depsgraph, DRW_notify_view_update(), ED_view3d_engine_type(), DRWUpdateContext::engine_type, ListBase::first, RenderEngine::flag, LISTBASE_FOREACH, RE_ENGINE_DO_UPDATE, DRWUpdateContext::region, RegionView3D::render_engine, RGN_TYPE_WINDOW, scene, DRWUpdateContext::scene, View3D::shading, View3DShading::type, RenderEngine::type, DRWUpdateContext::v3d, DRWUpdateContext::view_layer, RenderEngineType::view_update, Main::wm, and WM_window_get_active_screen().
Referenced by ED_render_scene_update(), and view3d_main_region_listener().
Definition at line 211 of file render_update.cc.
References blender::compositor::area(), bScreen::areabase, ED_render_engine_area_exit(), and LISTBASE_FOREACH.
Referenced by WM_window_set_active_view_layer().
Definition at line 274 of file render_update.cc.
References BKE_icon_changed(), BKE_icon_id_ensure(), ListBase::first, Image::id, Tex::id, Tex::ima, ID::next, tex, TEX_IMAGE, texture_changed(), Main::textures, and Tex::type.
Referenced by ED_render_id_flush_update().
Definition at line 235 of file render_update.cc.
References BKE_icon_changed(), BKE_icon_id_ensure(), and Light::id.
Referenced by ED_render_id_flush_update().
Definition at line 229 of file render_update.cc.
References BKE_icon_changed(), BKE_icon_id_ensure(), and Material::id.
Referenced by ED_render_id_flush_update().
Definition at line 290 of file render_update.cc.
References BKE_texpaint_slots_refresh_object(), ED_paint_proj_mesh_data_check(), ListBase::first, Object::id, Object::mode, ID::next, OB_MODE_TEXTURE_PAINT, Main::objects, and scene.
Referenced by ED_render_id_flush_update().
Definition at line 241 of file render_update.cc.
References BKE_icon_changed(), BKE_icon_id_ensure(), BKE_paint_invalidate_overlay_tex(), ED_node_tag_update_id(), ListBase::first, Scene::id, Tex::id, ID::next, ViewLayer::next, node, bNodeTree::nodes, Scene::nodetree, scene, Main::scenes, tex, Scene::use_nodes, and Scene::view_layers.
Referenced by ED_render_id_flush_update(), and image_changed().
Definition at line 268 of file render_update.cc.
References BKE_icon_changed(), BKE_icon_id_ensure(), and World::id.
Referenced by ED_render_id_flush_update().