I see. Good idea.
FencerDevLog
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).
This is what happens when a programmer tries to create some graphics. 😀
Thanks. 😎
You are welcome! Glad to help.
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;
}
Thanks! About a year ago, I was experimenting with decals, but I don’t remember if it led to anything. Maybe I’ll revive this subproject.
Yes, you are right. Fixed.
Assemble your objects from smaller, independent 3D meshes, which you can control separately after destroying an enemy. That's how I do it in my space shooter game.
0.9.3 (2025-05-25): Added ray_marching_6 (scene, shader, and texture). Added voronoi_mosaic (scene and shader).