Added move to limbo for custom bodies
NO idea if this works
This commit is contained in:
parent
67d150fce1
commit
e3141cd1f9
|
@ -412,4 +412,14 @@ void SimpleRigidBody::PreStep (const btCollisionWorld* collisionWorld)
|
||||||
float SimpleRigidBody::GetLambda() const
|
float SimpleRigidBody::GetLambda() const
|
||||||
{
|
{
|
||||||
return this->rayLambda[0];
|
return this->rayLambda[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
void SimpleRigidBody::MoveToLimbo()
|
||||||
|
{
|
||||||
|
this->rigidBody->setCollisionFlags(this->rigidBody->getCollisionFlags() | btCollisionObject::CF_NO_CONTACT_RESPONSE);
|
||||||
|
}
|
||||||
|
|
||||||
|
void SimpleRigidBody::ReleaseFromLimbo()
|
||||||
|
{
|
||||||
|
this->rigidBody->setCollisionFlags(btCollisionObject::CF_KINEMATIC_OBJECT);
|
||||||
}
|
}
|
|
@ -69,6 +69,9 @@ namespace Oyster
|
||||||
|
|
||||||
float GetLambda() const;
|
float GetLambda() const;
|
||||||
|
|
||||||
|
void MoveToLimbo();
|
||||||
|
void ReleaseFromLimbo();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
btCollisionShape* collisionShape;
|
btCollisionShape* collisionShape;
|
||||||
|
|
|
@ -169,6 +169,9 @@ namespace Oyster
|
||||||
virtual void CallSubscription_AfterCollisionResponse(ICustomBody* bodyA, ICustomBody* bodyB, Math::Float kineticEnergyLoss) = 0;
|
virtual void CallSubscription_AfterCollisionResponse(ICustomBody* bodyA, ICustomBody* bodyB, Math::Float kineticEnergyLoss) = 0;
|
||||||
virtual void CallSubscription_Move() = 0;
|
virtual void CallSubscription_Move() = 0;
|
||||||
|
|
||||||
|
virtual void MoveToLimbo() = 0;
|
||||||
|
virtual void ReleaseFromLimbo() = 0;
|
||||||
|
|
||||||
/********************************************************
|
/********************************************************
|
||||||
* @return the void pointer set by SetCustomTag.
|
* @return the void pointer set by SetCustomTag.
|
||||||
* nullptr if none is set.
|
* nullptr if none is set.
|
||||||
|
|
Loading…
Reference in New Issue