diff options
| author | Ivan Molodetskikh <yalterz@gmail.com> | 2024-04-22 19:05:11 +0400 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2024-04-22 19:05:11 +0400 |
| commit | 1681ed16d91757d98dc3eb653b970e706ff84b78 (patch) | |
| tree | b7822a2b49ecc4f9824b28c3b6c93d50ac2e01eb /src/render_helpers/shaders/resize.frag | |
| parent | d4bed7088441f76eb92d35e53c3af4301c6e01d3 (diff) | |
| download | niri-1681ed16d91757d98dc3eb653b970e706ff84b78.tar.gz niri-1681ed16d91757d98dc3eb653b970e706ff84b78.tar.bz2 niri-1681ed16d91757d98dc3eb653b970e706ff84b78.zip | |
Change custom-shader to a prelude-epilogue system
Diffstat (limited to 'src/render_helpers/shaders/resize.frag')
| -rw-r--r-- | src/render_helpers/shaders/resize.frag | 43 |
1 files changed, 6 insertions, 37 deletions
diff --git a/src/render_helpers/shaders/resize.frag b/src/render_helpers/shaders/resize.frag index d77b9163..d1ed30fe 100644 --- a/src/render_helpers/shaders/resize.frag +++ b/src/render_helpers/shaders/resize.frag @@ -1,41 +1,10 @@ -#version 100 +vec4 resize_color(vec3 coords_curr_geo, vec3 size_curr_geo) { + vec3 coords_tex_prev = niri_geo_to_tex_prev * coords_curr_geo; + vec4 color_prev = texture2D(niri_tex_prev, coords_tex_prev.st); -precision mediump float; + vec3 coords_tex_next = niri_geo_to_tex_next * coords_curr_geo; + vec4 color_next = texture2D(niri_tex_next, coords_tex_next.st); -varying vec2 v_coords; -uniform vec2 size; - -uniform mat3 input_to_curr_geo; -uniform mat3 input_to_prev_geo; -uniform mat3 input_to_next_geo; - -uniform sampler2D tex_prev; -uniform mat3 geo_to_tex_prev; - -uniform sampler2D tex_next; -uniform mat3 geo_to_tex_next; - -uniform float progress; -uniform float clamped_progress; - -uniform float alpha; - -vec4 crossfade() { - vec3 coords_curr_geo = input_to_curr_geo * vec3(v_coords, 1.0); - - vec3 coords_tex_prev = geo_to_tex_prev * coords_curr_geo; - vec4 color_prev = texture2D(tex_prev, vec2(coords_tex_prev)); - - vec3 coords_tex_next = geo_to_tex_next * coords_curr_geo; - vec4 color_next = texture2D(tex_next, vec2(coords_tex_next)); - - vec4 color = mix(color_prev, color_next, clamped_progress); + vec4 color = mix(color_prev, color_next, niri_clamped_progress); return color; } - -void main() { - vec4 color = crossfade(); - - gl_FragColor = color * alpha; -} - |
