Author Topic: Double Helix  (Read 7620 times)

Offline nikita

  • Member
  • *
  • Posts: 289
    • nkdev - home of tgblog
Double Helix
« on: July 20, 2007, 09:52:13 PM »
Someone recetly stated that he doesn't understand why some people like the node network so much.
This image was done with functions in the node network, and it's these kind of structures you can't do without getting familiar with the node interface and understand how everything works.
Using the node network, you can create scenes that are unique.

The image has some bugs in it though  :( So I had to do a little bit of painting.


I hope you like it, even though it's quite simple and ordinary.  :)
« Last Edit: July 20, 2007, 10:13:31 PM by nikita »

Offline old_blaggard

  • Member
  • *
  • Posts: 2524
    • http://sdcarpenter.free.fr/paul/
Re: Double Helix
« Reply #1 on: July 20, 2007, 09:57:00 PM »
Wow... very cool!  I would love to see the .tgd for this!  I've been playing with the node network and have had some sucess with making interesting shapes, although this brings it to a whole new level!
http://www.terragen.org - A great Terragen resource with models, contests, galleries, and forums.

Offline Volker Harun

  • Member
  • *
  • Posts: 1490
  • Let there be Rock!
    • NWDA-Net
Re: Double Helix
« Reply #2 on: July 20, 2007, 10:01:07 PM »
Whom do I have to give a hug for this TGD? ,)

Offline rcallicotte

  • Member
  • *
  • Posts: 9542
Re: Double Helix
« Reply #3 on: July 20, 2007, 10:35:12 PM »
Great job, nikita.

[edit] - oh yeah...and a TGD...?  A possibility?  Or maybe a tutorial or show us the node network and a tutorial.  Just asking.   :-[
« Last Edit: July 20, 2007, 10:38:04 PM by calico »
So this is Disney World.  Can we live here?

Offline nikita

  • Member
  • *
  • Posts: 289
    • nkdev - home of tgblog
Re: Double Helix
« Reply #4 on: July 20, 2007, 10:58:00 PM »
Thanks!

To be honest - I'm not a big fan of sharing such files. Call me egoistic but I don't like thought of somebody simply loading the tgd without doing any work. Also, the feeling of success is much bigger, when you've done it yourself.  :)
That being said: A tutorial would be possible.. or at least some screenshots and detailed explanations. I think lots of people wouldn't really understand the file without documentation anyway.

But it's 12:55am over here, so this will ahve to wait til tomorrow or sunday.

Offline rcallicotte

  • Member
  • *
  • Posts: 9542
Re: Double Helix
« Reply #5 on: July 21, 2007, 12:49:27 AM »
This is very cool and I'll learn from a tutorial as well as I could with the TGD.  3DGuy did the same and I learned lots from him, while I've still learned from Ben, O_B, Moodflow, Volker, and many others by studying and rebuilding their TGD or TGC.  Your choice, if you're willing to share your knowledge and that gift of a tutorial will be plenty for me.

Thank you!



Thanks!

To be honest - I'm not a big fan of sharing such files. Call me egoistic but I don't like thought of somebody simply loading the tgd without doing any work. Also, the feeling of success is much bigger, when you've done it yourself.  :)
That being said: A tutorial would be possible.. or at least some screenshots and detailed explanations. I think lots of people wouldn't really understand the file without documentation anyway.

But it's 12:55am over here, so this will ahve to wait til tomorrow or sunday.
So this is Disney World.  Can we live here?

Offline cyphyr

  • Terragen Alpha Tester (Win)
  • ***
  • Posts: 3869
    • richardfraser
Re: Double Helix
« Reply #6 on: July 21, 2007, 09:38:47 AM »
wow thats really something. I'd love to be able to figure out how you did this but I completely understand your reticence in shearing this kind of stuff.
A couple of questions on the side then:
1/ Are you a math/logic genius? Seriously, I've looked at the function node system many times and I cant figure out how to get started. Even taking apart shared systems I don't get why they work.
2/ Would it be possible (in your image) to have the helices blending in with the ground plane rather than breaking through it.
I hope in the final release (maybe sooner :) ) that there will be a not simplified but somehow easier to understand version of the function node network. Someone could write a book on this stuff (hint). I guess that the "displacement holes" or "broken ploys" aere something Planetside will fix, they look identical to the issues seen when using bump maps.
Darn good work
richard
www.richardfraser.co.uk
https://www.facebook.com/RichardFraserVFX/
/|\

i7 5930 @3.5Ghz, 32Gb (TG3 benchmark 6:04)
i7 980 OC'd @3.9Ghz, 16Gb (TG3 benchmark 6:30)

Offline RealUser

  • Member
  • *
  • Posts: 229
  • Hey Hey!
    • My Renderosity Gallery
