mirror of
https://github.com/love2d/love.git
synced 2026-08-15 07:41:11 +02:00
vulkan: fix validation errors when generating mipmaps for a compute-writable texture.
This commit is contained in:
@@ -491,11 +491,22 @@ void Texture::generateMipmapsInternal()
|
||||
blit.dstSubresource.baseArrayLayer = rootView.startLayer;
|
||||
blit.dstSubresource.layerCount = static_cast<uint32_t>(layerCount);
|
||||
|
||||
vkCmdBlitImage(commandBuffer,
|
||||
textureImage, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
|
||||
textureImage, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
|
||||
1, &blit,
|
||||
VK_FILTER_LINEAR);
|
||||
if (imageLayout != VK_IMAGE_LAYOUT_GENERAL)
|
||||
{
|
||||
vkCmdBlitImage(commandBuffer,
|
||||
textureImage, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
|
||||
textureImage, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
|
||||
1, &blit,
|
||||
VK_FILTER_LINEAR);
|
||||
}
|
||||
else
|
||||
{
|
||||
vkCmdBlitImage(commandBuffer,
|
||||
textureImage, VK_IMAGE_LAYOUT_GENERAL,
|
||||
textureImage, VK_IMAGE_LAYOUT_GENERAL,
|
||||
1, &blit,
|
||||
VK_FILTER_LINEAR);
|
||||
}
|
||||
|
||||
barrier.oldLayout = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL;
|
||||
barrier.newLayout = imageLayout;
|
||||
|
||||
Reference in New Issue
Block a user