-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDistortionMap.glsl
More file actions
40 lines (33 loc) · 1.03 KB
/
DistortionMap.glsl
File metadata and controls
40 lines (33 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Author: Max Lepkowski
// Title: Flow
#ifdef GL_ES
precision mediump float;
#endif
#define PI 3.14159265359
uniform vec2 u_resolution;
// uniform vec2 u_mouse;
// uniform float u_time;
uniform sampler2D u_camera;
uniform vec2 u_cameraResolution;
uniform sampler2D u_flowmap;
uniform vec2 u_flowmapResolution;
uniform float u_distortionStrength;
void main()
{
vec2 pCoord = gl_FragCoord.xy;
// pCoord.y = u_resolution.y - gl_FragCoord.y;
pCoord = u_resolution - gl_FragCoord.xy;
vec2 st = pCoord.xy / u_resolution.xy;
vec4 color = vec4(0.);
vec4 flowSample = (texture(u_flowmap, st) - 0.5) * 0.5 * u_distortionStrength;
// flowSample *= step( 0.3, length(flowSample) );
vec2 coord = st + flowSample.xy;
// vec2 coord2 = st - flowSample.xy;
vec4 imgSample = texture(u_camera, coord) + flowSample * 0.5;
// vec4 imgSample2 = texture(u_camera, coord2);
// color = flowSample;
color.rgba = imgSample.rgba;
// color.rb = imgSample.rb;
// color.g = imgSample2.g;
gl_FragColor = color;
}