diff options
author | Ton Roosendaal <ton@blender.org> | 2005-11-29 15:45:18 +0300 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2005-11-29 15:45:18 +0300 |
commit | 0140c36df9fcb99945caa5f473dea6a41f74a635 (patch) | |
tree | 2a626c3d35749c75f7cf7a8bf7606e953ab24666 /source/blender | |
parent | 65ce2c2cee5d4d382ecef61f25f6abc348944290 (diff) |
Cleanup & preparation commit for getting Armatures/Poses/Actions working
in the game engine again.
All files in source/gameengine/ I've committed below have a comment like
/* XXX note .... */
where something needs to be done. This is pretty straightforward for Erwin,
who has been notified in person too about this. :)
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/BKE_armature.h | 9 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/armature.c | 67 |
2 files changed, 0 insertions, 76 deletions
diff --git a/source/blender/blenkernel/BKE_armature.h b/source/blender/blenkernel/BKE_armature.h index 336ba823520..1ce5f7d0f03 100644 --- a/source/blender/blenkernel/BKE_armature.h +++ b/source/blender/blenkernel/BKE_armature.h @@ -95,19 +95,11 @@ void get_objectspace_bone_matrix (struct Bone* bone, float M_accumulatedMatrix[] void vec_roll_to_mat3(float *vec, float roll, float mat[][3]); void mat3_to_vec_roll(float mat[][3], float *vec, float *roll); - /* Animation functions */ - struct PoseTree *ik_tree_to_posetree(struct Object *ob, struct Bone *bone); void solve_posetree(PoseTree *tree); void free_posetree(PoseTree *tree); -/* Gameblender hacks */ -void GB_init_armature_deform(struct ListBase *defbase, float premat[][4], float postmat[][4]); -void GB_calc_armature_deform (float *co, struct MDeformVert *dvert); -void GB_build_mats (float parmat[][4], float obmat[][4], float premat[][4], float postmat[][4]); -void GB_validate_defgroups (struct Mesh *mesh, struct ListBase *defbase); - /* B-Bone support */ typedef struct Mat4 { float mat[4][4]; @@ -115,7 +107,6 @@ typedef struct Mat4 { Mat4 *b_bone_spline_setup(struct bPoseChannel *pchan); - #ifdef __cplusplus } #endif diff --git a/source/blender/blenkernel/intern/armature.c b/source/blender/blenkernel/intern/armature.c index 991370c798b..95a39c29a54 100644 --- a/source/blender/blenkernel/intern/armature.c +++ b/source/blender/blenkernel/intern/armature.c @@ -1642,70 +1642,3 @@ void where_is_pose (Object *ob) } } } - -/* ****************** Game Blender functions, called by engine ************** */ - -/* NOTE: doesn't work at the moment!!! (ton) */ - -/* ugly Globals */ -static float g_premat[4][4]; -static float g_postmat[4][4]; - -void GB_build_mats (float parmat[][4], float obmat[][4], float premat[][4], float postmat[][4]) -{ - float obinv[4][4]; - - Mat4Invert(obinv, obmat); - Mat4CpyMat4(premat, obmat); - Mat4MulMat4(postmat, parmat, obinv); - - Mat4Invert (premat, postmat); -} - -void GB_init_armature_deform(ListBase *defbase, float premat[][4], float postmat[][4]) -{ -// g_defbase = defbase; - Mat4CpyMat4 (g_premat, premat); - Mat4CpyMat4 (g_postmat, postmat); - -} - -void GB_validate_defgroups (Mesh *mesh, ListBase *defbase) -{ - /* Should only be called when the mesh or armature changes */ -// int j, i; -// MDeformVert *dvert; - -// for (j=0; j<mesh->totvert; j++){ -// dvert = mesh->dvert+j; -// for (i=0; i<dvert->totweight; i++) -// dvert->dw[i].data = ((bDeformGroup*)BLI_findlink (defbase, dvert->dw[i].def_nr))->data; -// } -} - -void GB_calc_armature_deform (float *co, MDeformVert *dvert) -{ - float vec[3]={0, 0, 0}; - float contrib = 0; - int i; -// bPoseChannel *pchan; - - Mat4MulVecfl(g_premat, co); - - for (i=0; i<dvert->totweight; i++){ -// pchan = (bPoseChannel *)dvert->dw[i].data; -// if (pchan) pchan_bone_deform(pchan, dvert->dw[i].weight, vec, co, &contrib); - } - - if (contrib){ - vec[0]/=contrib; - vec[1]/=contrib; - vec[2]/=contrib; - } - - VecAddf (co, vec, co); - Mat4MulVecfl(g_postmat, co); -} - -/* ****************** END Game Blender functions, called by engine ************** */ - |