From 05ebedc397432f054cdc367d35f86fd610fbfee6 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 6 Sep 2018 09:43:47 +0800 Subject: *update --- src/libjin/Graphics/base.shader.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 src/libjin/Graphics/base.shader.h (limited to 'src/libjin/Graphics/base.shader.h') diff --git a/src/libjin/Graphics/base.shader.h b/src/libjin/Graphics/base.shader.h new file mode 100644 index 0000000..6efb710 --- /dev/null +++ b/src/libjin/Graphics/base.shader.h @@ -0,0 +1,26 @@ + +const static char* default_tex = "_tex0_"; + +const static char* base_shader = R"( +#define number float +#define Texture sampler2D +#define Canvas sampler2D +#define Color vec4 +#define Texel texture2D +#define extern uniform + +extern Texture %s; +%s +void main() +{ + gl_FragColor = effect(gl_Color, %s, gl_TexCoord[0].xy, gl_FragCoord.xy); +} +)"; +#define formatShader(buf, program)\ + sprintf(buf, base_shader, default_tex, program, default_tex) +/* + * https://stackoverflow.com/questions/10868958/what-does-sampler2d-store + * The sampler2D is bound to a texture unit. The glUniform call binds it to texture + * unit zero. The glActiveTexture call is only needed if you are going to use multiple + * texture units (because GL_TEXTURE0 is the default anyway). +*/ \ No newline at end of file -- cgit v1.1-26-g67d0