1
\$\begingroup\$

I'm currently getting into using the new "Unity Shader Graph"s and have made an OK dissolve shader that looks like this:

dissolve_shader

My next goal is to move this effect so the object dissolves bottom-up. This is where I'm stuck. I tried blending this effect with another effect that just fades the object from the bottom up but this does not create the effect I am looking for (#1 is the fade effect, #2 is the two shaders blended together):

down_up_fade wrong_fade

The end effect should look something like this:

wanted_effect

How can I achieve this effect? Answers do not have to be specific to Unity and a good answer should include the thought-process to creating this effect, not just code or pictures of a shader graph.

\$\endgroup\$
2
\$\begingroup\$

This Ominous Games dev blog post has a rather detailed explanation & code samples that acheives a similar looking effect.

Summary of steps:

  • Use a grayscale noise texture to fade mesh alpha based on an interpolation factor.
  • Use model-space fragment position to control dissolution based on a specified direction vector.
  • Combine texture- and geometry-based alpha/clipping control to create a hybrid dissolve effect.
  • Add in a glow effect by "predicting" the next areas to dissolve and adjusting model emission accordingly.
\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.