Smoothing a path

I have a game where I let the user draw out a path using his mouse, so I get a list of points (I have both versions that save new points per time and per distance).

But the vehicle that follows them I’m having problem with it looking natural, as if the driver doesnt know the full path.

From what I understand is that I need to make a spline, but the problem with every method I’ve tried so far is this:

The path goes way off course when it enters at a steep angle and exits at a steep angle. I drew a green line that would be more appropriate, and I circled with red the problem I’m trying to describe.

This is why I can’t use AnimationCurve and I have not yet found a spline or path smoothing algorithm or function that does not have this problem.

Has anyone dabbled with this? What is the best practice in the described case? Where can I find a solution? What are some possible alternatives to recieving the effect I’m looking for?

Thanks a lot in advance!!!

I don’t know what it will do to the rest of your points, but you could try a level or two of Chaikin smoothing before passing it to a spline algorithm.

http://graphics.cs.ucdavis.edu/education/CAGDNotes/Chaikins-Algorithm/Chaikins-Algorithm.html