compute shaders
This commit is contained in:
@@ -33,3 +33,25 @@ DECLARE_VULKAN_COMMAND(Blit)
|
||||
|
||||
vkCmdBlitImage(hCommandBuffer, pVkInputImage->m_image, VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, pVkOutputImage->m_image, VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, &stBlit, VK_FILTER_NEAREST);
|
||||
}
|
||||
|
||||
DECLARE_VULKAN_COMMAND(CopyBufferToImage)
|
||||
{
|
||||
VkBufferImageCopy2 r = {
|
||||
.sType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
|
||||
.imageSubresource = {
|
||||
.aspectMask = ((CVkImage*)VulkanGetObject(stOutputImage, iCurrentFrame))->m_range.aspectMask,
|
||||
.layerCount = 1,
|
||||
},
|
||||
.imageOffset = {iOffsetX, iOffsetY, iOffsetZ},
|
||||
.imageExtent = {iImageX, iImageY, iImageZ},
|
||||
};
|
||||
VkCopyBufferToImageInfo2 c = {
|
||||
.sType = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2,
|
||||
.srcBuffer = ((CVkBuffer*)pBuffer)->m_buffer,
|
||||
.dstImage = ((CVkImage*)VulkanGetObject(stOutputImage, iCurrentFrame))->m_image,
|
||||
.dstImageLayout = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
|
||||
.regionCount = 1,
|
||||
.pRegions = &r,
|
||||
};
|
||||
vkCmdCopyBufferToImage2(hCommandBuffer, &c);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user