Original Post
So I'm making a 2D side scrolling action/platformer with a few friends as a sort of side project, and I've ran into the problem of creating nice character movement. You see, what I want is a character that flows pretty well, with his speed increasing gradually as he keeps moving in one direction, when they jump, it goes up pretty fast, then gets slower and slower as they get higher, until they are forced back down. What I have currently is a boring when you press the left/right the character moves in that direction at that set speed. Currently my movement system works this way: Player Presses Right -> Game checks input and adds velocity -> Game then draws the updated player at the end of the game loop, then repeat. I'll include my code for reference, if you want. But mind you it's a bit messy right now. The code in question would be in CBaseMovingEnt::Move(), CBaseMovingEnt::Update(), CPlayer::HandleInput(). Code: http://www.artisbigshirts.com/sdl_game.rar Any help would be greatly appreciated, as a I just can't seem to wrap my head around this concept.