diff options
author | Joshua Leung <aligorith@gmail.com> | 2009-01-28 03:50:56 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2009-01-28 03:50:56 +0300 |
commit | 623659f72f50a7ca78e4a72317eb2df0d3c22057 (patch) | |
tree | ebaae6b46747904becd15a2f8b854bc746b2d9c6 /source/blender/blenkernel/intern/anim_sys.c | |
parent | 764168d62a22659ac9947835a3308f7bc66fc1d5 (diff) |
Animato - Driver + ShapeKey bugfixes
* ShapeKey conversions should now go to the correct places
* Added fix for drivers to prevent crashes when no driver object is provided (Franky from BBB seems to have one such driver for some reason).
* Temporarily disabled a check when evaluating drivers for whether the driver is tagged for evaluation. Drivers still need to be correctly tagged AND ordered by the Depsgraph to work correctly.
Diffstat (limited to 'source/blender/blenkernel/intern/anim_sys.c')
-rw-r--r-- | source/blender/blenkernel/intern/anim_sys.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c index 374a4bfaa60..a0b329f9bcb 100644 --- a/source/blender/blenkernel/intern/anim_sys.c +++ b/source/blender/blenkernel/intern/anim_sys.c @@ -229,7 +229,9 @@ static short animsys_write_rna_setting (PointerRNA *ptr, char *path, int array_i } else { /* failed to get path */ - printf("Animato: Invalid path '%s[%d]' \n", path, array_index); + printf("Animato: Invalid path. ID = '%s', '%s [%d]' \n", + (ptr && ptr->id.data) ? (((ID *)ptr->id.data)->name+2) : "<No ID>", + path, array_index); return 0; } } @@ -291,7 +293,7 @@ static void animsys_evaluate_drivers (PointerRNA *ptr, AnimData *adt, float ctim if ((fcu->flag & (FCURVE_MUTED|FCURVE_DISABLED)) == 0) { /* check if driver itself is tagged for recalculation */ - if ((driver) && (driver->flag & DRIVER_FLAG_RECALC)) { + if ((driver) /*&& (driver->flag & DRIVER_FLAG_RECALC)*/) { // XXX driver recalc flag is not set yet by depsgraph! /* evaluate this using values set already in other places */ // NOTE: for 'layering' option later on, we should check if we should remove old value before adding new to only be done when drivers only changed calculate_fcurve(fcu, ctime); |