From 2d429e1d548c2049c2179574a783ea791c7132ed Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 25 Sep 2007 05:04:34 +0000 Subject: == Armature Animation Fixes == This commit fixes several bugs related to animating armatures. I've also tidied up the formatting in a few files along the way, and also commented the flags for this pose->flag. What's new/fixed: * Undo will no longer destroy entire un-keyframed poses. Now it behaves as expected, and only reverses the most recent change. * On some files, POSE_DO_UNLOCK somehow got set on files and never cleared. The symptom of this was a file in which you suddenly could no longer pose an armature at all without using auto-keyframing. A check to prevent this from happening again has been added (it will also fix old files too) Notes: - Now, all PoseChannels get tagged with BONE_UNKEYED after they have been transformed. This flag prevents IPO data being flushed over these new values, even after undo. - These tags only get removed on frame-changes or inserting new keyframes. --- source/blender/blenkernel/BKE_action.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/blenkernel/BKE_action.h') diff --git a/source/blender/blenkernel/BKE_action.h b/source/blender/blenkernel/BKE_action.h index 3caf0ad2cc6..68a6be04735 100644 --- a/source/blender/blenkernel/BKE_action.h +++ b/source/blender/blenkernel/BKE_action.h @@ -101,6 +101,9 @@ struct bPoseChannel *verify_pose_channel(struct bPose* pose, /* sets constraint flags */ void update_pose_constraint_flags(struct bPose *pose); +/* clears BONE_UNKEYED flags for frame changing */ +void framechange_poses_clear_unkeyed(void); + /** * Allocate a new bAction on the heap and copy * the contents of src into it. If src is NULL NULL is returned. -- cgit v1.2.3