Blender  V2.93
Classes | Typedefs | Enumerations | Functions
BKE_collision.h File Reference

Go to the source code of this file.

Classes

struct  CollPair
 
struct  EdgeCollPair
 
struct  FaceCollPair
 
struct  CollisionRelation
 
struct  ColliderCache
 

Typedefs

typedef struct CollPair CollPair
 
typedef struct EdgeCollPair EdgeCollPair
 
typedef struct FaceCollPair FaceCollPair
 
typedef struct CollisionRelation CollisionRelation
 
typedef struct ColliderCache ColliderCache
 

Enumerations

enum  COLLISION_FLAGS { COLLISION_IN_FUTURE = (1 << 1) , COLLISION_INACTIVE = (1 << 4) }
 

Functions

struct BVHTreebvhtree_build_from_mvert (const struct MVert *mvert, const struct MVertTri *tri, int tri_num, float epsilon)
 
void bvhtree_update_from_mvert (struct BVHTree *bvhtree, const struct MVert *mvert, const struct MVert *mvert_moving, const struct MVertTri *tri, int tri_num, bool moving)
 
void collision_move_object (struct CollisionModifierData *collmd, const float step, const float prevstep, const bool moving_bvh)
 
void collision_get_collider_velocity (float vel_old[3], float vel_new[3], struct CollisionModifierData *collmd, struct CollPair *collpair)
 
struct ListBaseBKE_collision_relations_create (struct Depsgraph *depsgraph, struct Collection *collection, unsigned int modifier_type)
 
void BKE_collision_relations_free (struct ListBase *relations)
 
struct Object ** BKE_collision_objects_create (struct Depsgraph *depsgraph, struct Object *self, struct Collection *collection, unsigned int *numcollobj, unsigned int modifier_type)
 
void BKE_collision_objects_free (struct Object **objects)
 
struct ListBaseBKE_collider_cache_create (struct Depsgraph *depsgraph, struct Object *self, struct Collection *collection)
 
void BKE_collider_cache_free (struct ListBase **colliders)
 

Typedef Documentation

◆ ColliderCache

typedef struct ColliderCache ColliderCache

◆ CollisionRelation

◆ CollPair

typedef struct CollPair CollPair

◆ EdgeCollPair

typedef struct EdgeCollPair EdgeCollPair

◆ FaceCollPair

typedef struct FaceCollPair FaceCollPair

Enumeration Type Documentation

◆ COLLISION_FLAGS

Enumerator
COLLISION_IN_FUTURE 
COLLISION_INACTIVE 

Definition at line 42 of file BKE_collision.h.

Function Documentation

◆ BKE_collider_cache_create()

struct ListBase* BKE_collider_cache_create ( struct Depsgraph depsgraph,
struct Object self,
struct Collection collection 
)

◆ BKE_collider_cache_free()

void BKE_collider_cache_free ( struct ListBase **  colliders)

Definition at line 1383 of file collision.c.

References BLI_freelistN(), MEM_freeN, and NULL.

Referenced by dynamics_step(), eff_calc_visibility(), and SCULPT_cloth_simulation_free().

◆ BKE_collision_objects_create()

struct Object** BKE_collision_objects_create ( struct Depsgraph depsgraph,
struct Object self,
struct Collection collection,
unsigned int *  numcollobj,
unsigned int  modifier_type 
)

◆ BKE_collision_objects_free()

void BKE_collision_objects_free ( struct Object **  objects)

◆ BKE_collision_relations_create()

struct ListBase* BKE_collision_relations_create ( struct Depsgraph depsgraph,
struct Collection collection,
unsigned int  modifier_type 
)

◆ BKE_collision_relations_free()

void BKE_collision_relations_free ( struct ListBase relations)

Definition at line 1287 of file collision.c.

References BLI_freelistN(), and MEM_freeN.

Referenced by blender::deg::clear_physics_relations().

◆ bvhtree_build_from_mvert()

struct BVHTree* bvhtree_build_from_mvert ( const struct MVert mvert,
const struct MVertTri tri,
int  tri_num,
float  epsilon 
)

Referenced by deformVerts().

◆ bvhtree_update_from_mvert()

void bvhtree_update_from_mvert ( struct BVHTree bvhtree,
const struct MVert mvert,
const struct MVert mvert_moving,
const struct MVertTri tri,
int  tri_num,
bool  moving 
)

Referenced by deformVerts().

◆ collision_get_collider_velocity()

void collision_get_collider_velocity ( float  vel_old[3],
float  vel_new[3],
struct CollisionModifierData collmd,
struct CollPair collpair 
)

◆ collision_move_object()

void collision_move_object ( struct CollisionModifierData collmd,
const float  step,
const float  prevstep,
const bool  moving_bvh 
)