From 56070f31e4e2b240bc92b4f221128d17dfe39e1f Mon Sep 17 00:00:00 2001 From: Rakarake Date: Mon, 8 Dec 2025 16:24:10 +0100 Subject: [PATCH] mrog --- fragment.glsl | 3 +++ main.c | 41 ++++++++++++++++++++++------------------- 2 files changed, 25 insertions(+), 19 deletions(-) create mode 100644 fragment.glsl diff --git a/fragment.glsl b/fragment.glsl new file mode 100644 index 0000000..59aa912 --- /dev/null +++ b/fragment.glsl @@ -0,0 +1,3 @@ +void main() { + gl_FragColor = vec4(1.0,0.0,1.0,1.0); +} diff --git a/main.c b/main.c index 1fde8b2..5656bb3 100644 --- a/main.c +++ b/main.c @@ -1,5 +1,8 @@ +#define GL_GLEXT_PROTOTYPES + #include #include +#include #include float tanf(float in) { @@ -32,13 +35,6 @@ void perspective(float fovY, float aspect, float zNear, float zFar, float* matri void drawCube() { glBegin(GL_QUADS); - // Front - glColor3f(1, 0, 0); - glVertex3f(-1, -1, 1); - glVertex3f( 1, -1, 1); - glVertex3f( 1, 1, 1); - glVertex3f(-1, 1, 1); - // Back glColor3f(0, 1, 0); glVertex3f(-1, -1, -1); @@ -84,6 +80,15 @@ void checkGlError() { } } +const char *vertex_shader_source = ""; + +GLuint create_shader() { + GLuint vshader = glCreateShader(GL_VERTEX_SHADER); + glShaderSource(vshader, 1, &vertex_shader_source, NULL); // vertex_shader_source is a GLchar* containing glsl shader source code + glCompileShader(vshader); + return vshader; +} + int main() { printf("Good Morning 🍵\n"); SDL_Init(SDL_INIT_VIDEO); @@ -117,23 +122,21 @@ int main() { glViewport(0, 0, 800, 600); glClearColor(0.1f, 0.1f, 0.1f, 1.0f); // Dark gray background glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - glMatrixMode(GL_PROJECTION); - glLoadIdentity(); - float proj[16]; - perspective(60.0f, 800.0f / 600.0f, 1.0f, 100.0f, proj); - glLoadMatrixf(proj); + //drawCube(); + // Front + glBegin(GL_QUADS); + glColor3f(1, 0, 0); + glVertex2f(-1, -1); + glVertex2f(-1, 1); + glVertex2f( 1, 1); + glVertex2f( 1, -1); + glEnd(); - glMatrixMode(GL_MODELVIEW); - glLoadIdentity(); - glTranslatef(0.0f, 0.0f, -5.0f); - glRotatef(angle, 1.0f, 1.0f, 0.0f); - - drawCube(); SDL_GL_SwapWindow(window); angle += 0.5; } checkGlError(); } +