Thank you so much for the tutorial! For those who face an error for SCREEN_TEXTURE here is the solution, just add this line of code in the above and everything should working uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap; And here is the full code in case anyone need it shader_type canvas_item; uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap; uniform sampler2D noise: repeat_enable, filter_nearest; uniform float speed : hint_range(0.05, 0.5) = 0.1; uniform float strength : hint_range(0.005, 0.5) = 0.1; void fragment() { float noise_value = texture(noise,UV + TIME * speed).r;
Great tutorial, but do you know how to make it pixel perfect so it doesn't smudge? I am trying to make an effect similar to the SNES Donkey Kong Country water levels.
It's just a Particles2D node that follows the players position using physics_process. It's emitting when the player is moving, not emitting when the player is still!
I meant to add, if you're importing a noise texture you made in Gimp, make sure "Repeat" is enabled in the Godot import settings.
this is something you'd need to check Gimp or otherwise
Thank you so much for the tutorial!
For those who face an error for SCREEN_TEXTURE here is the solution, just add this line of code in the above and everything should working
uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap;
And here is the full code in case anyone need it
shader_type canvas_item;
uniform sampler2D SCREEN_TEXTURE: hint_screen_texture, filter_linear_mipmap;
uniform sampler2D noise: repeat_enable, filter_nearest;
uniform float speed : hint_range(0.05, 0.5) = 0.1;
uniform float strength : hint_range(0.005, 0.5) = 0.1;
void fragment() {
float noise_value = texture(noise,UV + TIME * speed).r;
COLOR = texture(SCREEN_TEXTURE, SCREEN_UV - (strength / 2.0) + vec2(noise_value) * strength);
}
Great tutorial, but do you know how to make it pixel perfect so it doesn't smudge? I am trying to make an effect similar to the SNES Donkey Kong Country water levels.
Great video :)
Thank you for this video, it helped me a lot!, well explained!
This is awesome! You’re very good at explaining things :) thanks!
cool scene in the beginning. I'm curious how did you do the reflection?
is it screen reading or is it essentially a flipped copy of the player node?
A flipped copy of the player sprites!
damned i thought you would show ho to create the water rings while moving in water. Thats one of my problems at i cant go over with :)
It's just a Particles2D node that follows the players position using physics_process. It's emitting when the player is moving, not emitting when the player is still!
How would I apply this to a 3D plane (via a Mesh Instance 3D) - is the process similar or are there some gotchas?
Great video, it works perfectly but looks very weird when I tried using it for my player when he steps in a pond, please help 🥺
Has anything changed recently? I can't get it working :/ It stops working when I add time. Thanks regardless!
i have just tried sin or cos-ing the TIME think that was the problem
do u have this for godot 4.2?