private void VerticalCollision(GameTime gameTime, float elapsed)
{
Vector2 change = SimulationState.Velocity.Y * Vector2.UnitY * elapsed;
change.Y = MathHelper.Clamp(change.Y, -(Tile.Height), Tile.Height);
SimulationState.Position += change;
SimulationState.Position = new Vector2(SimulationState.Position.X, (float)Math.Round(SimulationState.Position.Y));
HandleCollisions(CollisionDirection.Vertical, gameTime);
}