diff options
-rw-r--r-- | src/amd/vulkan/radv_image.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index 22bc6b41da8..d138988f56f 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -853,14 +853,15 @@ void radv_GetImageSubresourceLayout( RADV_FROM_HANDLE(radv_image, image, _image); int level = pSubresource->mipLevel; int layer = pSubresource->arrayLayer; + struct radeon_surf *surface = &image->surface; - pLayout->offset = image->surface.level[level].offset + image->surface.level[level].slice_size * layer; - pLayout->rowPitch = image->surface.level[level].pitch_bytes; - pLayout->arrayPitch = image->surface.level[level].slice_size; - pLayout->depthPitch = image->surface.level[level].slice_size; - pLayout->size = image->surface.level[level].slice_size; + pLayout->offset = surface->level[level].offset + surface->level[level].slice_size * layer; + pLayout->rowPitch = surface->level[level].pitch_bytes; + pLayout->arrayPitch = surface->level[level].slice_size; + pLayout->depthPitch = surface->level[level].slice_size; + pLayout->size = surface->level[level].slice_size; if (image->type == VK_IMAGE_TYPE_3D) - pLayout->size *= image->surface.level[level].nblk_z; + pLayout->size *= surface->level[level].nblk_z; } |