add convert image usage

This commit is contained in:
Matthew 2025-11-22 16:51:18 +11:00
parent c42238a456
commit 4641a17bab

View File

@ -187,8 +187,12 @@ enum ImageLayout : VkImageLayout
General = VK_IMAGE_LAYOUT_GENERAL, General = VK_IMAGE_LAYOUT_GENERAL,
ColorAttach = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, ColorAttach = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL,
ReadOnly = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, ReadOnly = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL,
TransferDst = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
TransferSrc = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
} }
alias IL = ImageLayout;
struct Image struct Image
{ {
VkImage image; VkImage image;
@ -1091,12 +1095,16 @@ CreateImageView(Vulkan* vk, ImageView* view, u32 w, u32 h, Format format, ImageU
if(usage == IU.Draw || usage == IU.Depth) if(usage == IU.Draw || usage == IU.Depth)
{ {
view.shader_layout = ImageLayout.General; view.shader_layout = IL.General;
} }
else if(usage == IU.Texture) else if(usage == IU.Texture)
{ {
view.shader_layout = ImageLayout.ReadOnly; view.shader_layout = IL.ReadOnly;
} }
else if(usage == IU.Convert)
{
view.shader_layout = IL.TransferDst;
}
else assert(false, "Unimplemented usage"); else assert(false, "Unimplemented usage");
} }