Strata

Started by efflux, August 02, 2009, 09:57:03 PM

Previous topic - Next topic

Henry Blewer

105 mix nodes? It would take hours just to calculate a single pixel! LOL
I haven't done and strata color layers in a while. When I did, I used surface layers with altitude constraints. This is what I came up with.

http://farm4.static.flickr.com/3153/2871232761_12b872e3f4_o.jpg
http://flickr.com/photos/njeneb/
Forget Tuesday; It's just Monday spelled with a T

CCC

That is insane. We really need a Photoshop like gradient shader. It would be easy to implement.

mogn

Quote from: CCC on August 17, 2009, 08:55:54 PM
That is insane. We really need a Photoshop like gradient shader. It would be easy to implement.

Thats why I have solved in another way:

1) multiply  the 15 colors by the constants of x in (1+x)^14 i.e 1, 14, 91, ..., 3432, 3003, ... 14, 1
    i.e multiply color1 by one color 2 by 14 e.t.c
    This should be fast since it is all constants.

2   If s is the controlling variable (0..1) and c is the complement, generate all 15 powers of s and c where the sum of powers is 14.
     This can be done in the following way
      generate s^0 = 1
      generate s^1 = s
      multiply to get s^2
      multiply s^1 and s^2 to get s^3
      build vector vs2.1.0 from s^2 s^1 s^0
      multiply this vector with s^3 to get vs5.4.3
      continue this until you have vector vs14.13.12  (In total 5 vectors)
      In the same way build vector vc0.1.2 vc 3.4.5 e.t.c  (In total 5 vectors)
      multiply vector vs2.1.0 and vc12.13.14 etc
      extract the 15 components from these 5 resulting vectors (X to scalar, Y to scalar, Z to scalar)
      multiply the 15 weigted colors from step 1 by these 15 variables.
3)
      Add all the 15  results from step 2.

Thats all


     

Henry Blewer

Are you sure you're not doing income tax forms? ;D
http://flickr.com/photos/njeneb/
Forget Tuesday; It's just Monday spelled with a T

littlecannon

Quote from: mogn on August 18, 2009, 12:09:49 AM
Quote from: CCC on August 17, 2009, 08:55:54 PM
That is insane. We really need a Photoshop like gradient shader. It would be easy to implement.

Thats why I have solved in another way:

1) multiply  the 15 colors by the constants of x in (1+x)^14 i.e 1, 14, 91, ..., 3432, 3003, ... 14, 1
    i.e multiply color1 by one color 2 by 14 e.t.c
    This should be fast since it is all constants.

2   If s is the controlling variable (0..1) and c is the complement, generate all 15 powers of s and c where the sum of powers is 14.
     This can be done in the following way
      generate s^0 = 1
      generate s^1 = s
      multiply to get s^2
      multiply s^1 and s^2 to get s^3
      build vector vs2.1.0 from s^2 s^1 s^0
      multiply this vector with s^3 to get vs5.4.3
      continue this until you have vector vs14.13.12  (In total 5 vectors)
      In the same way build vector vc0.1.2 vc 3.4.5 e.t.c  (In total 5 vectors)
      multiply vector vs2.1.0 and vc12.13.14 etc
      extract the 15 components from these 5 resulting vectors (X to scalar, Y to scalar, Z to scalar)
      multiply the 15 weigted colors from step 1 by these 15 variables.
3)
      Add all the 15  results from step 2.

Thats all



EEErrr.... yeah, just doing that now. How many grams of flour do I mix with the sugar? ;D
I just need to tweak that texture a bit more...

mogn

Quote from: njeneb on August 18, 2009, 08:07:34 AM
Are you sure you're not doing income tax forms? ;D

Certainly not, in Denmark with the world record in input taxes 8)
Since the only artistic gene I have is programming, I attack difficult problems.

Attached Efflux perlin stata 11 with his gradient hack (5 colors + 1 color tone modify) replaced by mine 15 color gradient.
The original Efflux tgd redered in 5 minutes and 12 seconds on my cpu (3 threads active)

Also attached is is the 15 color "South West" gradient.

