From dca1e1752bd8d6b860dc45cfc39d278b7040084a Mon Sep 17 00:00:00 2001 From: fgsfds Date: Sun, 12 May 2024 16:48:33 +0200 Subject: [PATCH] port: remove remnants of masked/blended texture support --- port/fast3d/gfx_cc.cpp | 18 -------------- port/fast3d/gfx_cc.h | 23 ++--------------- port/fast3d/gfx_opengl.cpp | 51 +------------------------------------- port/fast3d/gfx_pc.cpp | 6 ----- 4 files changed, 3 insertions(+), 95 deletions(-) diff --git a/port/fast3d/gfx_cc.cpp b/port/fast3d/gfx_cc.cpp index 066612843..6aaaa655e 100644 --- a/port/fast3d/gfx_cc.cpp +++ b/port/fast3d/gfx_cc.cpp @@ -26,10 +26,6 @@ void gfx_cc_get_features(uint64_t shader_id0, uint32_t shader_id1, struct CCFeat cc_features->used_textures[0] = false; cc_features->used_textures[1] = false; - cc_features->used_masks[0] = false; - cc_features->used_masks[1] = false; - cc_features->used_blend[0] = false; - cc_features->used_blend[1] = false; cc_features->num_inputs = 0; for (int c = 0; c < 2; c++) { @@ -60,18 +56,4 @@ void gfx_cc_get_features(uint64_t shader_id0, uint32_t shader_id1, struct CCFeat cc_features->color_alpha_same[c] = ((shader_id0 >> c * 32) & 0xffff) == ((shader_id0 >> (c * 32 + 16)) & 0xffff); } - - if (cc_features->used_textures[0] && (shader_id1 & SHADER_OPT_TEXEL0_MASK)) { - cc_features->used_masks[0] = true; - } - if (cc_features->used_textures[1] && (shader_id1 & SHADER_OPT_TEXEL1_MASK)) { - cc_features->used_masks[1] = true; - } - - if (cc_features->used_textures[0] && (shader_id1 & SHADER_OPT_TEXEL0_BLEND)) { - cc_features->used_blend[0] = true; - } - if (cc_features->used_textures[1] && (shader_id1 & SHADER_OPT_TEXEL1_BLEND)) { - cc_features->used_blend[1] = true; - } } diff --git a/port/fast3d/gfx_cc.h b/port/fast3d/gfx_cc.h index cfd00c9f6..6d51a2392 100644 --- a/port/fast3d/gfx_cc.h +++ b/port/fast3d/gfx_cc.h @@ -8,17 +8,6 @@ #include #endif -/*enum { - CC_0, - CC_TEXEL0, - CC_TEXEL1, - CC_PRIM, - CC_SHADE, - CC_ENV, - CC_TEXEL0A, - CC_LOD -};*/ - enum { SHADER_0, SHADER_INPUT_1, @@ -49,11 +38,7 @@ enum { #define SHADER_OPT_TEXEL0_CLAMP_T (1 << 9) #define SHADER_OPT_TEXEL1_CLAMP_S (1 << 10) #define SHADER_OPT_TEXEL1_CLAMP_T (1 << 11) -#define SHADER_OPT_TEXEL0_MASK (1 << 12) -#define SHADER_OPT_TEXEL1_MASK (1 << 13) -#define SHADER_OPT_TEXEL0_BLEND (1 << 14) -#define SHADER_OPT_TEXEL1_BLEND (1 << 15) -#define SHADER_OPT_BLUR (1 << 16) +#define SHADER_OPT_BLUR (1 << 12) struct ColorCombinerKey { uint64_t combine_mode; @@ -61,10 +46,8 @@ struct ColorCombinerKey { auto operator<=>(const ColorCombinerKey&) const = default; }; -#define SHADER_MAX_TEXTURES 6 +#define SHADER_MAX_TEXTURES 2 #define SHADER_FIRST_TEXTURE 0 -#define SHADER_FIRST_MASK_TEXTURE 2 -#define SHADER_FIRST_REPLACEMENT_TEXTURE 4 struct CCFeatures { uint8_t c[2][2][4]; @@ -78,8 +61,6 @@ struct CCFeatures { bool opt_grayscale; bool opt_blur; bool used_textures[2]; - bool used_masks[2]; - bool used_blend[2]; bool clamp[2][2]; int num_inputs; bool do_single[2][2]; diff --git a/port/fast3d/gfx_opengl.cpp b/port/fast3d/gfx_opengl.cpp index 86efd96bc..f486628a5 100644 --- a/port/fast3d/gfx_opengl.cpp +++ b/port/fast3d/gfx_opengl.cpp @@ -373,18 +373,6 @@ static struct ShaderProgram* gfx_opengl_create_and_load_new_shader(uint64_t shad if (cc_features.used_textures[1]) { append_line(fs_buf, &fs_len, "uniform sampler2D uTex1;"); } - if (cc_features.used_masks[0]) { - append_line(fs_buf, &fs_len, "uniform sampler2D uTexMask0;"); - } - if (cc_features.used_masks[1]) { - append_line(fs_buf, &fs_len, "uniform sampler2D uTexMask1;"); - } - if (cc_features.used_blend[0]) { - append_line(fs_buf, &fs_len, "uniform sampler2D uTexBlend0;"); - } - if (cc_features.used_blend[1]) { - append_line(fs_buf, &fs_len, "uniform sampler2D uTexBlend1;"); - } append_line(fs_buf, &fs_len, "uniform int frame_count;"); append_line(fs_buf, &fs_len, "uniform float noise_scale;"); @@ -473,24 +461,7 @@ static struct ShaderProgram* gfx_opengl_create_and_load_new_shader(uint64_t shad } } - fs_len += sprintf(fs_buf + fs_len, "vec4 texVal%d = hookTexture2D(uTex%d, vTexCoordAdj%d, texSize%d);\n", i, - i, i, i); - if (cc_features.used_masks[i]) { - fs_len += sprintf(fs_buf + fs_len, "vec2 maskSize%d = textureSize(uTexMask%d, 0);\n", i, i); - - fs_len += - sprintf(fs_buf + fs_len, - "vec4 maskVal%d = hookTexture2D(uTexMask%d, vTexCoordAdj%d, maskSize%d);\n", i, i, i, i); - if (cc_features.used_blend[i]) { - fs_len += sprintf(fs_buf + fs_len, - "vec4 blendVal%d = hookTexture2D(uTexBlend%d, vTexCoordAdj%d, texSize%d);\n", i, - i, i, i); - } else { - fs_len += sprintf(fs_buf + fs_len, "vec4 blendVal%d = vec4(0, 0, 0, 0);\n", i); - } - - fs_len += sprintf(fs_buf + fs_len, "texVal%d = mix(texVal%d, blendVal%d, maskVal%d.a);\n", i, i, i, i); - } + fs_len += sprintf(fs_buf + fs_len, "vec4 texVal%d = hookTexture2D(uTex%d, vTexCoordAdj%d, texSize%d);\n", i, i, i, i); } } @@ -653,10 +624,6 @@ static struct ShaderProgram* gfx_opengl_create_and_load_new_shader(uint64_t shad prg->num_inputs = cc_features.num_inputs; prg->used_textures[0] = cc_features.used_textures[0]; prg->used_textures[1] = cc_features.used_textures[1]; - prg->used_textures[2] = cc_features.used_masks[0]; - prg->used_textures[3] = cc_features.used_masks[1]; - prg->used_textures[4] = cc_features.used_blend[0]; - prg->used_textures[5] = cc_features.used_blend[1]; prg->num_floats = num_floats; prg->num_attribs = cnt; @@ -670,22 +637,6 @@ static struct ShaderProgram* gfx_opengl_create_and_load_new_shader(uint64_t shad GLint sampler_location = glGetUniformLocation(shader_program, "uTex1"); glUniform1i(sampler_location, 1); } - if (cc_features.used_masks[0]) { - GLint sampler_location = glGetUniformLocation(shader_program, "uTexMask0"); - glUniform1i(sampler_location, 2); - } - if (cc_features.used_masks[1]) { - GLint sampler_location = glGetUniformLocation(shader_program, "uTexMask1"); - glUniform1i(sampler_location, 3); - } - if (cc_features.used_blend[0]) { - GLint sampler_location = glGetUniformLocation(shader_program, "uTexBlend0"); - glUniform1i(sampler_location, 4); - } - if (cc_features.used_blend[1]) { - GLint sampler_location = glGetUniformLocation(shader_program, "uTexBlend1"); - glUniform1i(sampler_location, 5); - } prg->frame_count_location = glGetUniformLocation(shader_program, "frame_count"); prg->noise_scale_location = glGetUniformLocation(shader_program, "noise_scale"); diff --git a/port/fast3d/gfx_pc.cpp b/port/fast3d/gfx_pc.cpp index cdd0d3e3c..6ddb8e168 100644 --- a/port/fast3d/gfx_pc.cpp +++ b/port/fast3d/gfx_pc.cpp @@ -154,8 +154,6 @@ struct LoadedTexture { uint32_t line_size_bytes; uint32_t tex_flags; struct RawTexMetadata raw_tex_metadata; - bool masked; - bool blended; }; static struct RDP { @@ -1937,8 +1935,6 @@ static void gfx_dp_load_block(uint8_t tile, uint32_t uls, uint32_t ult, uint32_t loaded_texture.tex_flags = rdp.texture_to_load.tex_flags; loaded_texture.raw_tex_metadata = rdp.texture_to_load.raw_tex_metadata; loaded_texture.addr = rdp.texture_to_load.addr; - loaded_texture.masked = false; - loaded_texture.blended = false; rdp.textures_changed[0] = rdp.textures_changed[1] = true; } @@ -1979,8 +1975,6 @@ static void gfx_dp_load_tile(uint8_t tile, uint32_t uls, uint32_t ult, uint32_t loaded_texture.tex_flags = rdp.texture_to_load.tex_flags; loaded_texture.raw_tex_metadata = rdp.texture_to_load.raw_tex_metadata; loaded_texture.addr = rdp.texture_to_load.addr + start_offset_bytes; - loaded_texture.masked = false; - loaded_texture.blended = false; rdp.texture_tile[tile].uls = uls; rdp.texture_tile[tile].ult = ult;