diff options
author | Porteries Tristan <republicthunderbolt9@gmail.com> | 2015-04-19 02:01:17 +0300 |
---|---|---|
committer | Jorge Bernal <jbernalmartinez@gmail.com> | 2015-04-19 02:04:22 +0300 |
commit | 3d55859924713aada6f35ca7d9a0ed270bdad08b (patch) | |
tree | b9abe00295c2e3002e92e25455170dc13c8e9afe /source/gameengine/Physics/common/PHY_IPhysicsController.h | |
parent | a2f9a0cfd940049f22cb89a8812629948a3580ae (diff) |
BGE: Support for collision group/mask from the api + activated on EndObject.
A Python API for the collision group / mask has been added:
```
KX_GameObject.collisionGroup
KX_GameObject.collisionMask
```
The maximum number of collision groups and masked has been increased from eight to sixteen.
This means that the max value of collisionGroup/Mask is (2 ** 16) - 1
EndObject will now activate objects that were sleeping and colliding with the removed object.
This means that, unlike now, if a rigid body starts sleeping on top of another object, when the latter is removed the rigid body will activate and fall, rather than float midair as before.
Collision groups that do not intersect used to collide on the first frame. Now this has been fixed so that they collide appropriately.
Thanks to agoose77 for his help.
Reviewers: scorpion81, hg1, agoose77, sergof
Reviewed By: agoose77, sergof
Subscribers: sergof, moguri
Projects: #game_physics, #game_engine
Differential Revision: https://developer.blender.org/D1243
Diffstat (limited to 'source/gameengine/Physics/common/PHY_IPhysicsController.h')
-rw-r--r-- | source/gameengine/Physics/common/PHY_IPhysicsController.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/gameengine/Physics/common/PHY_IPhysicsController.h b/source/gameengine/Physics/common/PHY_IPhysicsController.h index b6cd480e655..3e2337f01ea 100644 --- a/source/gameengine/Physics/common/PHY_IPhysicsController.h +++ b/source/gameengine/Physics/common/PHY_IPhysicsController.h @@ -96,6 +96,7 @@ class PHY_IPhysicsController : public PHY_IController virtual void SetAngularDamping(float damping)=0; virtual void SetDamping(float linear, float angular)=0; + virtual void RefreshCollisions() = 0; virtual void SuspendDynamics(bool ghost=false)=0; virtual void RestoreDynamics()=0; |