So now to the mode diffcult, make a soft gradient with specified non equal input values.

 

mogn

Complicated node networks like this, would be a pease of cake, if tg2 allowed one node functions. Even an old programming language as
GIER algol in the beginning of the 60's allowed 2 ways of accessing input parameters: By value and by name. In TG2 access of input parameters
are not possible >:(.

domdib

Thank you for sharing your programming creativity  :)

Matt

Quote from: mogn on August 19, 2009, 11:33:11 AM
Complicated node networks like this, would be a pease of cake, if tg2 allowed one node functions. Even an old programming language as
GIER algol in the beginning of the 60's allowed 2 ways of accessing input parameters: By value and by name. In TG2 access of input parameters
are not possible >:(.

I'm not sure exactly what you mean, I may be just misunderstanding your language. You mean like a Macro node?

What I think you really need is not a better node system, you need to be able to write functions using a scripting language. We will add scripting support in future (probably via Python).

Matt
Just because milk is white doesn't mean that clouds are made of milk.

mogn

Matt, one node functions requires the the internal can access all the inputs, also the inputs thats already assigned without the need
to got to the internal each time you apply this function. Of course you have to use this as a macro, i.e. create a copy of the node (tgc) each
time the function is inserted in a node network.



Henry Blewer

http://flickr.com/photos/njeneb/
Forget Tuesday; It's just Monday spelled with a T

Matt

Quote from: mogn on August 21, 2009, 12:08:08 AM
Matt, one node functions requires the the internal can access all the inputs, also the inputs thats already assigned without the need
to got to the internal each time you apply this function.

Ah yes. That's what we'd call a Macro function node.

Quote
Of course you have to use this as a macro, i.e. create a copy of the node (tgc) each
time the function is inserted in a node network.

I'd call that a clip that contains the Macro node. Semantics :)

Matt
Just because milk is white doesn't mean that clouds are made of milk.

efflux

Hi people,

I have been away so don't know what has been posted recently but I will look through the forum in time. I have moved house and had no internet connection for a while.

Also, to tell you the truth I got very frustrated with TG2 when I developed the last planet. I'm working almost exclusively on Linux now for everything except TG2. This includes Mojoworld which works perfectly on TG2. I go through phases of using different apps. Ideas from one feeds into another.

I've got lots of time but not sure which direction I'm going in. I'm finding that doing digital painting and working in apps like 3D Coat is getting very fast results. As we know landscape building is anything but fast so I get frustrated with TG2 then abandon it, usually to return later.

efflux

I'm using too many apps and have to streamline this down. I've spent a week working on node networks in Mojo, probably thousands of nodes in my new Mojo planet. By the time I get back to TG2 I forget what I've done and can't even answer questions about it.

Probably I will spend some time in 3D Coat in the near future which doesn't require years of working out how to do things.

efflux

mogn,

I'll have a look at that colour gradient later. It looks good.

I'm going explain in more detail exactly how you can do things in Mojoworld. I have created a TG2 planet that uses the same processes as Mojoworld but there are tons of ways to use nodes in Mojoworld that is not yet possible in TG2 or at least not easily. Mojoworld will always be different because the data flow is different. There is no vector, scalar and colour differentiation in the data flow, at least to the user. This will always make Mojo slightly easier but still, there is a bunch of things TG2 needs or at least needs to be worked out. There are enough people here who have some understanding about nodes now to see exactly why coming from Mojoworld to TG2 is so frustrating even if you never used Mojoworld. It's impossible to even begin to promote TG2 to a Mojoworld user as being good. You'll see some things that you will want in TG2. Things that wish for threads should be full of. I'm not sure where to put this info, possibly in Terragen 2 discussion. I imagine some people may try to relate ways of doing things to TG2 so it's not really open discussion. I'll have to explain a few basic ideas first about Mojo's nodes which will not be hard but first thing I can describe is completely related to this thread. Here we have struggled with colour gradients and altitude. Piece of cake in Mojoworld. Of course I imagine colour gradient will eventually make an appearance in TG2 so I'll concentrate on altitude. I have a Mojoworld folder already with examples of Altitude driven fractals so it's a good start. I won't go any further here.