Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2008-09-17 05:29:54 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2008-09-17 05:29:54 +0400
commit9064ed8d6aa934dedc4b344e328566a8549371f6 (patch)
tree81618923ec82eba64aa5caa6af6ffeb6231b996a /source/gameengine/Converter/BL_ShapeDeformer.cpp
parent9b7d40dbae1be5aa18894ffbc8f97a4a8c4c6fdd (diff)
Fix for bug #4192: game engine armatures that are dynamically added
but don't have an action got the pose of already added armatures, even though they're not related. This also fixes an issue where the armature in Blender would end up in the pose from the game after ESC, removes unneeded copies made during armature evaluation, and also solves the constraint copying hack.
Diffstat (limited to 'source/gameengine/Converter/BL_ShapeDeformer.cpp')
-rw-r--r--source/gameengine/Converter/BL_ShapeDeformer.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/source/gameengine/Converter/BL_ShapeDeformer.cpp b/source/gameengine/Converter/BL_ShapeDeformer.cpp
index 236cd1a6667..dfd33e45fef 100644
--- a/source/gameengine/Converter/BL_ShapeDeformer.cpp
+++ b/source/gameengine/Converter/BL_ShapeDeformer.cpp
@@ -109,6 +109,7 @@ bool BL_ShapeDeformer::ExecuteShapeDrivers(void)
vector<IpoCurve*>::iterator it;
void *poin;
int type;
+
// the shape drivers use the bone matrix as input. Must
// update the matrix now
m_armobj->ApplyPose();
@@ -121,7 +122,10 @@ bool BL_ShapeDeformer::ExecuteShapeDrivers(void)
if (poin)
write_ipo_poin(poin, type, icu->curval);
}
+
ForceUpdate();
+ m_armobj->RestorePose();
+
return true;
}
return false;