diff options
| author | bunnei <bunneidev@gmail.com> | 2020-06-09 21:52:15 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-09 21:52:15 -0400 |
| commit | 316cf3a25153af13390f4ca72c23b0227f775ebe (patch) | |
| tree | 2940fc6a036c7b1f5ecc13aca6248ba657ed48f4 /src/video_core/texture_cache/surface_base.cpp | |
| parent | 9c5239f6950be740c59ca6273e5d10d585d7e579 (diff) | |
| parent | d109c27594b0e8122dd469932b47db22340ce352 (diff) | |
Merge pull request #4027 from ReinUsesLisp/3d-slices
texture_cache: Implement rendering to 3D textures
Diffstat (limited to 'src/video_core/texture_cache/surface_base.cpp')
| -rw-r--r-- | src/video_core/texture_cache/surface_base.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/video_core/texture_cache/surface_base.cpp b/src/video_core/texture_cache/surface_base.cpp index 715f39d0dc..94d3a6ae53 100644 --- a/src/video_core/texture_cache/surface_base.cpp +++ b/src/video_core/texture_cache/surface_base.cpp @@ -248,12 +248,11 @@ void SurfaceBaseImpl::FlushBuffer(Tegra::MemoryManager& memory_manager, // Use an extra temporal buffer auto& tmp_buffer = staging_cache.GetBuffer(1); - // Special case for 3D Texture Segments - const bool must_read_current_data = - params.block_depth > 0 && params.target == VideoCore::Surface::SurfaceTarget::Texture2D; tmp_buffer.resize(guest_memory_size); host_ptr = tmp_buffer.data(); - if (must_read_current_data) { + + if (params.target == SurfaceTarget::Texture3D) { + // Special case for 3D texture segments memory_manager.ReadBlockUnsafe(gpu_addr, host_ptr, guest_memory_size); } |
