[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54072] trunk/blender/source/blender/ blenkernel: Armature rigging:
Ton Roosendaal
ton at blender.org
Thu Jan 24 12:21:44 CET 2013
Revision: 54072
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54072
Author: ton
Date: 2013-01-24 11:21:40 +0000 (Thu, 24 Jan 2013)
Log Message:
-----------
Armature rigging:
Added more clear warning print for cases when a Proxy cannot be resolved.
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/BKE_action.h
trunk/blender/source/blender/blenkernel/intern/action.c
trunk/blender/source/blender/blenkernel/intern/object.c
Modified: trunk/blender/source/blender/blenkernel/BKE_action.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_action.h 2013-01-24 09:36:22 UTC (rev 54071)
+++ trunk/blender/source/blender/blenkernel/BKE_action.h 2013-01-24 11:21:40 UTC (rev 54072)
@@ -220,7 +220,7 @@
void what_does_obaction(struct Object *ob, struct Object *workob, struct bPose *pose, struct bAction *act, char groupname[], float cframe);
/* for proxy */
-void BKE_pose_copy_result(struct bPose *to, struct bPose *from);
+int BKE_pose_copy_result(struct bPose *to, struct bPose *from);
/* clear all transforms */
void BKE_pose_rest(struct bPose *pose);
Modified: trunk/blender/source/blender/blenkernel/intern/action.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/action.c 2013-01-24 09:36:22 UTC (rev 54071)
+++ trunk/blender/source/blender/blenkernel/intern/action.c 2013-01-24 11:21:40 UTC (rev 54072)
@@ -1118,18 +1118,18 @@
}
/* both poses should be in sync */
-void BKE_pose_copy_result(bPose *to, bPose *from)
+int BKE_pose_copy_result(bPose *to, bPose *from)
{
bPoseChannel *pchanto, *pchanfrom;
if (to == NULL || from == NULL) {
- printf("pose result copy error to:%p from:%p\n", (void *)to, (void *)from); /* debug temp */
- return;
+ printf("Pose copy error, pose to:%p from:%p\n", (void *)to, (void *)from); /* debug temp */
+ return 0;
}
if (to == from) {
printf("BKE_pose_copy_result source and target are the same\n");
- return;
+ return 0;
}
@@ -1153,6 +1153,7 @@
pchanto->protectflag = pchanfrom->protectflag;
}
}
+ return 1;
}
/* For the calculation of the effects of an Action at the given frame on an object
Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c 2013-01-24 09:36:22 UTC (rev 54071)
+++ trunk/blender/source/blender/blenkernel/intern/object.c 2013-01-24 11:21:40 UTC (rev 54072)
@@ -2711,8 +2711,8 @@
case OB_ARMATURE:
if (ob->id.lib && ob->proxy_from) {
- // printf("pose proxy copy, lib ob %s proxy %s\n", ob->id.name, ob->proxy_from->id.name);
- BKE_pose_copy_result(ob->pose, ob->proxy_from->pose);
+ if (0 == BKE_pose_copy_result(ob->pose, ob->proxy_from->pose))
+ printf("Proxy copy error, lib Object: %s proxy Object: %s\n", ob->id.name+2, ob->proxy_from->id.name+2);
}
else {
BKE_pose_where_is(scene, ob);
More information about the Bf-blender-cvs
mailing list