Simulation of all kinds of vehicles

Thank you for directing me to splines. It looks like splines are a new feature in Unity engine. I did not see them several years ago when I tried to study Unity. Can you tell the best ways of creating roads with splines ? Maybe, some tutorials about spline roads. I mean the generic roads of all kinds – roads for road vehicles, railroads for trains, rollercoasters, tubes and pipes, conveyors and so on.

I have found a separate Spline Mesher tool, but it looks like this is a third-party add-on for the editor. I want to use the free version of the editor as much as I can. Is this functionality included into the standard Unity editor ? I want to create railroads either with several clicks in editor or programmatically by the runtime code. Thank you.

P. S.

I have tried a simple tutorial for splines.
I created a spline and added a “Spline Instantiate” component.
When I add my object into an array of objects to instantiate, I see the following error:

NullReferenceException: Object reference not set to an instance of an object
SplineInstantiateGizmoDrawer.DrawSplineInstantiateGizmos (UnityEngine.Splines.SplineInstantiate scr, UnityEditor.GizmoType gizmoType) (at ./Library/PackageCache/com.unity.splines/Editor/Components/SplineInstantiateEditor.cs:16)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

NullReferenceException: Object reference not set to an instance of an object
UnityEngine.Splines.SplineInstantiate.SpawnPrefab (System.Int32 index) (at ./Library/PackageCache/com.unity.splines/Runtime/SplineInstantiate.cs:1052)
UnityEngine.Splines.SplineInstantiate.UpdateInstances () (at ./Library/PackageCache/com.unity.splines/Runtime/SplineInstantiate.cs:850)
UnityEngine.Splines.SplineInstantiate.Update () (at ./Library/PackageCache/com.unity.splines/Runtime/SplineInstantiate.cs:768)

I see the sample sleeper object in the world, so it exists for sure.
What does this error mean ?

The screenshot: