1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-25 01:57:47 +01:00

cleanup shader code

This commit is contained in:
FunkyFr3sh 2023-08-31 02:46:04 +02:00
parent 5fd49993c0
commit bae11e7f9f

View File

@ -94,7 +94,7 @@ static char PASSTHROUGH_FRAG_SHADER[] =
static char CATMULL_ROM_FRAG_SHADER[] = static char CATMULL_ROM_FRAG_SHADER[] =
"#version 130\n" "#version 130\n"
"out mediump vec4 FragColor;\n" "out vec4 FragColor;\n"
"uniform int FrameDirection;\n" "uniform int FrameDirection;\n"
"uniform int FrameCount;\n" "uniform int FrameCount;\n"
"uniform vec2 OutputSize;\n" "uniform vec2 OutputSize;\n"
@ -103,15 +103,11 @@ static char CATMULL_ROM_FRAG_SHADER[] =
"uniform sampler2D Texture;\n" "uniform sampler2D Texture;\n"
"in vec4 TEX0;\n" "in vec4 TEX0;\n"
"\n" "\n"
"#define Source Texture\n"
"#define vTexCoord TEX0.xy\n"
"\n"
"#define SourceSize vec4(TextureSize, 1.0 / TextureSize)\n" "#define SourceSize vec4(TextureSize, 1.0 / TextureSize)\n"
"#define outsize vec4(OutputSize, 1.0 / OutputSize)\n"
"\n" "\n"
"void main()\n" "void main()\n"
"{\n" "{\n"
" vec2 samplePos = vTexCoord * SourceSize.xy;\n" " vec2 samplePos = TEX0.xy * SourceSize.xy;\n"
" vec2 texPos1 = floor(samplePos - 0.5) + 0.5;\n" " vec2 texPos1 = floor(samplePos - 0.5) + 0.5;\n"
"\n" "\n"
" vec2 f = samplePos - texPos1;\n" " vec2 f = samplePos - texPos1;\n"
@ -140,11 +136,11 @@ static char CATMULL_ROM_FRAG_SHADER[] =
"\n" "\n"
" vec3 result = vec3(0.0f);\n" " vec3 result = vec3(0.0f);\n"
"\n" "\n"
" result += texture(Source, vec2(texPos12.x, texPos0.y)).rgb * wtm;\n" " result += texture(Texture, vec2(texPos12.x, texPos0.y)).rgb * wtm;\n"
" result += texture(Source, vec2(texPos0.x, texPos12.y)).rgb * wml;\n" " result += texture(Texture, vec2(texPos0.x, texPos12.y)).rgb * wml;\n"
" result += texture(Source, vec2(texPos12.x, texPos12.y)).rgb * wmm;\n" " result += texture(Texture, vec2(texPos12.x, texPos12.y)).rgb * wmm;\n"
" result += texture(Source, vec2(texPos3.x, texPos12.y)).rgb * wmr;\n" " result += texture(Texture, vec2(texPos3.x, texPos12.y)).rgb * wmr;\n"
" result += texture(Source, vec2(texPos12.x, texPos3.y)).rgb * wbm;\n" " result += texture(Texture, vec2(texPos12.x, texPos3.y)).rgb * wbm;\n"
"\n" "\n"
" FragColor = vec4(result * (1. / (wtm + wml + wmm + wmr + wbm)), 1.0);\n" " FragColor = vec4(result * (1. / (wtm + wml + wmm + wmr + wbm)), 1.0);\n"
"}\n"; "}\n";
@ -356,39 +352,6 @@ static char XBR_LV2_FRAG_SHADER[] =
"#define t6 TEX6\n" "#define t6 TEX6\n"
"#define t7 TEX7\n" "#define t7 TEX7\n"
"\n" "\n"
"\n"
"//#pragma parameter XBR_SCALE \"xBR Scale\" 3.0 1.0 5.0 1.0\n"
"#pragma parameter XBR_Y_WEIGHT \"Y Weight\" 48.0 0.0 100.0 1.0\n"
"#pragma parameter XBR_EQ_THRESHOLD \"Eq Threshold\" 15.0 0.0 50.0 1.0\n"
"#pragma parameter XBR_LV1_COEFFICIENT \"Lv1 Coefficient\" 0.5 0.0 30.0 0.5\n"
"#pragma parameter XBR_LV2_COEFFICIENT \"Lv2 Coefficient\" 2.0 1.0 3.0 0.1\n"
"#pragma parameter small_details \"Preserve Small Details\" 0.0 0.0 1.0 1.0\n"
"\n"
"#define mul(a,b) (b*a)\n"
"\n"
"// Uncomment just one of the three params below to choose the corner detection\n"
"//#define CORNER_A\n"
"//#define CORNER_B\n"
"#define CORNER_C\n"
"//#define CORNER_D\n"
"\n"
"#ifndef CORNER_A\n"
" #define SMOOTH_TIPS\n"
"#endif\n"
"\n"
"#define XBR_SCALE 3.0\n"
"\n"
"#define lv2_cf XBR_LV2_COEFFICIENT\n"
" \n"
"#define texCoord TEX0\n"
"#define t1 TEX1\n"
"#define t2 TEX2\n"
"#define t3 TEX3\n"
"#define t4 TEX4\n"
"#define t5 TEX5\n"
"#define t6 TEX6\n"
"#define t7 TEX7\n"
"\n"
"out vec4 FragColor;\n" "out vec4 FragColor;\n"
"uniform int FrameDirection;\n" "uniform int FrameDirection;\n"
"uniform int FrameCount;\n" "uniform int FrameCount;\n"