X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbackends%2Fvulkan%2Ftexture_backend.cpp;h=5b73749884892aad06f69589648e4bad16b663aa;hb=69965e5d8e01533dae11bb38c1641adfd2814ae5;hp=4e2e82249dde43a951ecfb82741a92442d00072c;hpb=3f2ce5d1ba85bc0c03e6718cc41c2dac5e959d75;p=libs%2Fgl.git diff --git a/source/backends/vulkan/texture_backend.cpp b/source/backends/vulkan/texture_backend.cpp index 4e2e8224..5b737498 100644 --- a/source/backends/vulkan/texture_backend.cpp +++ b/source/backends/vulkan/texture_backend.cpp @@ -146,11 +146,11 @@ void VulkanTexture::generate_mipmap() change_layout(i, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, false); change_layout(i+1, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, true); }, - [this, i](VkCommandBuffer cmd_buf, VkBuffer, size_t){ - const VulkanFunctions &vk = device.get_functions(); + [this, i](const VulkanCommandRecorder &vkCmd, VkBuffer, size_t){ + const Texture &self = *static_cast(this); VkImageBlit region = { }; - region.srcSubresource.aspectMask = get_vulkan_aspect(get_components(static_cast(this)->storage_fmt)); + region.srcSubresource.aspectMask = get_vulkan_aspect(get_components(self.storage_fmt)); region.srcSubresource.mipLevel = i; region.srcSubresource.baseArrayLayer = 0; region.srcSubresource.layerCount = 1; @@ -159,7 +159,7 @@ void VulkanTexture::generate_mipmap() fill_mipmap_blit(i, ®ion); - vk.CmdBlitImage(cmd_buf, handle, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, handle, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, + vkCmd.BlitImage(handle, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, handle, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, ®ion, VK_FILTER_LINEAR); }); }