Simple 2D dissolve

A simple dissolve shader. Add a SimplexNoise or any texture to Dissolve Texture to define the dissolve pattern.

Shader code
shader_type canvas_item;

uniform sampler2D dissolve_texture : hint_albedo;
uniform float dissolve_value : hint_range(0,1);

void fragment(){
    vec4 main_texture = texture(TEXTURE, UV);
    vec4 noise_texture = texture(dissolve_texture, UV);
    main_texture.a *= floor(dissolve_value + min(1, noise_texture.x));
    COLOR = main_texture;
The shader code and all code snippets in this post are under CC0 license and can be used freely without the author's permission. Images and videos, and assets depicted in those, do not fall under this license. For more info, see our License terms.

More from godotshaders

Noise vertex displacement

2D wind sway

Invert color

Related shaders

3D burn dissolve

3D Vertical dissolve

Simple 2d transition

1 Comment
Newest Most Voted
Inline Feedbacks
View all comments
3 months ago

It’s a great simple shader!

Here you can find usage and explanation of how it is working