Tracks Deutschlandring

Hehe, cool :geek: Yeah, @Andy-R has been helping me out with the feeling from the physics mesh.

First of all @millen pointed out that he could feel some chatter in the hairpin bends, which led to a complete reworking of the physics mesh. I pestered Andy into helping me decide to go with A, B or C. You know, when you think you have done something as well as you possibly can, and then with some constructive criticism and some very helpful testing, it turns out even better? That's when beta testing becomes invaluable - cheers fellas :thumbsup:
 
No worries @Fat-Alfie. Glad to help. :D
The work paid off, the new physics feels good on my end. Hopefully it feels just as good for everyone else.

Amazingly fun track, can't wait to see how you polish it off. So much potential.

Was thinking of doing a video myself, but didn't know how 'public' you wanted stuff just yet. :D
 
Ah, you've been a big help; I probably would have settled for the physics mesh I was using if it hadn't been for your observations - thank you.

Yes, I think it does have a lot of potential, too. Like Thomson Road, I can already see in my mind how I think it will look. I have to make notes as I keep thinking of details that I should add. I was even out walking my dog yesterday, taking photos of leaf litter at the edge of the road, and of the weathered ends of wood piles... :O_o:

I just have to finish off the texture for the temporary grandstands and then the main straight modelling will be completed. I can move on to a bit of nature then :)

Oh, and videos and screenshots are fine - there is no secrecy about the project ;)
 
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.
DR_spline_1.jpg

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.
DR_spline_2.jpg

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 :laugh:).
DR_spline_3.jpg

If i zoom in on a smaller area, you can see the bumps, at +/-20mm... not!
DR_spline_4.jpg

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
DR_spline_5.jpg

Again, I re-export the .FBX and test, and tweak and test and tweak and test (this goes on for weeks :whistling:) 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 :rolleyes:

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.
DR_spline_8.jpg

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...
DR_spline_9.jpg

...and with the actual multiplier, giving me +/-20mm bumps.
DR_spline_10.jpg

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 :thumbsdown:
 
Not an expert by any means, but I like to try and pass on any info or methods that I have developed to anyone else who might fancy a go at track making. Sometimes a little pointer in the right direction could be the difference between someone giving up, or releasing a great track for everyone else to enjoy :)
 
I would love to know how you did the non-destructive lining of changes for the track, verges and walls. I've not yet been able to figure that out (and would've been damn useful when experimenting with different layouts)

Also, be careful when using Normalize Spline, as sometimes it can change the geometry of the corner entry/exit, leaving a nasty little 'kick' that looks very wrong.
 
Great stuff! I'd also love to see how you have curbs and walls tied to your spline. Once I dig myself out from my mountain of freelance work, I'd love to give Blender an honest go at learning and see if I can make something worthwhile with it. I'm sure similar process could be used there as to what you do in 3DS :)

Are you able to have the pit roads and other roads/offshoots/access roads attached to your main road and have that attachment point update if you change the spline as well, or is that also not possible?
 
I would add the access roads only once I have finalised my main track, rather than making them dependent upon each other. Again, I am no expert, just trying to find a good way that I can work.

Regarding things like verges, wall, kerbs, I create a lofted object using the same spline as I do for the main track, along with its own cross-section shape, and then add an Edit Poly modifier to edit the individual polys whilst still keeping the object tied to the spline. For kerbs, I just create a single long kerb that spans the entire length of the track, then use the Edit Poly modifier to delete the polys in between the kerbs. I am then able to make changes to the spline without having to remake the kerbs / walls etc. This maintains cohesion with the rest of the track objects until near the end of the project when I am then in a position to collapse everything to a mesh.
 
I would add the access roads only once I have finalised my main track, rather than making them dependent upon each other. Again, I am no expert, just trying to find a good way that I can work.

Regarding things like verges, wall, kerbs, I create a lofted object using the same spline as I do for the main track, along with its own cross-section shape, and then add an Edit Poly modifier to edit the individual polys whilst still keeping the object tied to the spline. For kerbs, I just create a single long kerb that spans the entire length of the track, then use the Edit Poly modifier to delete the polys in between the kerbs. I am then able to make changes to the spline without having to remake the kerbs / walls etc. This maintains cohesion with the rest of the track objects until near the end of the project when I am then in a position to collapse everything to a mesh.
Forgive me, as I am completely inexperienced with lofting polygon models (I use NURBS CAD models daily for work), but how do you ensure than the edges of you curbs align with the edges of the road? I mean down to the vertex level; making sure the verts of the road and the curbs align to prevent holes in the mesh. Or is that something that can only really be done when finalized?
 
I align the verts of each part's shape, or cross section, with each other. So, if the road surface's cross section's outer edge vert is placed at X 6m, Y 0m, I make sure that the first vert of the grass verge's cross section shape is also placed at X 6m, Y 0m. So when the objects are lofted, the edge verts are all in exactly the right place, no gaps, no adjustments needed.

