mirror of
https://github.com/RPCS3/rpcs3.git
synced 2026-03-10 07:24:54 +01:00
rsx: Track BX2 reads per-TIU to allow enabling/disabling hw remapping
This commit is contained in:
parent
34380b1ee7
commit
bf5056145e
|
|
@ -651,7 +651,7 @@ fragment_program_utils::fragment_program_metadata fragment_program_utils::analys
|
|||
case RSX_FP_OPCODE_TXB:
|
||||
case RSX_FP_OPCODE_TXL:
|
||||
result.referenced_textures_mask |= (1 << d0.tex_num);
|
||||
result.has_tex_bx2_conv |= !!d0.exp_tex;
|
||||
result.bx2_texture_reads_mask |= ((d0.exp_tex ? 1u : 0u) << d0.tex_num);
|
||||
break;
|
||||
case RSX_FP_OPCODE_PK4:
|
||||
case RSX_FP_OPCODE_UP4:
|
||||
|
|
|
|||
|
|
@ -56,10 +56,10 @@ namespace program_hash_util
|
|||
u32 program_ucode_length;
|
||||
u32 program_constants_buffer_length;
|
||||
u16 referenced_textures_mask;
|
||||
u16 bx2_texture_reads_mask;
|
||||
|
||||
bool has_pack_instructions;
|
||||
bool has_branch_instructions;
|
||||
bool has_tex_bx2_conv;
|
||||
bool is_nop_shader; // Does this affect Z-pass testing???
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -2326,7 +2326,7 @@ namespace rsx
|
|||
texture_control |= format_ex.texel_remap_control;
|
||||
texture_control |= format_ex.features << texture_control_bits::FORMAT_FEATURES_OFFSET;
|
||||
|
||||
if (current_fp_metadata.has_tex_bx2_conv)
|
||||
if (current_fp_metadata.bx2_texture_reads_mask)
|
||||
{
|
||||
const u32 remap_hi = tex.decoded_remap().shuffle_mask_bits(0xFu);
|
||||
current_fragment_program.texture_params[i].remap &= ~(0xFu << 16u);
|
||||
|
|
|
|||
Loading…
Reference in a new issue