Start path with radius from forward vector then calc the spline path

Currently the path finding does not take in account the pawns forward vector. I would like to have the start of the path follow a radius until it hits the a point and creates the rest of the path from the tangent point.


This is what currently happens. The path is a direct line from the pawn to the target regardless of the pawn’s forward vector

This is want i want. The path starts according to the forward vecter and turns toward the target.

Any ideas how to do this?

Hmm, there are a few things to consider. You will probably need a trace to locate if there is a wall ahead, etc. But, in general you can take the tangent point on the radius.

You will need to find the point where the radius intersects with the line connecting the pawn and the target. You can use basic trigonometry to calculate the angle between the line and the forward vector of the pawn, and then use this angle to find the tangent point on the radius. Once you have the tangent point, you can create the first segment of the path by connecting the pawn to the tangent point.

To create the second segment of the path, you will have to find the point where the radius intersects with the line tangent to the target. Again, you can use trigonometry to calculate the angle between the line and the forward vector of the target, and then use this angle to find the intersection point. Once you have the intersection point, you can create the final segment of the path by connecting the tangent point to the intersection point.

Now, you can tweak the hardness of the curve by manipulation of the tangents points and modifying the radius.

Do you know the fancy math way of finding the tangent point? Or do i have to do the hacked up way of getting forward vector, then rotate it, then multiply by the radius, and so on.

I found an easier solution. I have 2 spheres that are invisible and no collisions. 1 on either side of the pawn. Before the path finding the spheres collision is turned on to block only the navmesh. It forces the path finding to go around the spheres.