Blender V4.3
render_update.cc File Reference
#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.hh"
#include "BLI_listbase.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "BKE_brush.hh"
#include "BKE_context.hh"
#include "BKE_icons.h"
#include "BKE_main.hh"
#include "BKE_material.h"
#include "BKE_paint.hh"
#include "BKE_scene.hh"
#include "NOD_composite.hh"
#include "RE_engine.h"
#include "RE_pipeline.h"
#include "ED_node.hh"
#include "ED_node_preview.hh"
#include "ED_paint.hh"
#include "ED_render.hh"
#include "ED_view3d.hh"
#include "DEG_depsgraph.hh"
#include "DEG_depsgraph_query.hh"
#include "WM_api.hh"
#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 *bmain, Material *ma)
 
static void lamp_changed (Main *bmain, Light *la)
 
static void texture_changed (Main *bmain, Tex *tex)
 
static void world_changed (Main *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)
 

Function Documentation

◆ ED_render_engine_area_exit()

void ED_render_engine_area_exit ( Main * bmain,
ScrArea * area )

◆ ED_render_engine_changed()

◆ ED_render_id_flush_update()

◆ ED_render_scene_update()

void ED_render_scene_update ( const DEGEditorUpdateContext * update_ctx,
bool updated )

Update all 3D viewport render and draw engines on changes to the scene. This is called by the dependency graph when it detects changes.

Definition at line 117 of file render_update.cc.

References 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().

Referenced by WM_init().

◆ ED_render_view3d_update()

◆ ED_render_view_layer_changed()

void ED_render_view_layer_changed ( Main * bmain,
bScreen * screen )

Definition at line 219 of file render_update.cc.

References ED_render_engine_area_exit(), and LISTBASE_FOREACH.

Referenced by WM_window_set_active_view_layer().

◆ image_changed()

◆ lamp_changed()

static void lamp_changed ( Main * bmain,
Light * la )
static

◆ material_changed()

static void material_changed ( Main * bmain,
Material * ma )
static

◆ scene_changed()

static void scene_changed ( Main * bmain,
Scene * scene )
static

◆ texture_changed()

◆ world_changed()

static void world_changed ( Main * bmain,
World * wo )
static