My character falls over when colliding

I have a player that has a Box collider (no need for capsule), a rigidbody with 10000 Mass, Infinity Drag, 0 Angular, no gravity.

I also have several meshes (static, props) that I only gave them Mesh/Box colliders (no rigidbodies).

When my player collides with any of the props, he starts rotating, and suddenly InputAxis horizontal/vertical become local, thus enabling him to kinda “fly”.

How to keep my player to just stop when colliding, rather than bouncing?

fix the rotation?

My character does not have any rotation. I believe it's a physics/dynamics issue. EDIT: If you meant Freeze, this is not the way I must go. I have to find a way for my character to not react to collisions, other than prevent movement.

Freeze (AKA fix AKA fixate) also does that

1 Answer

1

Goto your player’s rigidbody component and under CONSTRAINTS and check everything beside “Freeze rotation”. That is the only way :slight_smile:

This still means that you can rotate your player via scripts but the Unity physics system won’t rotate the player.

Ah I wish it wasn't the only way. I thought I had weird settings on my colliders, just couldn't find anything. Thanks though.

And what exactly are you trying to do?

When my character collides with anything, just stop moving to its direction.

Then this should work.

@Soumya you saved my another day:)