Moving the player about has been the bane of my 3D and 2D game programming hobby. No matter what I try, no matter how fancy the physics engine, the shape representing my player keeps getting stuck in a wall or falling though the floor.
The usual causes include two walls (planes) converging into a cornet my player attempts to walk into, aproaching a wall from an angle almost parallel to the wall, and being 'lucky' enough to pass through the infinitely thin gap between two polygons.
If anyone could shed any light on how to solve this sort of problem, I'd be very greatful.
As an example - a player is represented by a sphere that can either stand still or move straight ahead at a constant velocity. If the ground slopes up, the player goes up. If the player attempts to walk through a wall at an angle to it, the player slides along it. I know how to calculate the correct physics values for these things (impact normals, angles of reflection, friction, etc), but I can't keep my player charcter from passing through or getting stuck in walls 100% of the time.