diff options
author | Jens Ole Wund <bjornmose@gmx.net> | 2005-01-13 01:28:13 +0300 |
---|---|---|
committer | Jens Ole Wund <bjornmose@gmx.net> | 2005-01-13 01:28:13 +0300 |
commit | 912ef80bdc464de00fd2452c51bcd5cd3da050d6 (patch) | |
tree | 44f8e94182b52bf15ada6291d8d99839c4ce9af1 /source/blender/blenkernel/intern/deform.c | |
parent | ea740dea0251038978dc00f03b6b7c4c28e14314 (diff) |
big softbody commit
some vertex group , weight painting stuff too
/me crosses fingers it does not break anything
Diffstat (limited to 'source/blender/blenkernel/intern/deform.c')
-rw-r--r-- | source/blender/blenkernel/intern/deform.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/deform.c b/source/blender/blenkernel/intern/deform.c index 16145ca2d63..19c2f15e7d3 100644 --- a/source/blender/blenkernel/intern/deform.c +++ b/source/blender/blenkernel/intern/deform.c @@ -227,7 +227,7 @@ int mesh_modifier(Object *ob, char mode) else if(ob->effect.first); // weak... particles too else if(ob->parent && ob->parent->type==OB_LATTICE); else if(ob->parent && ob->partype==PARSKEL); - else if(ob->softflag); + else if(ob->softflag & 0x01); else return 0; if(me->totvert==0) return 0; @@ -249,15 +249,21 @@ int mesh_modifier(Object *ob, char mode) } if(ob->effect.first) done |= object_wave(ob); - - if(ob->softflag) { + + if((ob->softflag & 0x01) && !(ob->softflag & 0x08)) { float ctime= bsystem_time(ob, NULL, (float)G.scene->r.cfra, 0.0); done= 1; object_softbody_step(ob, ctime); } - + /* deform: input mesh, output ob dl_verts. is used by subsurf (output should be in mesh ton!) */ done |= object_deform(ob); + + if((ob->softflag & 0x01) && (ob->softflag & 0x08)) { + float ctime= bsystem_time(ob, NULL, (float)G.scene->r.cfra, 0.0); + done= 1; + object_softbody_step(ob, ctime); + } /* put deformed vertices in dl->verts, optional subsurf will replace that */ if(done) { |