Dissolve technique!

Hi everyone, I have developed a commonly used dissolve technique for myself and I want to share this to the public. This approach enables you to have flexible edge and manage the value within a normalized range of 0-1, making it convenient and effective.
How it works?
Essentially, I generate a band with an edge spanning from (edge - 0) to (1 - edge).

Example

The fundamental mathematics behind this:
First, let’s create a MF_Dissolve. (You can use smoothstep instead of my myLerp node, it’s mainly to keep value linear). The code inside the custom node is:

return clamp((gradient-min)/(max-min),0,1);

Then, you can extract the edge by flooring the result and subtract it from the result.


20231124_150532 640i

To push it further, after isolating the edge, you can do this to control the midpoint of the gradient.

20231124_151318 640i

To achieve this, I make it into a MaterialFunction named MF_GradientRemap.


  • Final look of the usage:

Examples:

20231124_152051 640i

And that’s it – simply create a material function for all the aforementioned steps, and from now on, effortlessly add stylish dissolves to your work!

26 Likes

Love your post. I’ve made this many times over but each time I have to refigure it out (sometimes b/c another engine), and sometimes I don’t like what I made as much as last time. Thanks for the write up. I’ll have to try out your MF next time.

3 Likes

No worry! Glad you see it helpful. :smile: