Blender V4.3
depsgraph.cc File Reference

Go to the source code of this file.

Namespaces

namespace  blender
 
namespace  blender::deg
 

Functions

template<typename FilterFunc >
static void blender::deg::clear_id_nodes_conditional (Depsgraph::IDDepsNodes *id_nodes, const FilterFunc &filter)
 
Depsgraph * DEG_graph_new (Main *bmain, Scene *scene, ViewLayer *view_layer, eEvaluationMode mode)
 
void DEG_graph_replace_owners (Depsgraph *depsgraph, Main *bmain, Scene *scene, ViewLayer *view_layer)
 
void DEG_graph_free (Depsgraph *graph)
 
bool DEG_is_evaluating (const Depsgraph *depsgraph)
 
bool DEG_is_active (const Depsgraph *depsgraph)
 
void DEG_make_active (Depsgraph *depsgraph)
 
void DEG_make_inactive (Depsgraph *depsgraph)
 
void DEG_disable_visibility_optimization (Depsgraph *depsgraph)
 
uint64_t DEG_get_update_count (const Depsgraph *depsgraph)
 

Detailed Description

Core routines for how the Depsgraph works.

Definition in file depsgraph.cc.

Function Documentation

◆ DEG_disable_visibility_optimization()

void DEG_disable_visibility_optimization ( Depsgraph * depsgraph)

Disable the visibility optimization making it so IDs which affect hidden objects or disabled modifiers are still evaluated.

For example, this ensures that an object which is needed by a modifier is ignoring checks about whether the object is hidden or the modifier is disabled.

Definition at line 344 of file depsgraph.cc.

References depsgraph, and blender::deg::Depsgraph::use_visibility_optimization.

Referenced by blender::ed::object::modifier_apply().

◆ DEG_get_update_count()

◆ DEG_graph_free()

◆ DEG_graph_new()

◆ DEG_graph_replace_owners()

void DEG_graph_replace_owners ( Depsgraph * depsgraph,
Main * bmain,
Scene * scene,
ViewLayer * view_layer )

Replace the "owner" pointers (currently Main/Scene/ViewLayer) of this depsgraph. Used for:

  • Undo steps when we do want to re-use the old depsgraph data as much as possible.
  • Rendering where we want to re-use objects between different view layers.

Definition at line 280 of file depsgraph.cc.

References blender::deg::Depsgraph::bmain, depsgraph, blender::deg::register_graph(), blender::deg::Depsgraph::scene, scene, blender::deg::unregister_graph(), and blender::deg::Depsgraph::view_layer.

Referenced by BKE_scene_undo_depsgraphs_restore(), and engine_depsgraph_init().

◆ DEG_is_active()

◆ DEG_is_evaluating()

bool DEG_is_evaluating ( const Depsgraph * depsgraph)

Definition at line 312 of file depsgraph.cc.

References depsgraph, and blender::deg::Depsgraph::is_evaluating.

Referenced by blender::bke::mesh_get_eval_deform().

◆ DEG_make_active()

void DEG_make_active ( Depsgraph * depsgraph)

◆ DEG_make_inactive()

void DEG_make_inactive ( Depsgraph * depsgraph)

Definition at line 338 of file depsgraph.cc.

References depsgraph, and blender::deg::Depsgraph::is_active.

Referenced by animviz_calc_motionpaths().