I have set the restitution of a RigidBody to 0 but after it collides with a static wall (mass set to 0) it still bounces off.
I am even subscribing to E_PHYSICSCOLLISIONSTART and setting linear velocity of the RigidBody to 0,0,0 with the event handler but it still bounces.
Anyone have a clue what could be happening?
playerBody = playerNode->CreateComponent<RigidBody>();
playerBody->SetMass(10);
playerBody->SetUseGravity(false);
playerBody->SetAngularFactor(Vector3(0, 0, 0));
playerBody->SetRestitution(0);
[code]void Player::HandleCollisionStart(StringHash eventType, VariantMap& eventData) {
using namespace PhysicsCollisionStart;
Node* nodeB = static_cast<Node*>(eventData[P_NODEB].GetPtr());
Node* nodeA = static_cast<Node*>(eventData[P_NODEA].GetPtr());
if ((nodeA->GetPosition() == playerNode->GetPosition() || nodeB->GetPosition() == playerNode->GetPosition())) {
playerBody->SetLinearVelocity(Vector3(0, 0, 0));
}
}[/code]