Player flies upward off the map when it collides with a vertical mesh collider

I have an issue where my Player is walking along and bumps into, say, a tunnel wall. Normally, it would just not let the character pass through (which is good), BUT for some reason it is making my player shoot upwards through the mesh and off into space high in the sky.

I have no idea why it is doing this. I am using only prefabs from previous scenes (which worked correcly) If anyone has had this problem or knows about some variable or component that I could tweak to fix the issue I'd appreciate it.

If your collider is not striking flat surface against flat surface (which is actually pretty rare outside of box colliders) and the player has an additional forward velocity, then some of the force of the collision is directed upwards (orthagonal to the direction of collision. If you aren't using gravity, as soon as your player gains a velocity in the y direction, there is no damping that will act to reduce this velocity, so your player flies upwards and never stops.

I ran into this in my game (I had rigidbodies and no gravity). Simply code your own gravity function [if (!isGrounded) {AddForce(Vector3(0,0,-10*Time.deltaTime);}... or something like this] and it should prevent this.