Hi all,
I've never been great at creating nice surfaces, so I thought I'd sit down and learn as much as I could and improve my skills. One thing led to another and I got reading about Vector displacements. You'll have to bear with me, as I hadn't even touched vectors in Terragen until 3 days ago, and it's been a few years since I last worked with them at University.
In particular, this thread got me thinking:
http://www.planetside.co.uk/forums/index.php/topic,9147.120.htmlThe way Terragen computes surface normals won't really support overhangs, and doesn't do lateral displacements very well either - someone describes it somewhere as being like draping a carpet over the surface.
I thought about different ways of calculating surface normal's, and came up with the idea to translate the function by a fixed distance in both the X and Z distances. You can evaluate these transformed functions and compare (subtract from the original function), and it gives you sort of normal map in that direction. From this I did a bit of maths (ruined my brain for 2 days straight) but finally think I worked it out. I essentially build a normalized surface normal of the original function and redirect a desired overlay function (smaller scale perlin) in that direction.
In my head I imagine I can repeat this layer by layer, and overcome some of the traditional limitations we have. But I am yet to test this and might not get to until next week.
You can see the node layout below:
[attach=1]
Quick test of scaling the displacement amplitude of the overlay function to show the direction of displacement (0, 20, 60, 100 and 140):
[attach=2]
[attach=3]
[attach=4]
[attach=5]
[attach=6]
So it appears to work, but at this stage won't do too much differently from the usual displace along normal (with a small compute terrain patch size). The real test will be if I repeat the process with additional functions.
I might be completely confused here, like I said I'm fairly new to this so any thoughts, opinions or advice on this would be appreciated

And a few images of some cool displacements I built while trying to get it working:
[attach=7]
[attach=8]
Cheers