mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-30 08:44:19 -04:00
bullet: prevent softbody with AABB out of bounds from asserting
See #357
This commit is contained in:
parent
96a48a6848
commit
5fe294a467
@ -276,8 +276,15 @@ do_sync_b2p() {
|
||||
|
||||
// Update the synchronized transform with the current approximate center of
|
||||
// the soft body
|
||||
LVecBase3 pos = this->do_get_aabb().get_approx_center();
|
||||
CPT(TransformState) ts = TransformState::make_pos(pos);
|
||||
btVector3 pMin, pMax;
|
||||
_soft->getAabb(pMin, pMax);
|
||||
LPoint3 pos = (btVector3_to_LPoint3(pMin) + btVector3_to_LPoint3(pMax)) * 0.5;
|
||||
CPT(TransformState) ts;
|
||||
if (!pos.is_nan()) {
|
||||
ts = TransformState::make_pos(pos);
|
||||
} else {
|
||||
ts = TransformState::make_identity();
|
||||
}
|
||||
|
||||
NodePath np = NodePath::any_path((PandaNode *)this);
|
||||
LVecBase3 scale = np.get_net_transform()->get_scale();
|
||||
|
Loading…
x
Reference in New Issue
Block a user