boil.glsl
· 530 B · Text
原始文件
Playground
uniform sampler2D noise;
uniform float scale = 0.005;
uniform float TIME = 0.0;
uniform vec2 TEXTURE_PIXEL_SIZE;
vec4 effect(vec4 color, Image TEXTURE, vec2 UV, vec2 screen_coords) {
vec2 uv = UV;
vec2 noise_pixel_size = vec2(256.0);
vec2 noise_uv = UV / TEXTURE_PIXEL_SIZE / noise_pixel_size;
vec2 sample = Texel(noise, vec2(noise_uv + TIME - mod(TIME, 0.15))).rb;
vec2 rb = (sample - 0.5) * scale;
uv += rb;
color = Texel(TEXTURE, vec2(clamp(vec2(0.0, 0.0), uv, vec2(1.0,1.0))));
return color;
}
| 1 | uniform sampler2D noise; |
| 2 | uniform float scale = 0.005; |
| 3 | uniform float TIME = 0.0; |
| 4 | uniform vec2 TEXTURE_PIXEL_SIZE; |
| 5 | |
| 6 | vec4 effect(vec4 color, Image TEXTURE, vec2 UV, vec2 screen_coords) { |
| 7 | vec2 uv = UV; |
| 8 | vec2 noise_pixel_size = vec2(256.0); |
| 9 | vec2 noise_uv = UV / TEXTURE_PIXEL_SIZE / noise_pixel_size; |
| 10 | vec2 sample = Texel(noise, vec2(noise_uv + TIME - mod(TIME, 0.15))).rb; |
| 11 | vec2 rb = (sample - 0.5) * scale; |
| 12 | uv += rb; |
| 13 | color = Texel(TEXTURE, vec2(clamp(vec2(0.0, 0.0), uv, vec2(1.0,1.0)))); |
| 14 | return color; |
| 15 | } |