Right, today's post is about the spline I use for my visual road, physical road, grass verges, white lines, fences, kerbs... that is why it is so important to me that I use the same spline throughout, and (as much as possible) to edit it in a non-destructive manner. I want any changes I make to the spline to be automatically updated every part of the track that uses it. So if I make a change to a corner, the roads, verges, fences, etc etc, all continue to work together, seamlessly. Can I just point out, I am in no way saying that this is the
best way to make a track, or even the
right way. It is only
my way. It is a method I have been developing since I started making my first track for AC and it is at the stage where it works for me
so, I was at the point where my spline was the correct 'shape', with all the bends, elevation changes, camber changes all being correct. This gives a very flat, smooth, dull track to drive on. What I want is a bit of character, a few bumps that force you to use the throttle judiciously, dips that you need to be aware of in the braking area. I can't laser-scan the track, so all I
can do is to make it interesting, make it feel believable, make it fun.
The first step is to give the spline the capacity for detail. My simple, accurate spline has 192 verts, no where near enough to add any detail.
In the same way you subdivide a mesh to increase the number of polys (to add detail to a shape), I do the same thing to my spline.
In 3ds max this is by adding a Normalise Spline modifier, which takes the entire spline and then creates new verts, spaced at whatever interval you set. I use a spacing of 6m at this stage, which gives me 1,574 verts to play with. My first step is to add a very small amount of noise (in the Z axis) to all of the verts - only +/-15mm. This is an old track and I don't want it to feel like it has been made to modern FIA standards. As this change to the spline is reflected immediately in my (low poly) physical mesh, I export a new .FBX and test it in-game, to make sure I haven't added too much.
Once happy with the overall randomness I then select only the verts where I want more noticeable bumps to be. If I select all verts, the whole track will be bumps and feel monotonous (as LilSki pointed out in a very early beta
).
If i zoom in on a smaller area, you can see the bumps, at +/-20mm... not!
So I can see where I will be able to feel the bumps, I increase the multiplier temporarily, so I can see where they will be. This is the same noise but at +/- 1m
Again, I re-export the .FBX and test, and tweak and test and tweak and test (this goes on for weeks
) until I am happy, making sure I test with as many types of car as I can, so I don't have a track that feels great in the 250F but like a ploughed field in a GT3
My last step for this track was to add a second layer of smaller bumps, +/-10mm. I was getting larger bumps through the wheel, but no smaller kicks. I figured that the 6m vert spacing was still too large to get the amount of detail I was looking for, so, as a quick and dirty fix, I subdivided again, down to 3m, and went through the same process of adding random noise to a selection of verts. This did the trick!
A quick note about random noise: even though it is all random, some works better at certain points on the track. 3ds max allows you to use a specific 'seed' or fingerprint for your noise. I use this, combined with exaggerating the scale, to see how the bumps will feel. This pic shows the same section of track, with the same amount of noise, but using three different seeds.
The top one has a nice 'kick' on the right, so I would have used that one in a braking area. Here it is applied to the road, with a large multiplier to show the effect...
...and with the actual multiplier, giving me +/-20mm bumps.
As you can see, this process gives me bumps that run the entire width of the track, as I am only adding noise to the spline. The next step is more destructive, requires me to remove the track surface from the spline, and to edit all of the verts in the mesh, to give a more realistic feel. This is the last stage I go through as, once the physical mesh is removed from the spline, any further changes to the spline will not be applied to the mesh