diff options
Diffstat (limited to 'modules/bullet/constraint_bullet.cpp')
| -rw-r--r-- | modules/bullet/constraint_bullet.cpp | 12 | 
1 files changed, 11 insertions, 1 deletions
diff --git a/modules/bullet/constraint_bullet.cpp b/modules/bullet/constraint_bullet.cpp index b60e89b6fd..d15fb8de01 100644 --- a/modules/bullet/constraint_bullet.cpp +++ b/modules/bullet/constraint_bullet.cpp @@ -39,7 +39,8 @@  ConstraintBullet::ConstraintBullet() :  		space(NULL), -		constraint(NULL) {} +		constraint(NULL), +		disabled_collisions_between_bodies(true) {}  void ConstraintBullet::setup(btTypedConstraint *p_constraint) {  	constraint = p_constraint; @@ -53,3 +54,12 @@ void ConstraintBullet::set_space(SpaceBullet *p_space) {  void ConstraintBullet::destroy_internal_constraint() {  	space->remove_constraint(this);  } + +void ConstraintBullet::disable_collisions_between_bodies(const bool p_disabled) { +	disabled_collisions_between_bodies = p_disabled; + +	if (space) { +		space->remove_constraint(this); +		space->add_constraint(this, disabled_collisions_between_bodies); +	} +}  |