diff options
author | Ton Roosendaal <ton@blender.org> | 2005-04-25 12:30:49 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2005-04-25 12:30:49 +0400 |
commit | 8fbecd24e875c930591a81fc74a5070faff8097e (patch) | |
tree | 7ec35c171d0d5cd0c0fdc5b7433611127c5867f6 /source/blender/blenkernel | |
parent | 7f75cfdd29d2045896c738d1e60bc235586c26f5 (diff) |
Built in an escape from sbObjectStep() if transform() is used. Has to be
done for lattices... these keep calling this during transform, causing
the lattice itself and its children (if soft) to remain static on same
position.
Real solution has to be 2-fold:
- store deformed lattice points in Lattice, as a "DispList"
- usage of proper depgraph :)
There's also the idea to keep simulating softbody during a transform, to
give feedback on what softbody does... later.
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/intern/softbody.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/softbody.c b/source/blender/blenkernel/intern/softbody.c index 95d877b1aad..13b587be4fe 100644 --- a/source/blender/blenkernel/intern/softbody.c +++ b/source/blender/blenkernel/intern/softbody.c @@ -1093,6 +1093,12 @@ void sbObjectStep(Object *ob, float framenr) float ctime, forcetime; float err; + /* this variable is set while transform(). with lattices also having a softbody, + it calls lattice_modifier() all the time... has no displist yet. Is temporal + hack which should be resolved with proper depgraph usage + storage of deformed + vertices in lattice (ton) */ + if(G.moving) return; + /* remake softbody if: */ if( (ob->softflag & OB_SB_REDO) || // signal after weightpainting (ob->soft==NULL) || // just to be nice we allow full init |