diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-01-29 18:27:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-29 18:27:41 +0100 |
commit | 3aab57452153c3dfa8591809bc09797da03b44dc (patch) | |
tree | fa23d1df540db3206e780fe90b0edf4a94c773f9 /src/shader_recompiler | |
parent | Merge pull request #9698 from ameerj/texture-pass-handle (diff) | |
parent | texture_pass: Fix texture descriptors comparisons (diff) | |
download | yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar.gz yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar.bz2 yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar.lz yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar.xz yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.tar.zst yuzu-3aab57452153c3dfa8591809bc09797da03b44dc.zip |
Diffstat (limited to 'src/shader_recompiler')
-rw-r--r-- | src/shader_recompiler/ir_opt/texture_pass.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/shader_recompiler/ir_opt/texture_pass.cpp b/src/shader_recompiler/ir_opt/texture_pass.cpp index 401aeb89f..d374c976a 100644 --- a/src/shader_recompiler/ir_opt/texture_pass.cpp +++ b/src/shader_recompiler/ir_opt/texture_pass.cpp @@ -386,8 +386,10 @@ public: return Add(texture_buffer_descriptors, desc, [&desc](const auto& existing) { return desc.cbuf_index == existing.cbuf_index && desc.cbuf_offset == existing.cbuf_offset && + desc.shift_left == existing.shift_left && desc.secondary_cbuf_index == existing.secondary_cbuf_index && desc.secondary_cbuf_offset == existing.secondary_cbuf_offset && + desc.secondary_shift_left == existing.secondary_shift_left && desc.count == existing.count && desc.size_shift == existing.size_shift && desc.has_secondary == existing.has_secondary; }); @@ -405,15 +407,20 @@ public: } u32 Add(const TextureDescriptor& desc) { - return Add(texture_descriptors, desc, [&desc](const auto& existing) { + const u32 index{Add(texture_descriptors, desc, [&desc](const auto& existing) { return desc.type == existing.type && desc.is_depth == existing.is_depth && desc.has_secondary == existing.has_secondary && desc.cbuf_index == existing.cbuf_index && desc.cbuf_offset == existing.cbuf_offset && + desc.shift_left == existing.shift_left && desc.secondary_cbuf_index == existing.secondary_cbuf_index && desc.secondary_cbuf_offset == existing.secondary_cbuf_offset && + desc.secondary_shift_left == existing.secondary_shift_left && desc.count == existing.count && desc.size_shift == existing.size_shift; - }); + })}; + // TODO: Read this from TIC + texture_descriptors[index].is_multisample |= desc.is_multisample; + return index; } u32 Add(const ImageDescriptor& desc) { |