challenge

Started by Dune, March 18, 2014, 12:47:04 PM

Previous topic - Next topic

j meyer

 ;D Joel,is that me? hee hee.....the name is Jochen,no problem,though.
Explanations won't help much in my case,I'm afraid.Generally I can follow
what you are doing.So far I haven't found out what some of the nodes do,
because the preview just shows white or black and I'll have to find out an
other way to see what happens.That takes some time usually,but I'm used
to it,kind of.You'll always have to translate things into your own terminology/
language to understand,at least in my opinion.
Anyway,thank you Ben,very inspiring material :).

bobbystahr

very happy to have notify enabled on this thread even though I understand only about 1%...at least thats a + number...heh heh heh
something borrowed,
something Blue.
Ring out the Old.
Bring in the New
Bobby Stahr, Paracosmologist

bigben

#62
Oops... That would be my faded memory playing tricks on me Jochen  :-[. That's what you get for being a nomadic wandere and only returning periodically  ;)
I'm thinking I need to use some naming convention as we'll to pick out landmark nodes. I have trouble picking the right nodes myself sometimes.

I was thinking of softening the edges as well, particularly the sleepers. Back to multiplying the linear gradients instead of the Boolean nodes. That will also give some roundness to the corners of the sleepers.

Dune

As an in-between:
Quotevery happy to have notify enabled on this thread
I used to have that; but now I don't. Just click the second line from above in screen and 'show unread posts since last visit'. You won't miss a thing, which is very helpful in getting to grips with TG.

bobbystahr

Quote from: Dune on May 19, 2014, 03:32:31 AM
As an in-between:
Quotevery happy to have notify enabled on this thread
I used to have that; but now I don't. Just click the second line from above in screen and 'show unread posts since last visit'. You won't miss a thing, which is very helpful in getting to grips with TG.

D'oh....
something borrowed,
something Blue.
Ring out the Old.
Bring in the New
Bobby Stahr, Paracosmologist

bigben

Quote from: bobbystahr on May 18, 2014, 11:34:29 AM
very happy to have notify enabled on this thread even though I understand only about 1%...at least thats a + number...heh heh heh

I'm planning to post a few samples of some of my basic masking methods. I'm familiar with the way you work and I know you'll find them useful

bobbystahr

Awesome Ben....thanks in advance
something borrowed,
something Blue.
Ring out the Old.
Bring in the New
Bobby Stahr, Paracosmologist

bigben

#67
Still have a few things to do but figured I'd post  an updated TGD that's a bit easier to follow.
I've renamed some of the key nodes with all uppercase letters partly for myself (easier to find) and a few extras you can connect to the last surface shader mask to preview.
Still to do:

  • Slope the track from a start position to an end elevation
  • Cut the circular track into an arc with specified start and end bearings
  • Do the math to join sections of track by passing the end position and bearing of the previous segment to start the next.  This should make it possible to literally build a track from a single starting point and have any adjustments to a single segment flow on to the following segments (e.g. changing the length of a straight). This should make it vaguely practical. The direction of a curve will be specified by a constant scalar (-1 or 1)
  • Build the a straight section of track based on this and build the calculations for position of the curve centre based on the end of the previous track segment.
  • Give it to you guys to make purty  ;)

Dune

This looks very good, Ben. I'll check out your file later...

j meyer

As for the still to do list that's the stuff I'm really looking forward to,
since I have not the slightest idea how that could be done.

bigben

Joining tracks and sloping the terrain were certainly the biggest dilemnas I've had but my approach has been geared towards this end. There are many ways to mathematically describe a rectangle, which is why I started with the circular track. The key parts were separating the model into a terrain and a displaced surface so that the terrain could be sloped without affecting the sleepers and rails.

I had a think about doing double tracks and this helped narrow down the approach. You couldn't just duplicate this setup and offset it a bit as the terrains would overlap and screw each other up. Circular tracks would have the same centre of curvature but different radii depending on which way the track curved and things quickly get messy from here.

It struck me at this point that the circular track model was constructed as a reflection of half a track along the track centre. So a) it would be relative straightforward to just create extra rails further away from the track centre, lengthen the sleepers etc... to have muliple parallel tracks and b) the path of the track(s) is defined as a single path which simplifies the math for joining two sections together. The only position that will be manually entered is the start position. The position and bearing of the end of the track is calculated from the other settings entered and then passed on to the next track segment. So for all subsequent sections of track you only define a length for straight sections, and a final compass heading and direction of the turn for circular sections.

Had I started with a straight section of track I probably would have defined the outer edges first and then worked my way in which would have made joing sections much trickier (calculating 4 corners or edges instead of 1 line).

Tidying up the sleepers at the joins is another matter. I originally thought I could just add a scalar to change the length to fix up any sleepers that got cut in half but that's too messy as well. To handle that, I think it will be better to adjust lengths and compass headings to muliples of the separation between sleepers. The deviations from manually entered values should be trivial.
For the straight sections I'm leaning towards SSS with transformations to position it by the centre of the segment and rotated to the compass heading

Smoothing the slope between sections will involve calculating the slope at the ends of each section, splitting the difference and defining a new slope with this value. A cosine function can then be used to adjust the height along the track from the starting slope to the final one.

Sounds good in my head anyway  ;)

Dune

You're strength obviously lies in thinking it out in theory. As you get to know TG, I find that easier to do as well; think ahead what certain combinations of nodes will do, and test it. Many times however, they react slightly different than anticipated, like an example I will post shortly (Niagara Falls).

Shigawire

Quite an impressive challenge to beat.. so it seems bigben beat the challenge? ;)

bigben

A long way to go, and it will only ever be an approximation.  As I sit waiting for the train I look at the relationship between the track and the terrain and think.... no, can't replicate that..  ;)