diff options
Diffstat (limited to 'src/libjin/graphics/shaders/je_base.shader.h')
-rw-r--r-- | src/libjin/graphics/shaders/je_base.shader.h | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/src/libjin/graphics/shaders/je_base.shader.h b/src/libjin/graphics/shaders/je_base.shader.h deleted file mode 100644 index 9fed6a1..0000000 --- a/src/libjin/graphics/shaders/je_base.shader.h +++ /dev/null @@ -1,77 +0,0 @@ -#ifndef __JE_BASE_SHADER_H__ -#define __JE_BASE_SHADER_H__ - -#include "../../common/je_string.h" - -////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - -static const JinEngine::String SHADER_PROJECTION_MATRIX = "jin_ProjectionMatrix"; -static const JinEngine::String SHADER_MODELVIEW_MATRIX = "jin_ModelViewMatrix"; -static const JinEngine::String SHADER_MAIN_TEXTURE = "jin_MainTexture"; -static const JinEngine::String SHADER_VERTEX_COORDS = "jin_VertexCoords"; -static const JinEngine::String SHADER_TEXTURE_COORDS = "jin_TextureCoords"; -static const JinEngine::String SHADER_VERSION = "#version 130 core \n"; -static const JinEngine::String SHADER_COMMON = R"( -#define Number float -#define Texture sampler2D -#define Canvas sampler2D -#define Color vec4 -#define Vec2 vec2 -#define Vec3 vec3 -#define Vec4 vec4 - -#define texel texture2D - -struct Vertex -{ - vec2 xy; - vec2 uv; -}; -)"; - -////////////////////////////////////////////////////////////////////////////////////////////////////////////////// - -static JinEngine::String formatVertexShader(const JinEngine::String& vert) -{ - static JinEngine::String vert_part1 = - SHADER_VERSION + - SHADER_COMMON + - "uniform mat4 " + SHADER_PROJECTION_MATRIX + ";\n" - "uniform mat4 " + SHADER_MODELVIEW_MATRIX + ";\n" - "in vec2 " + SHADER_VERTEX_COORDS + ";\n" - "in vec2 " + SHADER_TEXTURE_COORDS + ";\n" - "out vec4 jin_Color; \n" - "out vec2 jin_XY; \n" - "out vec2 jin_UV; \n"; - static JinEngine::String vert_part2 = - "void main()\n" - "{\n" - " vec4 v = " + SHADER_MODELVIEW_MATRIX + " * vec4(" + SHADER_VERTEX_COORDS + ", 0, 1.0);\n" - " Vertex _v = vert(Vertex(v.xy, " + SHADER_TEXTURE_COORDS + "));\n" - " gl_Position = " + SHADER_PROJECTION_MATRIX + " * vec4(_v.xy, 0, 1.0f);\n" - " jin_Color = gl_Color; \n" - " jin_XY = _v.xy; \n" - " jin_UV = _v.uv; \n" - "}"; - return vert_part1 + vert + vert_part2; -} - -static JinEngine::String formatFragmentShader(const JinEngine::String& frag) -{ - static JinEngine::String frag_part1 = - SHADER_VERSION + - SHADER_COMMON + - "uniform Texture " + SHADER_MAIN_TEXTURE + "; \n" - "in vec4 jin_Color; \n" - "in vec2 jin_XY; \n" - "in vec2 jin_UV; \n" - "out vec4 jin_OutColor; \n"; - static JinEngine::String frag_part2 = - "void main() \n" - "{\n" - " jin_OutColor = frag(jin_Color, " + SHADER_MAIN_TEXTURE + ", Vertex(jin_XY, jin_UV));\n" - "}\n"; - return frag_part1 + frag + frag_part2; -} - -#endif // __JE_BASE_SHADER_H__
\ No newline at end of file |