[EDIT]
This thread has been split due to it having an inappropriate title for the change of direction in the discussion. The original section is here:
http://forums.planetside.co.uk/index.php?topic=2202.0
It was initially started by AndyWelder as a bug thread due to extreme displacement spikes being cut off at render time. Andy wanted to render extreme spikes to create grass like surfaces. Volker then posted about a problem he had with sharp spikes not rendering where he wanted to create Mojoesque type spires. He included this as an example and the discussion progressed from there:
(http://forums.planetside.co.uk/index.php?action=dlattach;topic=2202.0;attach=6685;image)
We eventually recreated (or rather emulated because Mojoworld has sparse convolution function that can create spikes) the same technique as used in Mojoworld and a final tgd file was created. Some other ideas are in here as well and may be explored further. Thanks to Volker for solving one issue that enabled us to recreate this technique.
[/EDIT]
Off track a bit from Andy's post but it relates due to spike rendering problems.
That's great Volker. I know you have seen my render called Twisters that looks quite Mojo. All I had in that was a terrain from one fractal that had some spikes here and there and my displacements increased scale and amplitude with altitude. There is a thread somewhere on this forum about the scale increase with altitude, but I changed the graph a little - it had some nodes that were not crucial. It's not right yet though. Displacement amplitude works fine because you just manipulate the altitude output to get a suitable result back for the required amplitude but there are some problems with the scale driving by altitude in the way the different dimensions stretch that I have to solve yet.
This is kind of related to your results here but is still totally unrelated to my technique in Twisters. In this example below I used tall fake stones and sent the graph in the screenshot to the stones shader input. Ideally what we really want is a sparse convolution basis because that will get really smooth spikes, not so broken when displaced a lot but there are ways to smooth out the voronoi edges I think, at least I have definitely done that in the past (somehow) but now I can't remember exactly how I did it. Spikes are done with sparse convolution in Mojo. We need spikes that do not end it sharp points because that often ruins the displacement at the point - you can see this in my image and rendering problems occur. The compute normal is there because I displaced by lateral normalized in the displacement shader. Fake stones are convenient at this stage ot experiment being already set up to have a different shader. It's still X,Y,Z (X and Z are multiplied as you can see in the graph and thus stretched out) related though which is not entirely what I want but like I say there are some problems with using altitude to change the scale anyway - which is really what I wanted rather than just stretching in X,Y or Z. I will get my head around that one way or another. Once I get it to something better than has been previously discussed I will post about it.
(http://img405.imageshack.us/img405/5726/stretchedvoronoibz4.jpg)
This is slightly unrelated to Andy's initial post though because he was talking about actually rendering the spikes. I like that idea a lot but for our rock spires we want to actually avoid such sharp spikes so that it all renders and with less distorted displacements at the point.
Also, in Mojoworld the technique is often to have a fatter spike and displace inwards but when I've tried this in TG2 I ended up with a lot of artifacts.
Another point is that's it's almost certain Matt will implement something that will be perfect for these spires because I'm sure TG2 will eventually have a multiple crater shader. Inverted, this wold provide multiple spires but smooth.
CORRECTION.
In the graph above, although I multiplied the dimensions, I actually multiplied by 0.1. It is divided.
New idea for spikes coming in next post.
I don't know how you got your spikes Volker, but here is a way I just came up with:
I clamped the perlin function by 0.4 to 1.
(http://img266.imageshack.us/img266/8750/spikeskt6.jpg)
I'm on a roll. With some variations on the first graph I posted above, plugged into a surface layer to displace rather than fake stones. For example the first picture uses a perlin instead of the voronoi. Some masking will be needed from the spikes now. Possibilities are wild. With some maths functions we could create forrests of spiraling towers or anything imaginable but I'm not the maths head. It will take me some time to achieve that. The power of TG2 rolls on.
Man, I should never have gone near TG2 again. I stopped because I have other work to finish first before delving into this app fully. Now I have plans for adding this into a planet and can't stop.
(http://img522.imageshack.us/img522/3380/warpedspikesnj0.jpg)
We should start a new thread for this. This one is wrong for the discussion.
I am very short on time ... I really appreciate your I/O!
Attached is my scene - be sure to generate the heightfield ,-)
I should be short on time as well Volker but I need to discipline myself to not spend so much time with TG2 until I actually have the time. I will persevere on this angle a bit then give TG2 a rest for a while again.
By the way, Mojo cuts off extreme displacements as well but in slightly different ways. Fatter displacements do not actually get cut off in TG2 as they do in Mojo, only very spikey ones. We just need to find a technique similar to way things are done in Mojo to get these towers i.e. not so pointed forms.
When using my scene file - take the spike-fractals and delete the displacement shader.
Those spike fractals could then be used as blending-shader for a terrain-fractal.
OK. I'm looking into it. I have a blending problem with my technique - which is now spikes added in to a full planet previously created. I'm trying to see how your's works.
Volker. I looked at your file and I see the surfaces are distributed by slope constraints and you have terrain normal selected. With some of my terrain techniques this is going to be a problem with the way I want to include spire like structures.
Does anybody know what the difference is between the nodes get normal, get normal in geometry and get normal in texture? Same goes for get position. This may be of no relevance to the topic here but I need to know first.
I wanted the spikes to be covered by the two shaders completely. Using 'terrain final' would shade after the spikes' lateral displacements.
I have a few hours now ... and start playing ,-) And in fact, your image made me very jealous and eager ;)
Hi Volker.
It's starting to drive me crazy that we don't have a full explanation of the nodes. It's actually quite hard for me to explain what it is I want to do here. I need to be able to mask the spires but the problem is getting the mask as a surface before a displacement. How in hell do we do this? If the mask is in the present world position or plain surface position then our later displaced surfaces will break through it if you can understand what I mean.
I understand ...
For the blending ... last shader before the displacement-shader is a multiply scalar - connected with a power fractal.
Look at the attached clip.
I am using this clipfile now ... rendering without GI and detail 0.8 ... no cut offs yet ,-)
I'm still struggling here. I looked at your file but still can't work out how to achieve what I want.
As you can see you have partly recreated a kind of fake stones shader with the voronoi by doing that clamping but the fake stones shader does mask itself the way I want but I can't achieve that part.
I EDITED THIS MESSAGE
It now reads fake stones instead of stone roses. This is what I originally mean't. I don't want to confuse anyone else reading this.
Your way of getting back to 0 to 1 is cool. That's useful.
Yep, I used your setup - I guess, that I missed your point.
I thought that you needed a blender between 'functions' and 'displacement-shader'.
It's hard for me to explain. I'm not a mathematician but that's not really important with this particular problem. Since I know Mojo I am comparing to that. Here are some screenshots from an old tutorial that spawned all those Mojo tower type planets. If we can crack this, it's a major step but we must be able to because the fake stones actually does something similar:
(http://calyxa.pandromeda.com/tutorial/materialexamples/undissurfpos.jpg)
In this image you see a masking going on. It goes in this order from left to right - World Position / Surface Pos / Surface Pos with displacement / Undisplaced Surface Pos.
Mojo simply has these option to choose from similar to how you can choose Final normal, Terrain normal and Planet/Object normal when you choose how to constrain slopes.
So you see we need an undisplaced surface position mask.
Which is a problem.
The first scene I uploaded has a fractal mask (black and white) for the displacements (spikes).
Of course, you can plug this as a fractal breakup into a surface shader. But the 'compute terrain' seems to make an offset. Surface shader and displacement do not match.
At least you need a 'colour adjust shader' to increase the contrast of the mask. And maybe playing with the patch size of the compute normal will help.
I'll try this sonn ... errr ... now ,-)
Yes, the colour adjust shader comes in useful in these circumstances. I have been using it.
I'm just thinking aloud here. Hard to explain everything. The clamping is an important part and your way to get back to 0 is cool. We have whole flat areas with value 0. This is the undisplaced surface. We need that as a blending mask if you see the point.
1. Use 'Get position in geometry' - this makes it independent from Y (height) or multiply the 'get position with a constant vector (1|0|1).
2. Make the clamp close, i.e. 0.65 and 0.70
3. delete my blending fractal-stuff right before the displacement node.
4. Use that 'Divide to get 0 to 1'-node for the displacement shader and as mask for the stoneroses' surfaces.
A file is attached. One point that does not make sense is that the surface shaders are stuck to the spikes, the displacement goes wild, but.
AWESOME. It's solved. Thanks.
;D
The possibilities this unfolds are tremendous.
I've tweaked around with your file. I'll post a result test render in a few minute so you can see. Then I'll build another file with the pure basics of how it works and post the tgc.
I attached a rough working scene, too. Bet yours will be better ,-)
Two issues:
1. The bottom colours blend to the ground - this could be handy but needs tuning.
2. The displacement seems to have below zero values. Look at the bottom left, where cuts are in the ground.
Thanks to your immense elan, input and output. It was fun!
Good night,
Volker
That negative holes are my fault - forget it ,-)
OK Volker. My render is quite similar to yours but with huge bulbous overhangs. I'll start afresh with something more appropriate as an example of the extremes possible here and post the tgd. I'm not using voronoi for the spires. I think perlin is better because it's smooth.
He he, this is going to shock the Mojo users for sure ;D
I messed around with various versions then decided on this one:
(http://img166.imageshack.us/img166/2627/funghinm5.jpg)
We could do with making the mask less sharp at the edges. In Mojo that is easy but not so easy in TG2.
It seems like there are a few small artifact problems but it's pretty clean considering the extremes.
The disabled fractal is for whatever else anybody wants to do with terrain. I didn't leave it with no other input. It makes it a bit clearer. I was just concentrating on the spires.
I think Calyxa came up with that technique for Mojo. At least she wrote the tutorial that those pictures came from. That spawned a multitude of classic planets. Now we have it in TG2 :D. All we need now is sparse convolution to make it even better.
Craters, or at least as close as we can get at present. If you clamp higher than I did, there will be less craters but they'll look more round. It's similar terrain as in the the spires but tweaked about a bit and negatively displaced which we should try doing with suface materials on the spires.
(http://img209.imageshack.us/img209/1892/cratersyb5.jpg)
I've had another idea. We clamp really high to get roundish craters from the perlin but not many of them, so we just clamp a load perlin functions of various sizes. We have multiple craters ;D
This is awesome stuff guys. Keep it up! :)
- Oshyan
I am off for family business this weekend, but my brain is cookin' ,-)
I really like your image and the craters.
The things that come to my mind are quite easy to achieve, but they cost cpu-time, slowing down renders.
Oshyan, can you split this thread?
Yes, this thread went off the original topic a bit but is very useful. Some people may not find it. It's certainly not a bug thread :D
The stone roses technique is mega. To explain in simple terms. This allows you to create those spire like structures with their own surfaces that will be locked only to them no matter how you displace them and no matter what is going on around. If you enable the terrain that is disabled in that last tgd and do whatever you want with it, the stone roses will simply float above and retain their surfaces.
It's actually very much like the fake stones but open ended.
Yes, my brain is cooking now as well and I have limited time. I'd love to go to town on this.
Topic has been split. :)
- Oshyan
OK Oshyan. Thanks. The thread title is now much more appropriate. The trouble is it kind of starts funny because I was responding to Volker's picture and the idea about spikes not rendering. I couldn't think of a way to really split this thread and make it all make sense. Maybe I should edit the first message with a link to Volker's picture and a brief explanation about the spike problem and the thread split. Would it not be better to then put this in general discussion?
Wow this is awesome work guys, ouch! your really at the bleeding edge here. :)
Richard
Thanks cyphyr. As you can see there are a load of tangents offshooting from every new idea, as in here. Hopefully we can go further.
Volker, in case you're wondering why I changed the node names to their defaults. I like to keep things this way so that anybody can quickly see what those nodes are before opening them and maybe understand the use of the nodes in a better way. Although it doesn't explain what their true function is in the graph is, I hope users can work this out for themselves. I might name nodes in future to better supply both these aspects.
It is time for a null-shader for writing expaining texts. This would be very handy when sharing functions.
Just to mention, that the first page's picture was by me not by Andy, though his work is very inspiring! ,-) ;D
Hi Volker. You mean the orangy spires picture that I've put at the start? I have mentioned that this is your image.
Oh, sorry ....
Another thing:
Think of the output that is used for the spires' shader breakup:
Make an Add-Scalar of 0.75 and multiply that with Pi (3.141, or the Pi-scalar that Matt is going to add as soon as possible ;D ).
The result would be a smooth S of values starting at -1 and end at 1. (If I am right, cannot test it right now)
So adding a scalar of 1 and multiplying that result with 0.5 should be very (!) nice for blending the power fractal of a displacement shader or for blending the fractal/function that is used for the surface shader's displacement.
Get it? Or am I just talking nuts?
Volker
OK Volker I need some time to think about what you are saying there. I'm not a mathematician but I can understand it. I am actually working on something else. Colour gradients. Mostly hacks so far but artistically some interesting ones. Maybe that could tie in here. After all we want some kind of gradient and we can do that with a mix colour (or mix scalar). If we could use the perlin somehow. It depends what we want. Do we want surfaces to blend or also terrain? I'd love to smooth that sharp edge where the clamp is.
I've done away with the colour adjust shader now (replaced by scalar nodes) and I'm working on changing the blending area but surfaces only. I will get back to you on this.
Next intermediate hack but not how I want yet and too be honest the displacements are too over the top. Asking for artifacts. I was hoping to have this solved before the end of tonight along with a pile of gradient experiments. Way too ambitous. I'll have to give it a break now.
(http://img242.imageshack.us/img242/2494/funghi20vj2.jpg)
Now this is really cool! Nice work.
One last render. I couldn't resist. The lava towers are now inside the craters and glowing.
(http://img299.imageshack.us/img299/5655/funghi30ap4.jpg)
Hi,
Wouldn't it be cool if we could use something like this to control cloud shapes? Or can we? I should know, shame on me, but I seem to recall last time I tried to control a cloud layer in 3D it wasn't very successful.
Regards,
Jo
I think it's possible to control just about anything imaginable.
After the divide scalar, it is nice to make a square of the result to get some blending to the ground.
Else, I am trying to get a workaround for large displacements near the ground and small displacements to the top.
So some silent exploring here ,-)
Hi Jo, anything used for these functions are scalars.
So the perlin could be used for the clouds' distribution and the displacement-functions for a 'blending-shader'.
Old Blaggard would intervent due to rendertime issues.
Hi Volker. I'm trying to work on colour gradients at the moment. Not so easy especially since I am not am mathematician (I will have to improve on that). The reason for this angle is that colour gradient control could do a lot easily that otherwise we are having to use resort to maths for. It ties in with issues here as well.
This is without question my top wish for TG2. It's possible to create gradients with nodes if you know what you are doing but a nice easy to edit colour gradient would improve TG2 more than anything else at the moment. However, apparently we will not get this feature for some time so other methods will have to be used. A curve graph can do stuff even a colour gradient can't but that's still second on my list. For example in the circustances here, if we used a curve to control the original perlin we could shape the spires better e.g. where it meets the ground.
Shall we split this topic again??? ;D
No don't worry about that. I'm not digressing anywhere but all things link and yes the square root is the thing I was using to smooth voronoi - which I mentioned before but had forgotten how I did it. You may find that improves your actual towers (softens them) if you are still using voronoi.
I went your way, using perlin noise.
About the gradients - we exchanged a bit before on that.
I did not give an answer, as the possibilities for gradients are tremendous in TG2. Not always easy, as you stated.
I am thinking now of a powerfractal, its inversed version and the lovely merge-shader ,-)
Volker
Im working on altitude controlled displacement. This is easy but not so easy to merge functions with shaders - this is always what confuses me. You can take an altitude node, divide it by a suitable amount and then use this to blow out displacements. For basics, if you plug this into the displacement input on our last surface shader (instead of that power fractal) it will blow the displacements out to giant balloons but that's not really how we want to utilize this except maybe via a different route to inflate our initial towers a little - that can be cool. I'm working on it. Actually, with the scales we're working on here, simply plugging in an altitude does the trick but we'd need to control it if the spires are going to be shifted by upwards displaced underlying terrain.
Indeed - this could be handled with the last function node before the displacement-node.
Just use this as blending shader for the displacement-function for your spires' surfaces top, or use an inverted version for the bottom part.
Just a bit of fine-tuning with a colour-adjust shader is needed.
Attached is an image of the nodes I am using at the moment.
The ColourAdjust is controlling the redirect-displacements. They only appear off the base, so the spires blend nicely with the terrain.
Disabled are two SurfaceShaders, one is set to positive, the other to inverted Blendshader.
Before using the Redirect, I applied different displacements to the top and base of the spires.
Using that other colour adjust is a good idea. I'll post a shot of my results soon.
Where the power fractal plugs into that last shader for displacement, I am multiplying it with a altitude function. I'm taking altitude subtracting from it then multiplying = tree like structures. Bear in mind here that the altitude could in be controlling a lot from one fractal rather than blending two shaders. I like limiting to as few fractals as possible and modulating them. It looks cooler.
More fractals = longer rendertime, too.
Your altitude-function sound promising.
We're reaching the limits here. It'll take me a bit of time to optimize this for less artifacts. This is why actually blowing out the underlying surface that the secondary displacements rest on is a good idea. More layers of various displacements rather than one simply distorting the whole thing.
I apologize for spelling mistakes. I corrected it. I'm typing too fast.
Do not worry about spelling - it is the intention that counts.
I am on a 'final' render now, after that I'll probably go for some fun stuff with those spires - your idea with tweaking the shape by functions, you know ,-)
I've got a render going now and will show a screenshot of the new altitude graph. I'm hoping not too many artifacts will appear. If TG2 can render this without major problems it'll be a miracle. Wait till you see this one :D.
I'm finding big displacements are not a problem in terms of render times. I think detail slows it more. I make sure all smallest detail sizes are kept as large as possible.
One thing that needs confirmation:
In the preview render, when going for detail level 40 ... spires that do not show up are most probably to be cut off during normal render.
I'm doing a larger render here to experiment with cut offs. Surprisingly (so far) it has caught some of the biggest displacements. this would never have worked in Mojo.
Almost there. It's cut a few minor shapes but not as seriously as I thought it might. Nothing that can't be patched up and I'll improve this anyway. I'm happy with the control of the displacements now. I need to work on the altitude driven scales, not just displacement amplitude and we still have that sharp transition at the clamp. In Mojo you don't have that problem or at least it can be resolved because the sparse convolution curves into the ground more and you can easily create a seperate mask, not one from the original terrain. I'm not sure how we could do that in TG2 though without more problems. We have one advantage, perlin is a bit more interesting and varied than spare convolution spires anyway.
Render and screenshot coming next.
OK, here it is:
(http://img99.imageshack.us/img99/5047/funghi40xt0.jpg)
And here is a screenshot of how the graph is hooked together:
(http://img99.imageshack.us/img99/5103/altitudedrivenspirestt7.jpg)
I had to do a few very minor patch renders but the result was much better than I thought it would be. The displacements are perlin ridges so some ragged edges due to the displacement extremes.
Quote from: efflux on October 14, 2007, 07:04:13 PM
Next intermediate hack but not how I want yet and too be honest the displacements are too over the top. Asking for artifacts. I was hoping to have this solved before the end of tonight along with a pile of gradient experiments. Way too ambitous. I'll have to give it a break now.
(http://img242.imageshack.us/img242/2494/funghi20vj2.jpg)
how did you manage to get this.....
I got rid of the Color adjust shader, created an Add scalar, hooked the Perlin 3D scalar and the output from the Divide scalar into this, then sent that to the last Surface layer Breakup shader input.
Oh, and I also sent the Divide scalar to an input on a Mix scalar with another direct input from the Perlin 3D scalar. This was mixed by a value of 0.9 then sent to the displacement shader function input.
I mean what functions did you use and such...(I am sorry I havent read the whole thread yet)
I can't explain it all but it's all in the thread, including a file. The above changes I describe will alter the file to the picture you're looking at.
I love those fancy mushrooms! They might be a perfect subject for that Displacement blender option in the render tab ...
I am still working on a more subtle appearance of those spires.
The function's output is now squared twice. This is used for blending a powerfractal terrain.
Some minor tunings and the slope should be very soft.
That's really cool Volker. This is looking very much like a sparse convolution tower which is what we want.
Very inspiring!(pun intended) ;D
This thread has been very helpful.
I had been experimenting with spikes a couple of weeks ago, I arrived at them by a slightly different method but gave up because of the cut off tops. :( I was working with very tall slander spears so there are quite a few of these I didn't know about the crop solution.
I was using powers and getting results similar to volker's double squared example.
I have now worked through all the versions posted here and am now off to resurrect my version and see if I can adapt the masking technique to work with my spikes.
If I can get it to work I will add an example here. There may be some use in having a slightly different approach to the problem.
I can see that that little group of nodes that returns a clamped value back to a 0-1 spread is going to become a must have clip. ;D
Going further and so are render times so not top quality but it's only a test:
(http://img99.imageshack.us/img99/8268/funghi50wn7.jpg)
The sky is a tweak from the thread by cyphyr about voronoi skies.
The trouble with this one is that huge detail levels are required for any overlying displacements on those grossly displaced shrooms but without any displacement and just colour, it would be fine. The smaller surfaces on the shrooms are now also clamped perlin but you can't see that very well.
These renders often fail in places but can be patched. I'm pushing this to limits that I will probably never use in a planet.
This next render is the next stage if we really want to see how mad this can be. It pays off in better techniques for less extreme effects as well. We need to use positive and negative displacement, specifically in this case pulled from the altitude driving function and with much fatter spires. Then absurd extremes are possible:
(http://img145.imageshack.us/img145/6224/funghi60pm3.jpg)
The more we can negatively displace the better in these circumstance because then the renderer won't miss bits and we won't have such large geometry details showing up in the render.
The reason I'm tweaking this to the best I can get is because when I come to do bigger renders the renderer is probably going to screw up more so the more extreme I can get it the better. l'm expecting to have to substantially tame it down.
Stunning renders! I am getting jealous again ;)
First image attached is from the previous scene, showing the blending of a spire with a terrain node after the spires' function.
Second image is the one that I started yesterday, using the redirect shader. Base terrain is the Towerbuster-Terrain, that I shared some time ago.
Volker
Out of this world! I'm too much in the world of Constable atm but I'll really have to get into this abstract stuff you guys are creating here, very inspiring.
Richard
Well, just for entertainment, the attached image shows the dreamland of frustrated women - women that dream of electric devices ,-) ;D ;D ;D
efflux and volker, this is cool stuff. Thanks for showing your experimentation.
I love those renders Volker. I can't wait to see how you will develop this further into bigger pictures. They are Volker style which is interesting because I'm rendering out a larger picture now with the same technique yet totally different style of landscape. Your work often reminds me of Slav's (A very cool Mojoworld artist). He used Mojoworld to get realistic looking landscapes that always had a surreal touch. Something TG2 will excell at. This is the part I love. You can use TG2's beautiful surfacing, atmo GI etc to get very realistic results which makes the more surreal parts look totally convincing rather than CG looking.
This picture is where I went too far but I wanted to hammer the TG2 renderer to extreme. It's reduced in size by 50%. I can't remember the exact quality settings but they were not extremely high and it still failed. The bigger the render with the higher the quality then the more likelyhood of failure which is why I tried to tweak this technique to maximum power:
(http://img155.imageshack.us/img155/4482/funghifailuredf0.jpg)
You can see there was no way of fixing this one but I'm surprised it even went this far. The displacements are giant voronoi. I also used a colour gradient and sine functions. My currently running bigger render is an extremely tamed version of this world but with some cool atmospherics to give that "real" touch.
Well, I like your style more - as it is beyond my capabilities ... yet ... so everybody has a goal ,-)
Your capabilities are perfectly advanced as far as I can see, Volker. You have a clear style. I'm into the mood of the thing more so I tend to chop and change styles. You have a bit more maths know how than I do. I'm only good when I can visualize the maths as geometry. The maths is a big benefit but both that and some artistic imagination are equally important. You can do stuff without the maths or function tweaking but I think it limits you.
The wierd pshyedelic things going on in that image are actually very simple. I'll go into it a bit when this other render finishes. I'd love to have sine as a basis function in a fractal along with voronoi then we could really get going. Voronoi fractals are capable of beautiful shapes.
The spires and big displacements are not a render killer but I have some atmo things going on in my latest render so it may be some time :(
Well, I graduaded in maths, but this is 17 years ago and left is just luck ,-)
Like most things I do in TG2 - the start off is luck and then analyzing the results ;D
That makes sense because you clearly have an understanding of it. I always hated maths or rather arithmetic. It's figures my mind doesn't like but the minute they become geometry it all makes sense because I can see all the formulas as shapes in a space. It's the pure arithmetic figures that my brain doesn't handle. For example in your way of getting back to 0 to 1 in that graph. I think it's my lefthandedness (right brain dominant). Good at spacials but not abstracted figures.
I've been following from a distance now for about two days and just tried what you guys have put up as well as just creating it from scratch and following what you're talking about (or some of it). What I wonder is what you might think is causing the Preview window to do fine while the actual render is cutting off the tops. Would you mind giving your opinions about why you think this might have happened?
Anyone feel free to answer. I've tried, but I obviously don't understand something.
It's a cool use of the technique. Looks like artichokes. The cut off is the big problem for this technique if you go crazy. The realtime preview must be analyzing the whole scene whereas the renderer sections off the final render into blocks and misses large displacements. This becomes a big problem when you are rendering large size with high quality because the renderer bypasses displacements. Maybe Matt can improve this but TG2 is not alone in this problem. It is not really designed for these extremes. Mojoworld does exactly the same thing and in fact in some cases a lot worse. There is an improvement if you add my graph that uses the altitude because my spires in that are much fatter. The altitude subtracts from itself and pulls some of the displacement inwards to be inside the original spire. This helps. What you could do is try some negative displacements with much fatter spires. Just make the displacement amplitude -. You will get different results, not like those plant like things (which is maybe what you want) but maybe you can get some things that I or Volker have not shown here.
There was a thread awhile back about the cut off displacements and the hope that Planetside can get rid of them in "most" cases.
http://forums.planetside.co.uk/index.php?topic=2107.msg20642#msg20642 (http://forums.planetside.co.uk/index.php?topic=2107.msg20642#msg20642)
But I just have to say that the effects you are creating here are phenomenal. I wish I had more to contribute on the function side of things, but it is way over my head so far. Thanks for sharing your results!
Thanks. I haven't seen that thread. I will read it.
Calico. I have a bigger render going at the moment. It's 3000 x 1500. It's a test to see how far realistically we can go. I don't think I can improve on it further. This render will need a few patched in crops but that's OK. If you can crop the missed displacement in such a way to get a correct render then you're sorted because you can repair the full render. I'll post this image in image sharing when it's finished. It will be a good demonstration of this technique and how far you can go if you want a big high quality render.
The best demonstration is with pictures. This is an Armands Auseklis render. The Mojo master. These spires have a lot of inwards displacement. I haven't checked Armands Planet file so I can't confirm it's 100 inward displacement on those spires but you can see the shapes are pushing into the spires rather than out or as well as out. Mojoworld's displacement orientates the opposite way for some mad reason. + pushes inwards. It doesn't do that throughout Mojo though. Just one of the many inconsistant annoyances. In Mojo, to render big displacements you can not tile render. It will almost certainly cut off displacements but you have an option to not tile render if you've got the RAM and the render isn't gigantic.
http://armands.pandromeda.com/MojoWorlds07/WorldofBondstonesPop.jpg
Thanks for all your help, efflux. I'll try the idea you suggested above as well as this. Can't wait to see your render when finished. This is helping me to learn, as well. Thanks to you and Volker.
Quote from: efflux on October 16, 2007, 04:24:07 PM
Calico. I have a bigger render going at the moment. It's 3000 x 1500. It's a test to see how far realistically we can go. I don't think I can improve on it further. This render will need a few patched in crops but that's OK. If you can crop the missed displacement in such a way to get a correct render then you're sorted because you can repair the full render. I'll post this image in image sharing when it's finished. It will be a good demonstration of this technique and how far you can go if you want a big high quality render.
The ultimate answer is a volumetric renderer that can render the landscape the same as the clouds. In full 3D. Mojo has a volumetric plugin but there are problems with that. Floating rocks for example, unless you want those. The Mojo plugin is not properly integrated either. No decent realtime preview, no water transparency and probably other issues. It's a pain to work with. I never used it except for clouds. It's a future thing. Maybe even some future version of TG2 wil have full volumetrics.
That Armands image shows another capability that would be fantastic to recreate in TG2. You'll notice the shadow areas have a slightly greenish colour. That's a dot product graph. Armands later developed this planet to also have a dot product atmosphere colour. I'm not sure if that is possible in TG2. I think you'd have to get the effect in real atmospheric ways like adjusting clouds rather than the more faked gradient across the sky. In Mojo it's really an attempt to try to create what looks like areas of dark cloud coverage.
Actually, I correct myself. The dot product gradient can be seen in the sky of that Armands image. He just later changed the cloud colours.
That Armands image will likely have had post processing as well. Don't be fooled into thinking everything you see is direct from the render. The post processing is a vital ingredient. Skill with this can work wonders. The cool thing in TG2 is that the atmospherics and GI mean we do not have to fake those parts in post.
The point using a program like TG2 is that both sides of the brain are needed.
About the clouds ... why not taking Joe's idea and use clouds - they are a bit impossible to shade, yet. But what is life without a task? ;D
I'm leaving the clouds idea for the moment. Maybe I'll try it later or maybe someone else can try it. It will be a task to experiment with because of render times.
This is clearly a really cool thread! 8)
The clouds are delicate.
It no problem to have them volumetric very close to perlin spires, but even a very dense cloud of 1000m depth above those spires shows the clouds only near the terrain.
Need time to investigate this.
I have refined the function a bit.
Between the Perlin and the Clamp I set a multiply-scalar node for modifying the spires' shape (using a powerfractal or values from 0.8 to 1.5 are reasonable).
At the end of the function is a multiply-scalar for blending with a power fractal (large scaled).
I use multiply a lot. It's great, since multiplying creates large changes. I found that by merging the initial tower shape with the clamped version you can get smoother towers that are then OK for negative displacement which is what I'm doing more now. This simple idea leads on to a lot of possibilities for smoothing out sharp maths functions. I'm trying to keep the displacement from going wildly outside the initial tower shape and distorting the geometry too far. I'm still not happy with the masking though, in terms of applying subsequent surfaces. I need to work on that. I'm also thinking if we could somehow manipulate altitude surface blends to take into account that the towers may be at various altitudes - this could be tricky and I've not got the time to experiment.
The most simple way of masking is to use different Colour Adjusts and to subtract the results.
This way you have at least an overall, a bottom and a top-mask.
Using '-1' as input of an ArcCos gives you Pi. Multiplying this with any mask may let you give some Sin-controls over the masks.
Using the Sin-functions you can get Spires with a wall outside (like spire growing out of a crater). This is very difficult to mask, though.
Another thing that I pm-ed you is quite delicate and should be apllied before any other displacement ,-)
Volker
Attached is an image which shows what I want to achieve.
The render is not perfect (very top and the top of the base) but with an intelligent Point of View it would look nice ,-)
This looks awesome! I have finally had a chance to read through this thread, and so I understand what you are doing here. This is a great use of opacity - you just need to figure out a way to smooth the opacity. Just a shot in the dark, but maybe that would be possible using some of the techniques in the voronoi thread.
Hi,
I'm glad this info can be useful but the thread is a little misleading to be honest because the technique is not simply useful for creating spires. It just happens to be a way of doing that.
took volker's mojo.tgd and tried some stuff here. when you have a good basis like his node setup, things almost come too easy
edit: cut off edges at larger scale
You guys do InSpireing work!! Thank you so much for sharing, I played with surface and reflection a little, I learned much from your examples. Thank YOU.
Piet
http://www.ashundar.com/gallery/displayimage.php?pos=-4746
Hello Piet,
I really appreciated your comments on my pictures - and I must admit that I like your image very much (eager to do more spires now .. but I am off time)
.
Man schafft es auch mit weniger Nodes ... hier hatten efflux und ich einfach nur bannig herumprobiert, was überhaupt möglich ist, ohne eine Ahnung zu haben, was wir machen ... das waren die wilden Anfangszeiten :D
^... just gave an answer to Xynedia's point about that many nodes neede for the effect: You can get the result with less nodes. Efflux and me were playing around to se what is possible without knowing what we did ... those were the wild days of discovering TG
.
Took me the freedom to run the text through google translate.
Tried to correct small errors, but my German mine is not exactly something to brag about, rather the opposite.
Ps. the text above are translated from Norwegian ;D
Quote from: Xynedia on January 02, 2012, 04:02:29 PM
Hi Volker,
But important wild early days! Sign
What a benefit as I do now.
Yes! the efflux appears to be the only one who can really make the real Mojoimages with TG2.
My picture Mojopira I could only thank your experimentation in here and make file found.
I never could have done something.
Or is the real world freelancah Schaffer as the volcano with the very nice picture or the orbital images.
Now I can change the parameter values and create new Mojopira how halt.
I'm also joined on it, because I scoured the entire forum for interesting TG2 Files.
Unfortunately for me, TG2 is very cumbersome compared to Mojoworld.
In Mojoworld fascinated me especially in the render preview systematics Mojo3Pro.
And by the simpler design in all areas of the world I get along great.
e.g. I can create in Mojoworld gas ring nebulae, without having to use background images must.
On Xynedia Mojobilder also many who come from my experimentation times.
e.g. image 243 - On the planet Quasona
Where the sun has huge gas bubbles around.
http://www.xynedia.de/planetenwelten/august.html - last image
I have with each other Displcementierten 4 Mojosonnen designed nested.
A second application of this kind is the sun in Terragenbild 012 - On the planet Xopertinus
http://www.xynedia.de/terragen-welten/terragen-bilder.html - 12 Picture
This consists of three interlocking Mojosonne displacementierten and refracted sun.
The halo was subsequently incorporated to the overall image of the sun as a background
to insert into the Terragenbitmap background.
Or like this Mojobild here:
http://www.renderosity.com/mod/gallery/index.php?image_id=2093379&username=claudia02&member&np
Once a renderin without custom background image.
Also play around with the texture mode for interstellar gas clouds in space to create mr been found.
While I have many things in Mojoworld himself found out, because it was easier user-programmed standard,
I often get at Terragen2 one rappel, go ahead and not because even for a simple terrain Vonoroy
and nesting scurrilous cloud formations often complex nodes are required and it is this also
have very confusing names.
In Mojo e.g. I know directly what Rigdeperlin or sparse or Consulotion Vonoroy causes the terrain or clouds.
But each comes with a clear and distinct, and the program will also work with the program,
which he achieved the best results.
.
Wow, I love this topic. I'm so glad Efflux started it and so many jumped in it to learn. This is the best way to learn TG.
.
.
.
Xynedia.
Very artistic work with this technique.
I'm going to do all this again at some stage because better files need to be made as a base for this idea. For example, without a sparse convolution basis or a curve graph, we can't easily create a nice blend with the ground or have very smooth spires. There are ways though. I think maybe Volker used a function for smooth blend somewhere here. However, a file needs to be simply presented as a base for creating a spires planet rather than the various node techniques spread across lots of experimental files.
I'm actually currently working on another thing that relates to how you do something in TG2 that you can do in Mojo. It's not so easy to tell Mojo users how to do stuff due to TG2's completely different flow of data. Most functions in Mojoworld do not have different data types. Also, in Mojo position coordinates are not built into any component. You plug in a planet surface, displaced surface, undisplaced surface, altitude etc. This is a major problem in moving to TG2 because in Mojo you can effect the positions by treating the coordinates before they get to anything. It's not that TG2's system is much worse, there are some advantages. However, It makes TG2 harder to understand what you are doing but possibly easier from a basic level of just hooking up surface shaders.
Mojoworld also has VAST fractal power. More so than any other app out there multifold times over. It is hundreds of times better than TG2 in this respect. In fact I see no app coming close any time in the near future in terms of sheer fractal power. On the downside. Mojo's UI is an absolute nightmare. TG2's is massively better. Of course Mojo has fallen behind so now render times are impossibly long (no multi core). It's really dead as far as I'm concerned. TG2's renderer is superior.
Of course certain direction decisions in TG2s development are understandable. Ken Musgrave was more in a fantasy land about how Mojo was to be used and by who.
.
I am actually more into creating alien type worlds but not always. What I am into is realistic effects and open ended easy to use nodes aid this because you find all sorts of interesting ways to do things. My latest TG2 planets are in fact much more realistic than anything I've done before but there is always some element which is not a typical earth like scenario. Due to technical headaches I've not even posted any images yet from what I've done recently.
This thread here demonstrates some of the problems of TG2. It is very straightforward to create what amounts to a basic mask to create towers in Mojoworld and control their distribution. This extends to all uses of this technique. It's not just for towers. This is not because Mojoworld is completely different from TG2 in underlying capability to do this but the apps are completely different in their node networks. Mojoworld is the absolute benchmark of how this should be in my opinion even if the actual UI around how you view nodes is terrible. It's very easy to decide where your textures are getting their positions from in Mojoworld. This amounts to ANY positioning including altitude and slope.
If you look at the work of the best Mojoworld artists, many of them veered towards much more realistic scenes later on because the craziness of huge displacements and mad pshychedelic colours wears off in novelty after a while. Even if you still do things like this, it always works better when there are some more realistic contrasts. Sadly Mojoworld fell short in the area of better tech to get more realistic renders so it doesn't look as real as TG2 but also sadly TG2 actually limits you in getting what are in effect more realistic results in Mojoworld in terms of shapes so there is no app that does the basics of what we need. We don't even need all the massive fractal power of Mojo if we have some more basic power of tweaking things in nodes.
.
Xynedia,
Yes, Sine Warriors by Armands is the ultimate psychedelic type planet. In fact I think Armands has produced the best landscape work period out of any procedural landscape app. However, we don't have a sine basis in a fractal in TG2 to achieve the beautiful forms of Sine Warriors. You have to simply use a sine maths function. I'm not saying we particularly need a fractal for that above other features but it would be cool. What if the fractal in TG2 could just accept any input basis? There are other things you can do with sine fractal that does yield things that are "realistic".
However, imagine Sine Warriors but with TG2's renderer. It would look much more realistic. It's also cool to mix some totally out of this world tower into a photorealistic landscape.
Some of the renders you have posted here have a realistic lighting but don't have the beautiful fractal forms that are achievable in Mojoworld. This is the frustration as well as some technical limitations in TG2 like choosing position type wherever you want to get the extreme blends to be accurate.
I have a final solution in the works for this "Mojo-esque Spires" thing that I'll eventually post in a new thread.
Quote from: efflux on February 24, 2012, 04:59:33 PM
Xynedia,
Yes, Sine Warriors by Armands is the ultimate psychedelic type planet. In fact I think Armands has produced the best landscape work period out of any procedural landscape app. However, we don't have a sine basis in a fractal in TG2 to achieve the beautiful forms of Sine Warriors. You have to simply use a sine maths function. I'm not saying we particularly need a fractal for that above other features but it would be cool. What if the fractal in TG2 could just accept any input basis? There are other things you can do with sine fractal that does yield things that are "realistic".
However, imagine Sine Warriors but with TG2's renderer. It would look much more realistic. It's also cool to mix some totally out of this world tower into a photorealistic landscape.
Some of the renders you have posted here have a realistic lighting but don't have the beautiful fractal forms that are achievable in Mojoworld. This is the frustration as well as some technical limitations in TG2 like choosing position type wherever you want to get the extreme blends to be accurate.
I have a final solution in the works for this "Mojo-esque Spires" thing that I'll eventually post in a new thread.
I don't know if your are aware of Chebyshev Polynomials, They are a set of polynomials, that divides that divides an angle range 0..2PI into n subranges of
sinus like subcurves (i.e changing between -1 and 1) with n zeroes.
The polynomials can be defined with a recursive formular:
T(0,x) = 1
T(1,x) = x
T(2,x) = 2*x^2-1
T(n+1, x) = 2*x*T(n,x) -T(n-1,x)
This sounds complicated, but there are also a trignomial equation for the polynomials:
T(n,x) = cos(n*arccos(x))
E.g. a perlin 3d scalar delivers a range of numbers between -1 and 1
If you compliment this you get a number between 0 and 2.
You multiplies this with PI so you get a number between 0 and 2*PI.
This what you get from applying an Arccos to an angle.
So multiply this by n and apply a cos function you get a sinelike subdivision of the areas of the perlin.
Since cos(0) = 1 n should be odd to get a soft subdivision.
Would you mind putting this into blues? I tried to fit it together, but just got fakestonelike bulges....
It works, give me a moment and I'll post a tgc. Ok attached, just add a compute terrain and play. Also added a tgd with 3 iterations. Mick
May look into that but I need to keep the maths simple to understand. The only time I heard of the word was from Dmytry Lavrov's program:
http://dmytry.com/games/
Dmytry was the person who made the Volumetrics plugin for Mojoworld. Sadly not very easy to use due to UI integration. Open GL doesn't display a decent preview. Water has no transparency either. However, the plugin was simply awesome. Mojo's rendering speed isn't though hence pretty much defunct. Mojo is full is amazing stuff that is now more or less unusable. Terrible waste of in the end.
I'll have a planet set up for spires type scenario eventually. The main problem was providing blends so that the spires can exist without any problems in any environment with altitude/slope distribution. This requires blue node blends due to TG2's positioning limitations.
I'm not sure if I got a blue nodes slope distribution correct. It works but kind of before I even expected - I was expecting to have to do more than I did. That's the one part that will need checking but that may appear in other files I'm playing with before the spires one.
mogn.
You will understand this. I figured that I could get slope info by using a dot product between get normal and get normal in geometry. Then after that I tried using an arccos scalar. What we want is degrees - easy for most to edit. I'm not certain what outputs what exactly. Arccos into radian to degrees appears to actually work but I just threw this together. I need to go back to study it. You will likely know what the score is here.
Thanks, mhaze. Actually that's what I got (1 iteration, that is), but I thought it would yield some vertical sinelike bulges in 'spikes'. I was experimenting lately with an alternative for fake stones, hoping to find something without the hard edges that would bulge out of a flat area.
Hi Dune I don't know if this is what you want want but it makes an interesting play. I've basically subtracted two iterations, added an extra perlin noise and a power fractal.
Quote from: Dune on February 26, 2012, 03:01:31 AM
Would you mind putting this into blues? I tried to fit it together, but just got fakestonelike bulges....
Thanks, Mogn!
.
Very nice results for the mushroom shapes, with minimal render problems. Well done!
- Oshyan
Xynedia,
That's a cool image.
I really want to revisit this but there are a couple of technical limitations in TG2 which cause problems in setting up the ideal default graph for this. I have a number of files with various ideas waiting for TG2 capability to allow me to sort it out.