From 711fcdc1fbcdcbe213bbf570fe133eb5ef63d96e Mon Sep 17 00:00:00 2001 From: Hunter Kvalevog Date: Sat, 18 Apr 2026 13:46:50 -0500 Subject: ffmpeg-shadertoy: Embed GLSL shaders --- ffmpeg-shadertoy/fs1.glsl | 9 -------- ffmpeg-shadertoy/fs2.glsl | 11 ---------- ffmpeg-shadertoy/main.c | 52 ++++++++++++++++++++++++++++++----------------- ffmpeg-shadertoy/vs.glsl | 9 -------- 4 files changed, 33 insertions(+), 48 deletions(-) delete mode 100644 ffmpeg-shadertoy/fs1.glsl delete mode 100644 ffmpeg-shadertoy/fs2.glsl delete mode 100644 ffmpeg-shadertoy/vs.glsl diff --git a/ffmpeg-shadertoy/fs1.glsl b/ffmpeg-shadertoy/fs1.glsl deleted file mode 100644 index 837e270..0000000 --- a/ffmpeg-shadertoy/fs1.glsl +++ /dev/null @@ -1,9 +0,0 @@ -#version 330 core - -// https://www.shadertoy.com/howto#q1 - -uniform vec4 iMouse; -uniform vec3 iResolution; -uniform float iTime; - -// keep the line break below diff --git a/ffmpeg-shadertoy/fs2.glsl b/ffmpeg-shadertoy/fs2.glsl deleted file mode 100644 index ebdc9ec..0000000 --- a/ffmpeg-shadertoy/fs2.glsl +++ /dev/null @@ -1,11 +0,0 @@ - -// keep the line break above - -out vec4 f_color; - -void main() -{ - vec4 color; - mainImage(color, gl_FragCoord.xy); - f_color = color; -} diff --git a/ffmpeg-shadertoy/main.c b/ffmpeg-shadertoy/main.c index a7c450b..30d06ce 100644 --- a/ffmpeg-shadertoy/main.c +++ b/ffmpeg-shadertoy/main.c @@ -278,11 +278,38 @@ int main(int argc, char* argv[]) GL(glEnableVertexAttribArray(0)); GL(glEnableVertexAttribArray(1)); - const char* vs_src = SDL_LoadFile("vs.glsl", NULL); - if (!vs_src) { - fprintf(stderr, "Failed to load vertex shader: %s\n", SDL_GetError()); - return EXIT_FAILURE; - } +#define GLSL(_X) "#version 330 core\n" #_X + const char* vs_src = GLSL( + layout (location = 0) in vec3 p; + layout (location = 1) in vec2 t; + + void main() + { + gl_Position = vec4(p, 1.0f); + } + ); + const char* fs_src1 = GLSL( + // https://www.shadertoy.com/howto#q1 + + uniform vec4 iMouse; + uniform vec3 iResolution; + uniform float iTime; + + out vec4 f_color; + + void mainImage(out vec4, vec2); + + void main() + { + vec4 color; + mainImage(color, gl_FragCoord.xy); + f_color = color; + } + + // keep the line break below + + ); +#undef GLSL GLuint vs = GL(glCreateShader(GL_VERTEX_SHADER)); GL(glShaderSource(vs, 1, &vs_src, NULL)); @@ -296,32 +323,19 @@ int main(int argc, char* argv[]) return EXIT_FAILURE; } - const char* fs_src1 = SDL_LoadFile("fs1.glsl", NULL); - if (!fs_src1) { - fprintf(stderr, "Failed to load fragment shader: %s\n", SDL_GetError()); - return EXIT_FAILURE; - } - const char* fs_src2 = SDL_LoadFile(a_src, NULL); if (!fs_src2) { fprintf(stderr, "Failed to load source shader: %s\n", SDL_GetError()); return EXIT_FAILURE; } - const char* fs_src3 = SDL_LoadFile("fs2.glsl", NULL); - if (!fs_src3) { - fprintf(stderr, "Failed to load fragment shader: %s\n", SDL_GetError()); - return EXIT_FAILURE; - } - const char* fs_src[] = { fs_src1, fs_src2, - fs_src3, }; GLuint fs = GL(glCreateShader(GL_FRAGMENT_SHADER)); - GL(glShaderSource(fs, 3, fs_src, NULL)); + GL(glShaderSource(fs, 2, fs_src, NULL)); GL(glCompileShader(fs)); GLint fs_status = 0; GL(glGetShaderiv(fs, GL_COMPILE_STATUS, &fs_status)); diff --git a/ffmpeg-shadertoy/vs.glsl b/ffmpeg-shadertoy/vs.glsl deleted file mode 100644 index 57bcc37..0000000 --- a/ffmpeg-shadertoy/vs.glsl +++ /dev/null @@ -1,9 +0,0 @@ -#version 330 core - -layout (location = 0) in vec3 p; -layout (location = 1) in vec2 t; - -void main() -{ - gl_Position = vec4(p, 1.0f); -} -- cgit v1.2.3