diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-11-19 15:49:30 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-19 15:49:30 +0100 |
commit | efb3165e3d52c605f46976923bb49ed55aa598e2 (patch) | |
tree | 19bc1f82ca33bb7474b3f1558fe88b60592e39e3 /src/video_core | |
parent | shader_recompiler: Fix spelling of "derivate" (#12067) (diff) | |
parent | Buffer Cache: Eliminate clears on Indirect buffers (diff) | |
download | yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar.gz yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar.bz2 yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar.lz yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar.xz yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.tar.zst yuzu-efb3165e3d52c605f46976923bb49ed55aa598e2.zip |
Diffstat (limited to 'src/video_core')
-rw-r--r-- | src/video_core/buffer_cache/buffer_cache.h | 5 | ||||
-rw-r--r-- | src/video_core/engines/maxwell_3d.cpp | 2 |
2 files changed, 1 insertions, 6 deletions
diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 081a574e8..f5b10411b 100644 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h @@ -1192,11 +1192,6 @@ void BufferCache<P>::UpdateDrawIndirect() { .size = static_cast<u32>(size), .buffer_id = FindBuffer(*cpu_addr, static_cast<u32>(size)), }; - VAddr cpu_addr_start = Common::AlignDown(*cpu_addr, 64); - VAddr cpu_addr_end = Common::AlignUp(*cpu_addr + size, 64); - IntervalType interval{cpu_addr_start, cpu_addr_end}; - ClearDownload(interval); - common_ranges.subtract(interval); }; if (current_draw_indirect->include_count) { update(current_draw_indirect->count_start_address, sizeof(u32), diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp index 32d767d85..592c28ba3 100644 --- a/src/video_core/engines/maxwell_3d.cpp +++ b/src/video_core/engines/maxwell_3d.cpp @@ -268,7 +268,7 @@ size_t Maxwell3D::EstimateIndexBufferSize() { std::numeric_limits<u32>::max()}; const size_t byte_size = regs.index_buffer.FormatSizeInBytes(); const size_t log2_byte_size = Common::Log2Ceil64(byte_size); - const size_t cap{GetMaxCurrentVertices() * 3 * byte_size}; + const size_t cap{GetMaxCurrentVertices() * 4 * byte_size}; const size_t lower_cap = std::min<size_t>(static_cast<size_t>(end_address - start_address), cap); return std::min<size_t>( |