diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-02-19 18:34:26 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-02-19 18:34:26 +0300 |
commit | 3bf2715039eecee409d3b6c3639e853b6750e77c (patch) | |
tree | 55c5f083013ba9d8eee6ecff9be93d037ab4cf63 /source/blender/ikplugin/intern | |
parent | 3b9fdfa9e1905a01230be7b15174c711c2b0f974 (diff) |
apply visual transform to pose
So constrainted bones can have their transform applied to their loc/scale/rot, then remove the constraints
Diffstat (limited to 'source/blender/ikplugin/intern')
-rw-r--r-- | source/blender/ikplugin/intern/iksolver_plugin.c | 2 | ||||
-rw-r--r-- | source/blender/ikplugin/intern/itasc_plugin.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/source/blender/ikplugin/intern/iksolver_plugin.c b/source/blender/ikplugin/intern/iksolver_plugin.c index 84e1ba7354f..9c0f151aa8b 100644 --- a/source/blender/ikplugin/intern/iksolver_plugin.c +++ b/source/blender/ikplugin/intern/iksolver_plugin.c @@ -512,7 +512,7 @@ void iksolver_execute_tree(struct Scene *scene, struct Object *ob, struct bPose /* 4. walk over the tree for regular solving */ for(a=0; a<tree->totchannel; a++) { if(!(tree->pchan[a]->flag & POSE_DONE)) // successive trees can set the flag - where_is_pose_bone(scene, ob, tree->pchan[a], ctime); + where_is_pose_bone(scene, ob, tree->pchan[a], ctime, 1); // tell blender that this channel was controlled by IK, it's cleared on each where_is_pose() tree->pchan[a]->flag |= POSE_CHAIN; } diff --git a/source/blender/ikplugin/intern/itasc_plugin.cpp b/source/blender/ikplugin/intern/itasc_plugin.cpp index 0cff13c70b7..af69cb9a996 100644 --- a/source/blender/ikplugin/intern/itasc_plugin.cpp +++ b/source/blender/ikplugin/intern/itasc_plugin.cpp @@ -1532,7 +1532,7 @@ static void execute_scene(Scene* blscene, IK_Scene* ikscene, bItasc* ikparam, fl // in animation mode, we must get the bone position from action and constraints for(i=0, ikchan=ikscene->channels; i<ikscene->numchan; i++, ++ikchan) { if (!(ikchan->pchan->flag & POSE_DONE)) - where_is_pose_bone(blscene, ikscene->blArmature, ikchan->pchan, ctime); + where_is_pose_bone(blscene, ikscene->blArmature, ikchan->pchan, ctime, 1); // tell blender that this channel was controlled by IK, it's cleared on each where_is_pose() ikchan->pchan->flag |= (POSE_DONE|POSE_CHAIN); ikchan->jointValid = 0; |