How would you construct this?

Started by TheBadger, April 15, 2013, 02:01:37 AM

Previous topic - Next topic

TheBadger

Hi,

I think this is pretty simple, but it totally clear which inputs into which nodes I need

I am trying to build effects in the work area of the node window, that I can plug-in to the node tree. I have my terrain the way I like it. and now am going in to specific places and areas and trying to sorta sculpt (so to speak) different details.

Im doing this by starting the new node branches with a surface shader. So for example a surface shader with a deplacement plugged in. But I need a way to isolate the effect to only a limited area in my terrain and all I can think of right now is a painted shader or image map. Maybe a simple shape too? It would be great if the surface shader had an isolate to area parameter built in.

Painting and image nodes feel a little sloppy for this, couldn't I just use the simple shape I used for flattening an area? So instead of flattening, the new effects would be contained to within the simple shape bounding shape? That sounds the right way to me..Is it? And how should that branch be constructed in as few nodes as possible?

EDIT Also, it is not entirely clear to me why I would use a child input over a displacement input for a displacement node, of a surface layer node. Why should I be using one over the other?

K, need to sleep.

Thanks.

It has been eaten.

Dune

#1
You're thinking to much, Michael  ;) Basically you're right, using painted, image map or simple shape as blenders for that particular surface. Or a combination (with added distribution shader if needed). You can warp a simple shape for a more diverse shape, and use that to blend your surface shader with the particular settings. Or use one or more camera's with distance shaders to define an area. It's just like meccano (or whatever you call it); there's a certain amount of 'tools' and parts and with those in clever combinations you can do almost anything. The 'isolate to area' input is the blend input, in fact.
Regarding the child versus displacement node; it's good to have that choice, you can use either or even both for different effects. In a child input you can add a displacement shader with a color fractal as input, which would be the same as using the displacement tab with that color fractal. But in the child input you can also use a displaced fractal (no color needed) for a different (and not necessarily better) control over the displacement.

And the displacement shader (set at +number) raises, the displacement setting of a fractal (set at +number) raises and lowers around zero, simply said.

I hope you slept well.... 

TheBadger

Thanks Ulco:)

QuoteThe 'isolate to area' input is the blend input, in fact.
But how does this work exactly? I mean there are no parameters to define what area is being limited to what. So the info must be coming from the added node, right? So is the blending input just set up to understand the incoming node better for this purpose?.. So that the blending input will always give better results in the stated issue?

It has been eaten.

jo

Hi Michael,

The blending shader is basically a mask for that particular layer. White means full surface layer, black means none. If you want to only apply that layer in a certain place, attach some node(s) which define a mask only for that area. That could be done with any of the nodes you mentioned, and more besides.

Regards,

Jo

TheBadger

OK thanks guys!

Ulco sent me some clip files that showed me I was basically building my node groups correctly. The problem was I was setting the parameters to low to see any effect. So by making the settings really high to see some effect and then lowering them to scale is the way to do it.
It has been eaten.

digitalguru

I think you've just found something that might help you - check the post re: my Terraman script.

I've been going through the same kind of issues as you, i.e needing to fix a very specific area in the terrain. I started using the Painting shader to do this , but found it's not really accurate enough to do what I want, plus the fact that the terrain redraws as you paint which is slow - even pausing the display is slow and you have to wait for the display to redraw as you change angle - slows down the workflow quite a bit.

The solution I've come with is to use Maya to create projection cameras to make my masks for use in Terragen.

For example - if I want to create a mask to add some feature or displacement in Terragen, I bake out the terrain as an Obj using the Micro exporter.

Then using my Terraman script import the mesh into Maya - after cleaning the mesh using Meshlab http://meshlab.sourceforge.net/ (one mesh I exported had 3 million vertices! after cleaning reduced to about 500k)

Once in Maya it's very easy and intuitive to set up a projection camera (orthographic projection) again using the Terraman script which enables the camera data to be exported as a .chan file.

Then I render out a image from the camera projection in Maya - import that into Photoshop and paint over it.

Export the camera data as a chan file from Maya. Create a camera in Terragen and import the chan file and make sure the Orthographic value matches that in Maya. The Terragen camera can then be fed into a Image map shader to be used as a Blend mask or whatever you want.

May seem like a more complex workflow than just using Terragen, but in the long run it's more intuitive and quicker than trying to get the same effect using the Painted shader, it's also much more accurate, you can create an effect exactly where you want it.

I use it for virtually everything now - sculpting terrains, adding displacement, masking out regions to add colour, adding regions for populations, you name it.

In the scene I'm working on I've got about 8 projection cameras, so the viewport is a bit busy now  :) I know you can hide objects, but it might be nice to have an option just hide cameras.

Dune

Can't this be done simpler, or am I not seeing something? If you make a camera in TG, render the terrain you want to change from that, open in Photoshop and paint over it, then  import as image map and use the same camera for projection.....

N810

#7
Quoteplus the fact that the terrain redraws as you paint which is slow - even pausing the display is slow and you have to wait for the display to redraw as you change angle - slows down the workflow quite a bit.

Pause the preview window after a full (or mostly full) render of the preview.
them use the paint shader, this will keep it from regenerating as you paint.  8)
you can change the angle a bit while paused as long as the bits you wanted to paint where rendered.
Hmmm... wonder what this button does....

digitalguru

each to their own of course :)

I just find  the trade off of navigating in the terragen viewport vs doing it in an external program is better. Once the workflow is set up, it's actually pretty quick.

TheBadger

 I am just interested in improving my pipeline.  This should be another tool and way. Also, as things develop, the script may be able to do more (or help) in doing more than it was first intended.
It has been eaten.