Hi guys, I've done a good amount of research in to (swept sphere/ellipse) FPS collision detection/response with stairs and it seems the accepted solution is to teleport the player up when there is a collision. Unfortunately, the videos I've seen don't go in to detail about the issues that arise and I wonder if they're anything more than monetized YouTube content. My main issue is when you collide with a step and teleport up (positive y) you aren't actually on the next step and gravity kicks in causing an edge collision with the step you just teleported up to. The only way I could get it to work was to not only teleport up but also forward but that causes jarring motion, even if smoothed, which is unacceptable. Hopefully someone can help. Thanks a lot.
Here is a little 2D diagram of what I mean.
a) player is moving right and collides with front of step.
b) player is teleported up to just above the step height.
c) gravity starts bringing player down before it's fully on the new step which causes an edge collision with the top of the step.
It's really not a problem when heading straight towards the steps, but when going slowly, like wall-sliding while climbing the steps, it breaks by causing all kinds of bouncing and won't even climb up when going very slowly.


