|
Blender
V3.3
|
#include "intern/depsgraph_physics.h"#include "MEM_guardedalloc.h"#include "BLI_compiler_compat.h"#include "BLI_listbase.h"#include "BKE_collision.h"#include "BKE_effect.h"#include "BKE_modifier.h"#include "DNA_collection_types.h"#include "DNA_object_force_types.h"#include "DNA_object_types.h"#include "DEG_depsgraph_build.h"#include "DEG_depsgraph_physics.h"#include "DEG_depsgraph_query.h"#include "depsgraph.h"Go to the source code of this file.
Namespaces | |
| blender | |
| blender::deg | |
Functions | |
| static ePhysicsRelationType | modifier_to_relation_type (unsigned int modifier_type) |
| template<class T > | |
| static ID * | object_id_safe (T *object) |
| ListBase * | DEG_get_effector_relations (const Depsgraph *graph, Collection *collection) |
| ListBase * | DEG_get_collision_relations (const Depsgraph *graph, Collection *collection, unsigned int modifier_type) |
| void | DEG_add_collision_relations (DepsNodeHandle *handle, Object *object, Collection *collection, unsigned int modifier_type, DEG_CollobjFilterFunction filter_function, const char *name) |
| void | DEG_add_forcefield_relations (DepsNodeHandle *handle, Object *object, EffectorWeights *effector_weights, bool add_absorption, int skip_forcefield, const char *name) |
| ListBase * | blender::deg::build_effector_relations (Depsgraph *graph, Collection *collection) |
| ListBase * | blender::deg::build_collision_relations (Depsgraph *graph, Collection *collection, unsigned int modifier_type) |
| void | blender::deg::clear_physics_relations (Depsgraph *graph) |
Physics utilities for effectors and collision.
Definition in file depsgraph_physics.cc.
| void DEG_add_collision_relations | ( | DepsNodeHandle * | handle, |
| Object * | object, | ||
| Collection * | collection, | ||
| unsigned int | modifier_type, | ||
| DEG_CollobjFilterFunction | filter_function, | ||
| const char * | name | ||
| ) |
Definition at line 91 of file depsgraph_physics.cc.
References BKE_modifiers_findby_type(), blender::deg::build_collision_relations(), DEG_add_object_pointcache_relation(), DEG_get_graph_from_handle(), DEG_OB_COMP_GEOMETRY, DEG_OB_COMP_TRANSFORM, depsgraph, and LISTBASE_FOREACH.
Referenced by DEG_add_forcefield_relations(), and updateDepsgraph().
| void DEG_add_forcefield_relations | ( | DepsNodeHandle * | handle, |
| Object * | object, | ||
| EffectorWeights * | effector_weights, | ||
| bool | add_absorption, | ||
| int | skip_forcefield, | ||
| const char * | name | ||
| ) |
Definition at line 114 of file depsgraph_physics.cc.
References blender::deg::build_effector_relations(), DEG_add_collision_relations(), DEG_add_object_pointcache_relation(), DEG_get_graph_from_handle(), DEG_OB_COMP_GEOMETRY, DEG_OB_COMP_TRANSFORM, depsgraph, ELEM, eModifierType_Collision, EffectorWeights::group, LISTBASE_FOREACH, PFIELD_FLUIDFLOW, PFIELD_GUIDE, PFIELD_SHAPE_POINTS, PFIELD_SHAPE_SURFACE, and PFIELD_VISIBILITY.
Referenced by updateDepsgraph().
| ListBase* DEG_get_collision_relations | ( | const Depsgraph * | graph, |
| Collection * | collection, | ||
| unsigned int | modifier_type | ||
| ) |
Definition at line 73 of file depsgraph_physics.cc.
References DEG_get_original_id(), graph, hash, modifier_to_relation_type(), object_id_safe(), blender::deg::Depsgraph::physics_relations, and type.
| ListBase* DEG_get_effector_relations | ( | const Depsgraph * | graph, |
| Collection * | collection | ||
| ) |
Definition at line 60 of file depsgraph_physics.cc.
References DEG_get_original_id(), DEG_PHYSICS_EFFECTOR, graph, hash, object_id_safe(), and blender::deg::Depsgraph::physics_relations.
|
static |
Definition at line 35 of file depsgraph_physics.cc.
References BLI_assert_msg, DEG_PHYSICS_COLLISION, DEG_PHYSICS_DYNAMIC_BRUSH, DEG_PHYSICS_RELATIONS_NUM, DEG_PHYSICS_SMOKE_COLLISION, eModifierType_Collision, eModifierType_DynamicPaint, and eModifierType_Fluid.
Referenced by blender::deg::build_collision_relations(), and DEG_get_collision_relations().
Definition at line 52 of file depsgraph_physics.cc.
Referenced by blender::deg::build_collision_relations(), blender::deg::build_effector_relations(), DEG_get_collision_relations(), and DEG_get_effector_relations().