[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39534] branches/soc-2011-pepper/source/ blender/collada: Blender tip profile for bones with 2 or more children.
Sukhitha Jayathilake
pr.jayathilake at gmail.com
Thu Aug 18 21:16:37 CEST 2011
Revision: 39534
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39534
Author: phabtar
Date: 2011-08-18 19:16:36 +0000 (Thu, 18 Aug 2011)
Log Message:
-----------
Blender tip profile for bones with 2 or more children.
Modified Paths:
--------------
branches/soc-2011-pepper/source/blender/collada/ArmatureExporter.cpp
branches/soc-2011-pepper/source/blender/collada/ArmatureImporter.cpp
Modified: branches/soc-2011-pepper/source/blender/collada/ArmatureExporter.cpp
===================================================================
--- branches/soc-2011-pepper/source/blender/collada/ArmatureExporter.cpp 2011-08-18 19:07:37 UTC (rev 39533)
+++ branches/soc-2011-pepper/source/blender/collada/ArmatureExporter.cpp 2011-08-18 19:16:36 UTC (rev 39534)
@@ -177,7 +177,7 @@
node.setNodeName(node_name);
node.setNodeSid(node_sid);
- if ( bone->childbase.first == NULL )
+ if ( bone->childbase.first == NULL || BLI_countlist(&(bone->childbase))>=2)
add_blender_leaf_bone( bone, ob_arm , node );
else{
node.start();
@@ -202,6 +202,9 @@
node.addExtraTechniqueParameter("blender", "tip_y", bone->tail[1] );
node.addExtraTechniqueParameter("blender", "tip_z", bone->tail[2] );
+ for (Bone *child = (Bone*)bone->childbase.first; child; child = child->next) {
+ add_bone_node(child, ob_arm);
+ }
node.end();
}
Modified: branches/soc-2011-pepper/source/blender/collada/ArmatureImporter.cpp
===================================================================
--- branches/soc-2011-pepper/source/blender/collada/ArmatureImporter.cpp 2011-08-18 19:07:37 UTC (rev 39533)
+++ branches/soc-2011-pepper/source/blender/collada/ArmatureImporter.cpp 2011-08-18 19:16:36 UTC (rev 39534)
@@ -83,14 +83,11 @@
float parent_mat[][4], Object * ob_arm)
{
float mat[4][4];
- float obmat[4][4];
+ float obmat[4][4];
// object-space
get_node_mat(obmat, node, NULL, NULL);
- // get world-space
-
-
EditBone *bone = ED_armature_edit_bone_add((bArmature*)ob_arm->data, (char*)bc_get_joint_name(node));
totbone++;
@@ -151,7 +148,6 @@
// in second case it's not a leaf bone, but we handle it the same way
if (!children.getCount() || children.getCount() > 1) {
-
add_leaf_bone(mat, bone, node);
}
@@ -659,7 +655,7 @@
}
//for bones without skins
- create_armature_bones();
+ //create_armature_bones();
}
#if 0
More information about the Bf-blender-cvs
mailing list