From 15cc550bf9d952b2d45c90239508733152487cad Mon Sep 17 00:00:00 2001 From: k Date: Thu, 19 Dec 2024 18:10:33 -0500 Subject: [PATCH] RGB Pulse triangle --- headers/shapes.h | 9 +++++++++ src/main.cpp | 4 +++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/headers/shapes.h b/headers/shapes.h index e97b32d..b1d414f 100644 --- a/headers/shapes.h +++ b/headers/shapes.h @@ -54,3 +54,12 @@ const char *rgbFragmentShaderSource = "#version 330 core\n" "{\n" " FragColor = vec4(color, 1.0);\n" "}\0"; + +const char *rgbPulseFragmentShaderSource = "#version 330 core\n" + "out vec4 FragColor;\n" + "in vec3 color;\n" + "uniform float u_time;" + "void main()\n" + "{\n" + " FragColor = vec4(color,0.0)*(sin(u_time)/2.0+0.5);\n" + "}\0"; diff --git a/src/main.cpp b/src/main.cpp index 38778df..48041cd 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -53,7 +53,7 @@ int main(void) { */ unsigned int shaderProgram = - shaderProgramCMPL(rgbVertexShaderSource, rgbFragmentShaderSource); + shaderProgramCMPL(rgbVertexShaderSource, rgbPulseFragmentShaderSource); glUseProgram(shaderProgram); while (!glfwWindowShouldClose(window)) { @@ -63,6 +63,8 @@ int main(void) { glClear(GL_COLOR_BUFFER_BIT); glUseProgram(shaderProgram); + GLint utime = glGetUniformLocation(shaderProgram, "u_time"); + glUniform1f(utime, glfwGetTime()); glBindVertexArray(VAO); //glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0);