diff options
author | Erwin Coumans <blender@erwincoumans.com> | 2005-12-31 10:20:08 +0300 |
---|---|---|
committer | Erwin Coumans <blender@erwincoumans.com> | 2005-12-31 10:20:08 +0300 |
commit | 9119b6e8a547303ce9a7ccd3a00636153b53cb0e (patch) | |
tree | 1816973e2baf4888d571e87cfb548cafafe46d41 /source/gameengine/Converter/BL_SkinDeformer.cpp | |
parent | 625c553e2077ec0a252ddd934d4267c61011d61f (diff) |
Fixed several bugs: python refcounting related and Bullet related (basic add/remove object support, bounding volume hierarchy). Added a few files, updated the Bullet scons. Vc6/7 Bullet projectfiles need to add a couple of files: 'Bullet/CollisionShapes/BvhTriangleMeshShape.cpp',
'Bullet/CollisionShapes/ConvexTriangleCallback.cpp',
'Bullet/CollisionShapes/EmptyShape.cpp',
'Bullet/CollisionShapes/OptimizedBvh.cpp',
'Bullet/CollisionShapes/TriangleCallback.cpp',
'Bullet/CollisionShapes/TriangleIndexVertexArray.cpp',
'Bullet/NarrowPhaseCollision/ManifoldContactAddResult.cpp'.
Sorry, no armatures fix yet.
Diffstat (limited to 'source/gameengine/Converter/BL_SkinDeformer.cpp')
-rw-r--r-- | source/gameengine/Converter/BL_SkinDeformer.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/source/gameengine/Converter/BL_SkinDeformer.cpp b/source/gameengine/Converter/BL_SkinDeformer.cpp index ee298d70baf..84a3b8dcc5c 100644 --- a/source/gameengine/Converter/BL_SkinDeformer.cpp +++ b/source/gameengine/Converter/BL_SkinDeformer.cpp @@ -145,6 +145,10 @@ void BL_SkinDeformer::ProcessReplica() { } +//void where_is_pose (Object *ob); +//void armature_deform_verts(Object *armOb, Object *target, float (*vertexCos)[3], int numVerts, int deformflag); +extern "C" void armature_deform_verts(struct Object *armOb, struct Object *target, float (*vertexCos)[3], int numVerts, int deformflag); + void BL_SkinDeformer::Update(void) { @@ -156,7 +160,8 @@ void BL_SkinDeformer::Update(void) /* XXX note: where_is_pose() (from BKE_armature.h) calculates all matrices needed to start deforming */ /* but it requires the blender object pointer... */ -// void where_is_pose (Object *ob); + //void where_is_pose (Object *ob); + where_is_pose (m_blenderArmatureObj); /* store verts locally */ for (int v =0; v<m_bmesh->totvert; v++){ @@ -165,6 +170,11 @@ void BL_SkinDeformer::Update(void) m_transverts[v]=MT_Point3(m_bmesh->mvert[v].co); } + float test[1000][3]; + + armature_deform_verts(m_blenderArmatureObj,m_blenderMeshObject,test,m_bmesh->totvert,ARM_DEF_VGROUP); + + /* XXX note: now use this call instead */ // void armature_deform_verts(Object *armOb, Object *target, float (*vertexCos)[3], int numVerts, int deformflag) // - armOb = armature object |