diff options
author | Miika Hamalainen <blender@miikah.org> | 2011-06-27 11:30:58 +0400 |
---|---|---|
committer | Miika Hamalainen <blender@miikah.org> | 2011-06-27 11:30:58 +0400 |
commit | cb12648656fc001e8c4c6d00df73e52d452f8787 (patch) | |
tree | 95e01261ef1c1f5d0e7e4880602858827713921c /source/blender/makesrna/intern/rna_object_force.c | |
parent | 40d4f34e82338b98d05595175504120fd98ae680 (diff) |
Dynamic Paint:
* Fixed memory leak when baking image sequences.
* Fixed sub-steps when brush was controlled by a parent object.
* Added option to select active outputs for paint surfaces.
* Improved color mixing algorithm.
* Improved memory allocation behavior.
* Memory is now freed even in case of errors.
* Removed "initial color" setting, as it's better to adjust color from material.
* "Paint effects" system:
** Converted to use new data structures.
** Works now with any number of surrounding points.
** Re-implemented support for UV-image surfaces.
** Added support for vertex surfaces too.
** Improved color handling.
** Improved movement stability.
** "Drip" effect uses now Blender's force fields instead of just z-directional gravity like before. Now each surface point can have different force influence.
Diffstat (limited to 'source/blender/makesrna/intern/rna_object_force.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_object_force.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_object_force.c b/source/blender/makesrna/intern/rna_object_force.c index 5d3c29b736b..11c350e3011 100644 --- a/source/blender/makesrna/intern/rna_object_force.c +++ b/source/blender/makesrna/intern/rna_object_force.c @@ -643,6 +643,22 @@ static char *rna_EffectorWeight_path(PointerRNA *ptr) if (smd->domain->effector_weights == ew) return BLI_sprintfN("modifiers[\"%s\"].settings.effector_weights", md->name); } + + /* check dynamic paint modifier */ + md = (ModifierData *)modifiers_findByType(ob, eModifierType_DynamicPaint); + if (md) { + DynamicPaintModifierData *pmd = (DynamicPaintModifierData *)md; + + if (pmd->canvas) { + DynamicPaintSurface *surface = pmd->canvas->surfaces.first; + + for(; surface; surface=surface->next) { + if (surface->effector_weights == ew) + return BLI_sprintfN("modifiers[\"%s\"].canvas_settings.canvas_surfaces[\"%s\"].effector_weights", + md->name, surface->name); + } + } + } } return NULL; } |