0.9.3 (2025-05-25): Added ray_marching_6 (scene, shader, and texture). Added voronoi_mosaic (scene and shader).
I see. Good idea.
I think Bevy uses WGSL that has a different syntax. But your friend can at least extract the algorithms and rewrite them. 😎
0.9.2 (2025-05-21): Added print_number (scene and shader) and its usage in paper_burn (script and shader). Added ray_marching_5 (scene and shader).
Thanks! The offset of UV coordinates works like refraction, localized to the corresponding cell of the defined grid. Without using a noise texture, such light refraction would be circular, similar to the magnifying glass effect. However, this approach creates slightly irregular shapes, which better simulate droplets on a window pane. If you reduce the drop_layer function to its absolute minimum, you should see the mentioned grid before the shaping and movement of the droplets.
Like this:
vec2 drop_layer(vec2 uv, float time) {
vec2 grid = vec2(grid_x, grid_y);
vec2 drop_uv = fract(uv * grid);
drop_uv = 2.0 * drop_uv - 1.0;
vec2 drop_size = drop_uv / grid;
return drop_size;
}
Yes, you are right. Fixed.
Heh, thank you. 😎
Well, Godot is a lightweight engine, so it doesn't have almost anything extra built-in. Which is advantageous because the engine itself then takes up negligible space on disk and the editor starts up within seconds, which can't be said for Unreal. But everyone prefers something different, of course. I mainly wanted to show that implementing your own blur effect can be simpler than it might seem at first glance.
If you want to learn about Godot shaders, you can try these video tutorials.
Thank you! 😎
FencerDevLog
0 post score0 comment score
0.9.5 (2025-07-08): Added ray_marching_8 (scene and shader) and ray_marching_9 (scene and shader).