X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=shaders%2Fblitcolour.h;h=1bd3349497bd7b75f7ce986892e024e6e1fecda9;hb=93790b71d3a89724255dc73239e38c08ad4bbac7;hp=68880e3e89e24e862939295d569fcb899f8d5646;hpb=f7db507815e2822d971031c30f25e02b45e9c914;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/shaders/blitcolour.h b/shaders/blitcolour.h index 68880e3..1bd3349 100644 --- a/shaders/blitcolour.h +++ b/shaders/blitcolour.h @@ -1,46 +1,18 @@ -#ifndef SHADER_blitcolour_H -#define SHADER_blitcolour_H -static void shader_blitcolour_link(void); -static void shader_blitcolour_register(void); -static struct vg_shader _shader_blitcolour = { - .name = "blitcolour", - .link = shader_blitcolour_link, - .vs = +#pragma once +#include "vg/vg_engine.h" +extern struct vg_shader _shader_blitcolour; +extern GLuint _uniform_blitcolour_uInverseRatio; +extern GLuint _uniform_blitcolour_uColour; +static inline void shader_blitcolour_uInverseRatio(v2f v) { -.static_src = -"layout (location=0) in vec2 a_co;\n" -"out vec2 aUv;\n" -"\n" -"void main()\n" -"{\n" -" gl_Position = vec4(a_co*2.0-1.0,0.0,1.0);\n" -" aUv = a_co;\n" -"}\n" -""}, - .fs = + glUniform2fv(_uniform_blitcolour_uInverseRatio,1,v); +} +static inline void shader_blitcolour_uColour(v4f v) { -.static_src = -"out vec4 FragColor;\n" -"uniform vec4 uColour;\n" -"\n" -"in vec2 aUv;\n" -"\n" -"void main()\n" -"{\n" -" FragColor = uColour;\n" -"}\n" -""}, -}; - -static GLuint _uniform_blitcolour_uColour; -static void shader_blitcolour_uColour(v4f v){ glUniform4fv(_uniform_blitcolour_uColour,1,v); } -static void shader_blitcolour_register(void){ - vg_shader_register( &_shader_blitcolour ); -} -static void shader_blitcolour_use(void){ glUseProgram(_shader_blitcolour.id); } -static void shader_blitcolour_link(void){ - _uniform_blitcolour_uColour = glGetUniformLocation( _shader_blitcolour.id, "uColour" ); +static inline void shader_blitcolour_use(void); +static inline void shader_blitcolour_use(void) +{ + glUseProgram(_shader_blitcolour.id); } -#endif /* SHADER_blitcolour_H */