[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [48399] trunk/blender/source/blender/ blenkernel/intern/dynamicpaint.c: Fix #31948: dynamic paint substeps do not work for objects parented to armatures
Miika Hamalainen
miika.hamalainen at kolumbus.fi
Fri Jun 29 13:19:30 CEST 2012
Revision: 48399
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=48399
Author: miikah
Date: 2012-06-29 11:19:29 +0000 (Fri, 29 Jun 2012)
Log Message:
-----------
Fix #31948: dynamic paint substeps do not work for objects parented to armatures
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/intern/dynamicpaint.c
Modified: trunk/blender/source/blender/blenkernel/intern/dynamicpaint.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/dynamicpaint.c 2012-06-29 11:16:17 UTC (rev 48398)
+++ trunk/blender/source/blender/blenkernel/intern/dynamicpaint.c 2012-06-29 11:19:29 UTC (rev 48399)
@@ -33,6 +33,7 @@
#include "BLI_utildefines.h"
#include "DNA_anim_types.h"
+#include "DNA_armature_types.h"
#include "DNA_constraint_types.h"
#include "DNA_dynamicpaint_types.h"
#include "DNA_group_types.h" /*GroupObject*/
@@ -46,6 +47,7 @@
#include "DNA_texture_types.h"
#include "BKE_animsys.h"
+#include "BKE_armature.h"
#include "BKE_bvhutils.h" /* bvh tree */
#include "BKE_blender.h"
#include "BKE_cdderivedmesh.h"
@@ -528,11 +530,6 @@
}
}
}
- /* for curve following objects, parented curve has to be updated too */
- if (ob->type == OB_CURVE) {
- Curve *cu = ob->data;
- BKE_animsys_evaluate_animdata(scene, &cu->id, cu->adt, frame, ADT_RECALC_ANIM);
- }
/* was originally OB_RECALC_ALL - TODO - which flags are really needed??? */
ob->recalc |= OB_RECALC_OB | OB_RECALC_DATA | OB_RECALC_TIME;
@@ -547,6 +544,18 @@
else
BKE_object_where_is_calc_time(scene, ob, frame);
+ /* for curve following objects, parented curve has to be updated too */
+ if (ob->type == OB_CURVE) {
+ Curve *cu = ob->data;
+ BKE_animsys_evaluate_animdata(scene, &cu->id, cu->adt, frame, ADT_RECALC_ANIM);
+ }
+ /* and armatures... */
+ if (ob->type == OB_ARMATURE) {
+ bArmature *arm = ob->data;
+ BKE_animsys_evaluate_animdata(scene, &arm->id, arm->adt, frame, ADT_RECALC_ANIM);
+ BKE_pose_where_is(scene, ob);
+ }
+
return 0;
}
More information about the Bf-blender-cvs
mailing list