diff --git a/crt/shaders/crt-potato/shader-files/crt-potato.glsl b/crt/shaders/crt-potato/shader-files/crt-potato.glsl deleted file mode 100644 index 4783533..0000000 --- a/crt/shaders/crt-potato/shader-files/crt-potato.glsl +++ /dev/null @@ -1,141 +0,0 @@ -/////////////////////////////////////////////////////////////////////////// -// // -// Copyright (C) 2017 - Brad Parker // -// // -// This program is free software: you can redistribute it and/or modify // -// it under the terms of the GNU General Public License as published by // -// the Free Software Foundation, either version 3 of the License, or // -// (at your option) any later version. // -// // -// This program is distributed in the hope that it will be useful, // -// but WITHOUT ANY WARRANTY; without even the implied warranty of // -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // -// GNU General Public License for more details. // -// // -// You should have received a copy of the GNU General Public License // -// along with this program. If not, see . // -// // -/////////////////////////////////////////////////////////////////////////// - -#if defined(VERTEX) -//////////////////////////////////////////////////////////////////////////////// -// Vertex shader // -//////////////////////////////////////////////////////////////////////////////// - -#if __VERSION__ >= 130 -#define COMPAT_VARYING out -#define COMPAT_ATTRIBUTE in -#define COMPAT_TEXTURE texture -#else -#define COMPAT_VARYING varying -#define COMPAT_ATTRIBUTE attribute -#define COMPAT_TEXTURE texture2D -#endif - -#ifdef GL_ES -#define COMPAT_PRECISION mediump -#else -#define COMPAT_PRECISION -#endif - -COMPAT_ATTRIBUTE vec4 VertexCoord; -COMPAT_ATTRIBUTE vec4 COLOR; -COMPAT_ATTRIBUTE vec4 TexCoord; -COMPAT_VARYING vec4 COL0; -COMPAT_VARYING vec4 TEX0; -COMPAT_VARYING vec2 dot_size; -COMPAT_VARYING vec2 one_texel; - -uniform mat4 MVPMatrix; -uniform COMPAT_PRECISION int FrameDirection; -uniform COMPAT_PRECISION int FrameCount; -uniform COMPAT_PRECISION vec2 OutputSize; -uniform COMPAT_PRECISION vec2 TextureSize; -uniform COMPAT_PRECISION vec2 InputSize; - -//////////////////////////////////////////////////////////////////////////////// -// Vertex definitions // -//////////////////////////////////////////////////////////////////////////////// - -#define vTexCoord TEX0.xy -#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize -#define outsize vec4(OutputSize, 1.0 / OutputSize) - -// Largest integer scale of input video that will fit in the current output (y axis would typically be limiting on widescreens) -#define video_scale floor(outsize.y * SourceSize.w) - -// Size of the scaled video -//#define scaled_video_out (SourceSize.xy * vec2(video_scale)) - -//it's... half a pixel -#define half_pixel (vec2(0.5) * outsize.zw) - -void main() -{ - vec2 scaled_video_out = (InputSize.xy * vec2(video_scale)); - // Remaps position to integer scaled output - gl_Position = MVPMatrix * VertexCoord;// / vec4( vec2(outsize.xy / scaled_video_out), 1.0, 1.0 ); - TEX0.xy = TexCoord.xy;// + vec2(0.0, half_pixel); - dot_size = SourceSize.zw; - one_texel = 1.0 / (SourceSize.xy * video_scale); -} - -#elif defined(FRAGMENT) -//////////////////////////////////////////////////////////////////////////////// -// Fragment shader // -//////////////////////////////////////////////////////////////////////////////// - -#if __VERSION__ >= 130 -#define COMPAT_VARYING in -#define COMPAT_TEXTURE texture -out vec4 FragColor; -#else -#define COMPAT_VARYING varying -#define FragColor gl_FragColor -#define COMPAT_TEXTURE texture2D -#endif - -#ifdef GL_ES -#ifdef GL_FRAGMENT_PRECISION_HIGH -precision highp float; -#else -precision mediump float; -#endif -#define COMPAT_PRECISION mediump -#else -#define COMPAT_PRECISION -#endif - -uniform COMPAT_PRECISION int FrameDirection; -uniform COMPAT_PRECISION int FrameCount; -uniform COMPAT_PRECISION vec2 OutputSize; -uniform COMPAT_PRECISION vec2 TextureSize; -uniform COMPAT_PRECISION vec2 InputSize; -uniform sampler2D Texture; -uniform sampler2D MASK; - -COMPAT_VARYING vec4 TEX0; -COMPAT_VARYING vec2 dot_size; -COMPAT_VARYING vec2 one_texel; - -// compatibility #defines -#define Source Texture -#define vTexCoord TEX0.xy - -#define SourceSize vec4(TextureSize, 1.0 / TextureSize) //either TextureSize or InputSize -#define outsize vec4(OutputSize, 1.0 / OutputSize) - -#define maskSize vec2(2., floor(outsize.y / InputSize.y + 0.000001)) - -//////////////////////////////////////////////////////////////////////////////// -//fragment definitions // -//////////////////////////////////////////////////////////////////////////////// - -#define curr_rgb COMPAT_TEXTURE(Source, vTexCoord) -#define mask_rgb COMPAT_TEXTURE(MASK, fract(gl_FragCoord.xy / maskSize)) - -void main() -{ - FragColor = mask_rgb * curr_rgb; -} -#endif