Looks like there is a bug in USplineComponent.
I have a simple blueprint Actor with a Spline component:
If I spawn this actor from the plugin C++ code, using:
AActor* actor = UWorld->SpawnActor(...).
The actor gets spawned correctly at the desired location.
Then I use the returned actor from the above, to get it’s USplineComponent.
And check it’s initial points:
auto* SplineComponent = actor->FindComponentByClass<USplineComponent>();
int numPoints = SplineComponent->GetNumberOfSplinePoints();
It gives the correct number of initial 2 spline points as expected.
Then I add 3 more points to this spline using AddSpline and check the total:
SplineComponent->AddSplinePoint(point, ESplineCoordinateSpace::World, true);
int numPoints = SplineComponent->GetNumberOfSplinePoints()
The above code gives me total 5, as expected.
But when I go back to the Editor, I see my spawned actor, but it only has two SplinePoints in the editor.
I tried many many things to see my added extra spline-points, but they never show up in the editor.