working on : make softbodies collide with moving ( armatures,lattices .. ) objects

works nice & smooth unless we encounter logical circles
well, because of function pointers re-hooking i could not debug that in detail
may be DAG or modifier stack is .. dunno

anyway
did abuse pd->pad bit 1 ( i hope this was 'real' padding till now )
to get SoftBodyDetectCollision(..) use mesh_get_derived_XXX [in effect.c] ..[*sigh* (the linetriangle() func is there)
..]
and put that to the deflection panel (blush .. i would have decapted anyone in my team doing stuff like that)

to defend this commit:
it makes you aware of problems ahead
having code that works/doesn't (on some conditions) is is usefull to look at
i think code is OK , so the problem is either
a. me not understanding
b. real

for locical circles see files -->
http://wund.privat.t-online.de/bt/WorkFine1.blend
http://wund.privat.t-online.de/bt/WorkFine2.blend
http://wund.privat.t-online.de/bt/WorkCrash.blend
This commit is contained in:
2005-08-06 23:20:52 +00:00
parent d1285d0229
commit f17a9a1d3d
2 changed files with 96 additions and 78 deletions

View File

@@ -1534,6 +1534,8 @@ static void object_panel_deflectors(Object *ob)
uiDefButF(block, NUM, B_DIFF, "Damping:", 160,40,150,20, &pd->pdef_sbdamp, 0.0, 1.0, 10, 0, "Amount of damping during softbody collision");
uiDefButF(block, NUM, B_DIFF, "Inner:", 160,20,150,20, &pd->pdef_sbift, 0.001, 1.0, 10, 0, "Inner face thickness");
uiDefButF(block, NUM, B_DIFF, "Outer:", 160, 0,150,20, &pd->pdef_sboft, 0.001, 1.0, 10, 0, "Outer face thickness");
uiBlockBeginAlign(block);
uiDefButBitS(block, TOG, 1, 0,"UMS or CRASH", 0,0,150,20, &pd->pad, 0, 0, 0, 0, "Let collision object move with armatures/lattices WARNING logical circles will CRASH");
}
}
}