Request: Smooth Surface as Childs

Started by WAS, July 27, 2018, 02:40:03 AM

Previous topic - Next topic

WAS

Is it possible to have the smooth surface shader coded to work as a child? Like how reflections, and strata can be plugged into child and effect the main input?

An example of clever use would be to smooth the faces of strata ridges or other cliffs for a "blank slate" to displace. Sometimes you end up with jagged vertical columns that really can pollute your lateral displacements.

Dune

You could add a smoothed surface by doing it as a separate line of displacements, or masking out a certain area that needs no smoothing and adding the same area in child input, but smoothed. I mean; there may be ways to to do this with some inventive thinking.

Matt

I'm afraid this isn't possible. Child layers are executed after the parent, and they cannot influence the execution of the parent (unlike shaders which follow the parent).

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

WAS

Quote from: Matt on July 27, 2018, 04:55:45 AM
I'm afraid this isn't possible. Child layers are executed after the parent, and they cannot influence the execution of the parent (unlike shaders which follow the parent).

Matt

That makes no sense when you take into considering the Strata shader. Lol Seems like it can be done, no problem, following the same exact logic as the Strata shader which applies to the Main Input from a child.

Quote from: Dune on July 27, 2018, 02:48:41 AM
I mean; there may be ways to to do this with some inventive thinking.

That's entirely irrelevant to the point of ease and request. Of course I can.

Matt

The smoothing filter shader works very differently from a simple displacement shader such as Strata and Outcrops. Strata displacement can be applied simply by moving vertices. This happens after the input has been calculated and the input calculations are completely independent of the strata. The smoothing filter is different because it works by changing a variable in the state before the input is calculated (possible because shaders are really called in reverse order), thereby influencing the smoothness of the calculation of the input (if the input shader supports that variable).

Smoothing filter shader is different from the smoothing option in Surface Layer. The latter can be used in child layers.
Just because milk is white doesn't mean that clouds are made of milk.

Matt

You got me thinking of possible solutions though. It might be possible to reorganise the ordering of child layer calls, but it might make other things impossible, so it would trade one feature for another.
Just because milk is white doesn't mean that clouds are made of milk.

WAS

Quote from: Matt on July 27, 2018, 02:34:43 PM
The smoothing filter shader works very differently from a simple displacement shader such as Strata and Outcrops. Strata displacement can be applied simply by moving vertices. This happens after the input has been calculated and the input calculations are completely independent of the strata. The smoothing filter is different because it works by changing a variable in the state before the input is calculated (possible because shaders are really called in reverse order), thereby influencing the smoothness of the calculation of the input (if the input shader supports that variable).

Smoothing filter shader is different from the smoothing option in Surface Layer. The latter can be used in child layers.

Ohhh, I see. That makes sense. Still a it has so many uses, the Smoothing shader. Really cool shader honestly when it comes to geometry. You can make some pretty ugly detailed terrain, that has nice shapes, and completely mask out that ugliness to work from scratch. Or like I was mentioning here, with cliff faces and surface layers fuzzy-zones and breakup.

Quote from: Matt on July 27, 2018, 02:36:42 PM
You got me thinking of possible solutions though. It might be possible to reorganise the ordering of child layer calls, but it might make other things impossible, so it would trade one feature for another.

Hmm, It would be cool to see, but I would not want to sacrifice anything anyone else may be doing that childs. Maybe if it were possible, a toggle between the two child behaviors? As who knows, it may also allow other cool stuff we haven't yet discovered.