a bit of stuff, time to add spirv-link into this project

This commit is contained in:
2026-02-23 01:42:17 +02:00
parent c00ecf4081
commit 003106a4d7
48 changed files with 626 additions and 752 deletions

View File

@@ -122,6 +122,35 @@ DECLARE_VULKAN_COMMAND(SetViewport)
};
vkCmdSetViewportWithCount(hCommandBuffer, 1, &v);
}
DECLARE_VULKAN_COMMAND(ResolveImage)
{
CVkImage *pInput = (CVkImage*)VulkanGetObject(stInputImage, iCurrentFrame);
CVkImage *pOutput = (CVkImage*)VulkanGetObject(stOutputImage, iCurrentFrame);
VkImageResolve2 r = {
.sType = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
.srcSubresource = {
.aspectMask = pInput->m_range.aspectMask,
.layerCount = 1,
},
.srcOffset = {0,0,0},
.dstSubresource = {
.aspectMask = pOutput->m_range.aspectMask,
.layerCount = 1,
},
.dstOffset = {0,0,0},
.extent = {pInput->m_nWidth, pInput->m_nHeight, 1}
};
VkResolveImageInfo2 i = {
.sType = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2,
.srcImage = pInput->m_image,
.srcImageLayout = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL,
.dstImage = pOutput->m_image,
.dstImageLayout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
.regionCount = 1,
.pRegions = &r,
};
vkCmdResolveImage2(hCommandBuffer, &i);
}
DECLARE_VULKAN_COMMAND(CopyBufferToImage)
{
VkBufferImageCopy2 r = {