Re: Double Helix
« Reply #7 on: July 21, 2007, 10:39:25 AM »
Cool man, i fully understand that you don't want to share everything. ;-)
Markus / RealUser
...................................................................
visit my Renderosity Gallery at
http://www.renderosity.com/mod/gallery/browse.php?username=RealUser
...................................................................

Offline ozijon

  • Member
  • *
  • Posts: 153
  • ozi
    • ozi's art
Re: Double Helix
« Reply #8 on: July 21, 2007, 10:39:53 AM »
Nice work and yes best keeping things to your self

                    well done

Offline Mavcat

  • Member
  • *
  • Posts: 129
  • lol wut terragen? o_O
Re: Double Helix
« Reply #9 on: July 21, 2007, 10:47:05 AM »
Very unique,this kind of stuff makes terragen a great program :)

Offline nikita

  • Member
  • *
  • Posts: 289
    • nkdev - home of tgblog
Re: Double Helix
« Reply #10 on: July 21, 2007, 10:51:11 AM »
Thanks :)
1/ Are you a math/logic genius? Seriously, I've looked at the function node system many times and I cant figure out how to get started. Even taking apart shared systems I don't get why they work.
Working with mathematical functions is something you need experience for. You have to know, what the standard functions x x sqrt(x) log, exp, sin, cos etc.. look like, and how to manipulate and combine them. Unless you study something like maths, computing science (like me), you'll have to work with your knowledge from school, which is still enough... if you've been good in maths. And if you didn't understand mathematics back then, there's still a good chance that you can learn it now. :)
The complicated thing is, to imagine functions in a three-dimensional space.
A sprial is something, you might not be able to describe by functions unless you have the right idea and can think in 3D.
Implementing it in TG2 is trivial (it would be, if there were a complete documentation).

2/ Would it be possible (in your image) to have the helices blending in with the ground plane rather than breaking through it.
Yes, probably. I recently tried to create a network of functions that would blur the terrain but it didn't really work.

Offline nikita

  • Member
  • *
  • Posts: 289
    • nkdev - home of tgblog
Re: Double Helix
« Reply #11 on: July 21, 2007, 01:43:08 PM »
Ok, here's a small tutorial for the double helix.
I attached an early version of the tgd, which doesn't contain a helix, but it shows the basics of the method of displacement. :)
There's also a screenshot of the network from the final version.


I took the following steps to create the double helix:
- make a simple pillar
- use displacement to turn it into a helix
- combine two helices into one double helix

For the pillar, I used a simple cone.  I don't want to go into the details, because I think that's not the interesting part of this network. ;)

Creating a helix/spiral
I used displacement and redirects to achieve the shape I wanted. You can see, there are some trigonometric functions. If you take a look at the wikipedia page for "Helix", you'll find the following way to define a helix in three-dimensional space:
    x = cos(t)
    y = sin(t)
    z = t

Before we look into the use of this definition in TG2, lets try and understand why this definition actually works.
I attached a picture of a phone cord, shot from the side. As you can see, it follows the sine function. This is represented by the line "y = sin(t)"
Now.. if we rotate the cord by 90, it is still a sine function, but it's shifted by 90, which is cosine.

Now we need to adjust the definition. First of all, we simplify it to
    x = cos(z)
    y = sin(z)
We also have to fit it into the coordinate system of TG2, where Y is the altitude and the values of X and Z depend on the altitude:
    X = cos(Y)
    Z = sin(Y)
We use displacement to represent functions in TG2, but displacement doesn't work exactly in our desired directions.
A simple redirect solves the problems - it allows us to displace the pillar in X and Z-direction.
That's it.

Combination
Now we build another helix (copy/paste) with some minor adjustments: It's z-value has to be added with pi, so the two helices aren't congruent but twist around each other.
I just couldn't figure out, how to do combine the two sprials with shaders, so I used another planet, identical to the already existing one and placed the second helix there. Because both planets are at exactly the same position, the two spirals grow at the same place and form a double helix.

Offline ozijon

  • Member
  • *
  • Posts: 153
  • ozi
    • ozi's art
Re: Double Helix
« Reply #12 on: July 21, 2007, 03:36:10 PM »
WOW!    :o

Offline ThinkPink

  • Member
  • *
  • Posts: 87
Re: Double Helix
« Reply #13 on: July 21, 2007, 04:28:45 PM »
Ahhh ....  I think, that was a hint to me :) with the nodes  .... looks nice but .....  :-\
perhaps i do somewhere in the far future a landscape with a double-helix like the lp-covers of Roger Dean (Uriah Heep, Yessongs) in the late 70th.

nice weekend

Offline rcallicotte

  • Member
  • *
  • Posts: 9542
Re: Double Helix
« Reply #14 on: July 21, 2007, 04:52:04 PM »
Thank you, nikita.  This is going into my list of tutorials.  Thank you for your help.
So this is Disney World.  Can we live here?