diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2015-09-24 18:24:20 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2015-09-24 18:24:20 +0300 |
commit | 27b3ea622f8bd313a8e2827dfec752bf2125566c (patch) | |
tree | f212e49d224ce8e1cfc3b17a64ae524711494391 /source/blender/blenkernel/BKE_collision.h | |
parent | 372dff8d1dc7e24d4b2cd37de245588ecfce8bfa (diff) | |
parent | de80e687689032cb85179a1f7e89750573631d5d (diff) |
Merge remote-tracking branch 'origin/master' into cycles_camera_nodescycles_camera_nodes
Note: the branch currently crashes in blender_camera_nodes.cpp:
BL::NodeTree b_ntree = b_data.node_groups[nodes_tree_name];
The crash was introduced in:
cb7cf523e5c000609f32a382e2c0fcc57f635a42
Conflicts:
intern/cycles/SConscript
intern/cycles/blender/addon/__init__.py
intern/cycles/blender/addon/properties.py
intern/cycles/blender/blender_camera.cpp
intern/cycles/kernel/kernel_types.h
intern/cycles/kernel/svm/svm.h
intern/cycles/kernel/svm/svm_types.h
intern/cycles/render/camera.cpp
intern/cycles/render/camera.h
Diffstat (limited to 'source/blender/blenkernel/BKE_collision.h')
-rw-r--r-- | source/blender/blenkernel/BKE_collision.h | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/source/blender/blenkernel/BKE_collision.h b/source/blender/blenkernel/BKE_collision.h index ec257a2f394..d5b4a584ec6 100644 --- a/source/blender/blenkernel/BKE_collision.h +++ b/source/blender/blenkernel/BKE_collision.h @@ -43,16 +43,13 @@ #include "BLI_kdopbvh.h" -struct Cloth; -struct ClothModifierData; struct CollisionModifierData; -struct DerivedMesh; struct Group; struct MFace; struct MVert; struct Object; struct Scene; -struct LinkNode; +struct MVertTri; //////////////////////////////////////// // used for collisions in collision.c @@ -81,6 +78,8 @@ typedef struct CollPair { float pa[3], pb[3]; // collision point p1 on face1, p2 on face2 int flag; float time; // collision time, from 0 up to 1 + + /* mesh-mesh collision */ #ifdef WITH_ELTOPO /*either ap* or bp* can be set, but not both*/ float bary[3]; int ap1, ap2, ap3, collp, bp1, bp2, bp3; @@ -126,8 +125,15 @@ FaceCollPair; // used in modifier.c from collision.c ///////////////////////////////////////////////// -BVHTree *bvhtree_build_from_mvert(struct MFace *mfaces, unsigned int numfaces, struct MVert *x, unsigned int numverts, float epsilon); -void bvhtree_update_from_mvert(BVHTree *bvhtree, struct MFace *faces, int numfaces, struct MVert *x, struct MVert *xnew, int numverts, int moving); +BVHTree *bvhtree_build_from_mvert( + const struct MVert *mvert, + const struct MVertTri *tri, int tri_num, + float epsilon); +void bvhtree_update_from_mvert( + BVHTree *bvhtree, + const struct MVert *mvert, const struct MVert *mvert_moving, + const struct MVertTri *tri, int tri_num, + bool moving); ///////////////////////////////////////////////// @@ -135,6 +141,8 @@ void bvhtree_update_from_mvert(BVHTree *bvhtree, struct MFace *faces, int numfac // defined in collisions.c void collision_move_object(struct CollisionModifierData *collmd, float step, float prevstep); +void collision_get_collider_velocity(float vel_old[3], float vel_new[3], struct CollisionModifierData *collmd, struct CollPair *collpair); + ///////////////////////////////////////////////// // used in effect.c ///////////////////////////////////////////////// |