mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-07-12 04:35:56 +00:00
texture_cache: Don't download depth images
This commit is contained in:
parent
4238cd9fac
commit
ac430ca0d0
1 changed files with 5 additions and 8 deletions
|
@ -72,22 +72,22 @@ void TextureCache::DownloadImageMemory(ImageId image_id) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
auto& download_buffer = buffer_cache.GetUtilityBuffer(MemoryUsage::Download);
|
auto& download_buffer = buffer_cache.GetUtilityBuffer(MemoryUsage::Download);
|
||||||
const u32 download_size = image.info.size.width * image.info.size.height *
|
const u32 download_size = image.info.pitch * image.info.size.height *
|
||||||
image.info.resources.layers * (image.info.num_bits / 8);
|
image.info.resources.layers * (image.info.num_bits / 8);
|
||||||
// ASSERT(download_size == image.info.guest_size);
|
ASSERT(download_size <= image.info.guest_size);
|
||||||
const auto [download, offset] = download_buffer.Map(download_size);
|
const auto [download, offset] = download_buffer.Map(download_size);
|
||||||
download_buffer.Commit();
|
download_buffer.Commit();
|
||||||
const vk::BufferImageCopy image_download = {
|
const vk::BufferImageCopy image_download = {
|
||||||
.bufferOffset = offset,
|
.bufferOffset = offset,
|
||||||
.bufferRowLength = 0,
|
.bufferRowLength = image.info.pitch,
|
||||||
.bufferImageHeight = 0,
|
.bufferImageHeight = image.info.size.height,
|
||||||
.imageSubresource =
|
.imageSubresource =
|
||||||
{
|
{
|
||||||
.aspectMask = image.info.IsDepthStencil() ? vk::ImageAspectFlagBits::eDepth
|
.aspectMask = image.info.IsDepthStencil() ? vk::ImageAspectFlagBits::eDepth
|
||||||
: vk::ImageAspectFlagBits::eColor,
|
: vk::ImageAspectFlagBits::eColor,
|
||||||
.mipLevel = 0,
|
.mipLevel = 0,
|
||||||
.baseArrayLayer = 0,
|
.baseArrayLayer = 0,
|
||||||
.layerCount = VK_REMAINING_ARRAY_LAYERS,
|
.layerCount = image.info.resources.layers,
|
||||||
},
|
},
|
||||||
.imageOffset = {0, 0, 0},
|
.imageOffset = {0, 0, 0},
|
||||||
.imageExtent = {image.info.size.width, image.info.size.height, 1},
|
.imageExtent = {image.info.size.width, image.info.size.height, 1},
|
||||||
|
@ -528,9 +528,6 @@ ImageView& TextureCache::FindDepthTarget(BaseDesc& desc) {
|
||||||
const ImageId image_id = FindImage(desc);
|
const ImageId image_id = FindImage(desc);
|
||||||
Image& image = slot_images[image_id];
|
Image& image = slot_images[image_id];
|
||||||
image.flags |= ImageFlagBits::GpuModified;
|
image.flags |= ImageFlagBits::GpuModified;
|
||||||
if (image.info.tiling_mode == AmdGpu::TilingMode::Display_Linear) {
|
|
||||||
download_images.emplace(image_id);
|
|
||||||
}
|
|
||||||
image.usage.depth_target = 1u;
|
image.usage.depth_target = 1u;
|
||||||
image.usage.stencil = image.info.HasStencil();
|
image.usage.stencil = image.info.HasStencil();
|
||||||
UpdateImage(image_id);
|
UpdateImage(image_id);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue