![]() |
VPP
0.8
A high-level modern C++ API for Vulkan
|
Set of commands that may be used outside rendering context. More...
#include <vppCommands.hpp>
Static Public Member Functions | |
static void | cmdFillBuffer (const Buf &hDstBuffer, size_t offset, size_t size, std::uint32_t value, CommandBuffer hCmdBuffer=CommandBuffer()) |
Fills specified buffer (or a region of it) with constant value. | |
static void | cmdCopyBuffer (const Buf &hSrcBuffer, const Buf &hDstBuffer, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies entire contents from one buffer to another. | |
static void | cmdCopyBuffer (const Buf &hSrcBuffer, const Buf &hDstBuffer, const std::vector< VkBufferCopy > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies a list of regions from one buffer to another. | |
static void | cmdUpdateBuffer (const Buf &hDstBuffer, size_t offset, size_t size, const std::uint32_t *pData, CommandBuffer hCmdBuffer=CommandBuffer()) |
Modifies a buffer region with specified data. More... | |
static void | cmdCopyImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies entire contents from one image to another. | |
static void | cmdCopyImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const std::vector< VkImageCopy > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies a list of regions from one image to another. | |
static void | cmdCopyBufferToImage (const Buf &hSrcBuffer, const Img &hDstImage, VkImageLayout dstImageLayout, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies entire contents from a buffer to an image. | |
static void | cmdCopyBufferToImage (const Buf &hSrcBuffer, const Img &hDstImage, VkImageLayout dstImageLayout, const std::vector< VkBufferImageCopy > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies a list of regions from a buffer to an image. | |
static void | cmdCopyImageToBuffer (const Img &hSrcImage, VkImageLayout srcImageLayout, const Buf &hDstBuffer, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies entire contents from an image to a buffer. | |
static void | cmdCopyImageToBuffer (const Img &hSrcImage, VkImageLayout srcImageLayout, const Buf &hDstBuffer, const std::vector< VkBufferImageCopy > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies a list of regions from an image to a buffer. | |
static void | cmdBlitImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const VkOffset3D &srcBegin, const VkOffset3D &srcEnd, const VkOffset3D &dstBegin, const VkOffset3D &dstEnd, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies source image region into destination image, potentially performing format conversion, arbitrary scaling and filtering. | |
static void | cmdBlitImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const VkOffset3D &srcBegin, const VkOffset3D &srcEnd, const VkOffset3D &dstBegin, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies source image region into destination image, potentially performing format conversion, but no scaling. | |
static void | cmdBlitImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const std::vector< VkImageBlit > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Copies source image regions into destination image, potentially performing format conversion, arbitrary scaling and filtering. | |
static void | cmdResolveImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const VkOffset3D &srcOffset, const VkOffset3D &dstOffset, const VkExtent3D &size, CommandBuffer hCmdBuffer=CommandBuffer()) |
Resolves source multisampled image region into destination regular image. More... | |
static void | cmdResolveImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, CommandBuffer hCmdBuffer=CommandBuffer()) |
Resolves source multisampled image into destination regular image. More... | |
static void | cmdResolveImage (const Img &hSrcImage, VkImageLayout srcImageLayout, const Img &hDstImage, VkImageLayout dstImageLayout, const std::vector< VkImageResolve > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Resolves a list of source multisampled image regions into destination regular image regions. More... | |
static void | cmdClearColorImage (const Img &hImage, const VkClearColorValue &color, CommandBuffer hCmdBuffer=CommandBuffer()) |
Clears an image with specified color. | |
static void | cmdClearColorImage (const Img &hImage, const VkClearColorValue &color, const std::vector< VkImageSubresourceRange > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Clears a list of regions in specified image with specified color. | |
static void | cmdClearDepthStencilImage (const Img &hImage, VkImageLayout imageLayout, float depth, std::uint32_t stencil, CommandBuffer hCmdBuffer=CommandBuffer()) |
Clears a depth or stencil image with specified value. | |
static void | cmdClearDepthStencilImage (const Img &hImage, VkImageLayout imageLayout, float depth, std::uint32_t stencil, const std::vector< VkImageSubresourceRange > ®ions, CommandBuffer hCmdBuffer=CommandBuffer()) |
Clears a list of regions in depth or stencil image with specified value. | |
static void | cmdResetQueryPool (const QueryPool &hPool, std::uint32_t first, std::uint32_t count, CommandBuffer hCmdBuffer=CommandBuffer()) |
Resets a range of queries in a query pool. | |
static void | cmdResetQueryPool (const QueryPool &hPool, CommandBuffer hCmdBuffer=CommandBuffer()) |
Resets all queries in a query pool. | |
static void | cmdCopyQueryPoolResults (const Buf &hDstBuffer, const QueryPool &hPool, VkQueryResultFlags flags, std::uint32_t count, std::uint32_t first, VkDeviceSize dstOffset, CommandBuffer hCmdBuffer=CommandBuffer()) |
static void | cmdCopyQueryPoolResults (const Buf &hDstBuffer, const QueryPool &hPool, VkQueryResultFlags flags, CommandBuffer hCmdBuffer=CommandBuffer()) |
Set of commands that may be used outside rendering context.
Rendering context occurs inside lambda functions passed to the Process nodes. Commands described below should not be used there, however they may be used inside Preprocess and Postprocess lambda functions, as well as outside all of these lambda functions.
All VPP commands accept optional CommandBuffer argument. This argument is always the last one. The rules regarding the argument are as follows:
The commands are implemented as static methods inside NonRenderingCommands class. It allows to easily group these commands. Derive from NonRenderingCommands if you need to call the commands frequently, or alternatively prefix the names with NonRenderingCommands::
.
|
static |
Resolves source multisampled image region into destination regular image.
This command does not perform any format conversions, nor scaling. Both images must be in same format.
srcImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
dstImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
.
|
static |
Resolves source multisampled image into destination regular image.
This command does not perform any format conversions, nor scaling. Both images must be in same format.
srcImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
dstImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
.
|
static |
Resolves a list of source multisampled image regions into destination regular image regions.
This command does not perform any format conversions, nor scaling. Both images must be in same format.
srcImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
dstImageLayout
must be VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL
or VK_IMAGE_LAYOUT_GENERAL
.
|
static |
Modifies a buffer region with specified data.
Caution: maximum size of data block is limited. Assume that at most 64 kB of data can be written this way.