It's hard to explain, but I guess, if you took a real road, with kerbs, grass verges, white lines, and sliced through it top-to-bottom, that cross section is what you need to make into cross section spline shapes. I create that image as shapes in 3ds max, making sure that any verts that touch each other are exactly the same place. I'll take some screen shots tomorrow to try and explain a little better :O_o:
 
I understand exactly. And I guess so long as the loft settings are the same (# of section along loft and the like) they'll be perfectly aligned. Makes sense :)
 
Last instalment of my method posting - the physical mesh.

In the previous step I was left with a physical mesh, still pretty low poly, but with good basic feel - nice undulations, larger lumps and bumps, all the sensations you would expect from an older circuit (possibly - who knows :O_o:). What is missing, for me, is the feeling that I am driving on tarmac, on a real, hard, rough, dirty road.

With the tri count limited to 64,000 (so I can export a single mesh to test) it is impossible to add any more detail, so the next step is more destructive, and more time consuming, and therefore only done at the end of the process, once I am happy with the track.

First step is to split the mesh into smaller sections. Deutschlandring is 10 km long and I split it into 40 equal pieces, each under 2,000 tris. These are all named logically (1ROAD1, 1ROAD2, etc).
DR_phys_1.jpg

To be able to add the kind of detail I want, the next thing I need to do is to dramatically increase the number of tris in each section. Up until very recently I had been doing this part wrong :rolleyes:. I was using a Subdivide modifier in 3ds max, and although it did increase the number of tris (great) what it didn't do was alter the transition from one poly to another (not so great). My first two tracks have been fairly flat with no great changes in elevation, so the problem wasn't that noticeable. It wasn't until I started on the D-Ring, with it's tight, uphill hairpins, that my error became an issue (thanks to @millen for letting me know - that's why you send betas to people with OSW wheels :thumbsup:)

This pic shows the difference between Subdivide and TurboSmooth:
turbosmooth.jpg

In the top section you can see how the road would still be faceted, as Subdivide doesn't reduce the angle from one face to another. On sections of the track with large changes in elevation I was still getting the low-poly chatter from the wheels. Once I switched to TurboSmooth that all went away, and my track actually became too smooth, forcing me to add more random noise to the mesh than I had previously.

So, I take the 2k tri section, add a TurboSmooth modifier set to 3 iterations (each iteration multiplies the number of tris by a factor of 4). This gives me a new total of just over 120,000 tris, with a vert every 20cm or so.
DR_phys_2.jpg

Then I just add a displacement modifier, moving each vert randomly in the z-axis by a maximum of +/-15mm. I have done lots of testing with different noise patterns, experimenting with various types, amounts, sizes, and I now have a fair idea of what works well. For smooth sections of track I use a random Perlin noise with 2 or 3 fractal levels. Fractals are to Perlin noise what harmonics are to a sine wave. They are kind of noise within noise, and the more fractal levels you use, the more detailed the surface feels (to me). If you listen to a sine wave it is simple, dull... the same goes for Perlin noise, in my opinion. Once you add harmonics to a sine wave you are able to give the sound characteristics, tone, colour. Same with noise - once you start adding fractal levels you create a lot more detail in the mesh.

The only thing left to do is to optimise the mesh, reducing the number of polys. I use the Optimise modifier in 3ds max - this identifies which faces are effectively redundant (because they don't contain any detail) and merges them together. I aim to get each section down to around 25,000 tris. Any more than this and I think the track surface feels too noisy, gritty - it almost send too much information to your wheel. If you optimise too much, you will lose all the lovely detail you just added, so it is definitely a balancing act which requires a fair bit of testing and experimentation.
DR_phys_3.jpg

So, there we are - my physical mesh is complete, with around 1,000,000 tris, and without any noticeable effect on performance. Obviously, if I make any changes to the visual mesh I will need to re-make that section of the physical mesh too. But for now, it's all good :)
 
I see you have been adding things into track :) I hope these two mods will work together very well. Ring looks really well, 720p haven't done any justice for my video, damn, you slow internet, you !

W125 was also used as a hillclimb car, and this circuit has hillclimb section. Autounion used their GP cars for hill climbs too. Same cars were also used for speed records. Just with a lot of tweaks - for example whole diferent body work :D

W125 needs original straight 8 engine to be planted back :D Thats one of the best sounding engines ever IMO Too bad not so much samples are available.
 
Yeah, I adding a few little things. I spent a day remapping, baking AO, and retexturing the Russigmuhle hotel, adding beer barrels and a wooden cart, and when you blast past at 160kph you notice exactly 0% of it :rolleyes:

I spend too much time racing on it and not enough time working on it :redface:

Your w125 is really growing on me. At first I thought it was almost undriveable but now I have spent a bit more time driving it I am starting to handle it a bit better. Plus, after driving it for a few hours, the 250F becomes a lot easier to drive :thumbsup:
 
Back
Top