VenomEngine
Cross-Platform Modern Graphics Engine
Loading...
Searching...
No Matches
venom::vulkan::SingleTimeCommandBuffer Class Reference
+ Inheritance diagram for venom::vulkan::SingleTimeCommandBuffer:

Public Member Functions

 SingleTimeCommandBuffer (const SingleTimeCommandBuffer &)=delete
 
SingleTimeCommandBufferoperator= (const SingleTimeCommandBuffer &)=delete
 
 SingleTimeCommandBuffer (SingleTimeCommandBuffer &&other)
 
SingleTimeCommandBufferoperator= (SingleTimeCommandBuffer &&other)
 
- Public Member Functions inherited from venom::vulkan::CommandBuffer
 CommandBuffer (const CommandBuffer &)=delete
 
CommandBufferoperator= (const CommandBuffer &)=delete
 
 CommandBuffer (CommandBuffer &&other)
 
CommandBufferoperator= (CommandBuffer &&other)
 
VkCommandBuffer GetVkCommandBuffer () const
 
 operator VkCommandBuffer () const
 
vc::Error BeginCommandBuffer (VkCommandBufferUsageFlags flags=0)
 
vc::Error EndCommandBuffer ()
 
void Reset (VkCommandBufferResetFlags flags)
 
bool BindPipeline (VkPipeline pipeline, VkPipelineBindPoint bindPoint)
 Bind a pipeline to the command buffer.
 
void SetViewport (const VkViewport &viewport) const
 
void SetScissor (const VkRect2D &scissor) const
 
void Draw (uint32_t vertexCount, uint32_t instanceCount, uint32_t firstVertex, uint32_t firstInstance) const
 
void DrawVertices (const VertexBuffer &vertexBuffer) const
 
void DrawMesh (const VulkanMesh *vulkanMesh, const int firstInstance, const VulkanShaderPipeline &pipeline) const
 
void DrawModel (const VulkanModel *vulkanModel, const int firstInstance, const VulkanShaderPipeline &pipeline) const
 
void DrawSkybox (const VulkanSkybox *vulkanSkybox, const VulkanShaderPipeline *shader)
 
void Dispatch (uint32_t groupX, uint32_t groupY, uint32_t groupZ) const
 
void PipelineBarrier (VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags, uint32_t memoryBarrierCount, const VkMemoryBarrier *pMemoryBarriers, uint32_t bufferMemoryBarrierCount, const VkBufferMemoryBarrier *pBufferMemoryBarriers, uint32_t imageMemoryBarrierCount, const VkImageMemoryBarrier *pImageMemoryBarriers) const
 
void PipelineBarrier (VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkDependencyFlags dependencyFlags) const
 
void CopyImage (const Image &image, const Image &getImage)
 
void CopySwapChainImage (const VkImage &image, const Image &getImage)
 
void ClearAttachments (uint32_t i, VkImageAspectFlags vkImageAspectFlagBits, VkClearValue vkClearValue) const
 
void PushConstants (const VulkanShaderPipeline *shaderPipeline, VkShaderStageFlags stageFlags, uint32_t offset, uint32_t size, const void *pValues) const
 
void CopyBufferToImage (const Buffer &srcBuffer, const Image &dstImage)
 
void TransitionImageLayout (Image &image, VkFormat format, VkImageLayout oldLayout, VkImageLayout newLayout)
 
void TransitionImageLayout (Image &image, VkImageLayout oldLayout, VkImageLayout newLayout)
 
void ChangeImageLayout (vc::Texture &image, const VkImageLayout oldLayout, const VkImageLayout newLayout)
 
void ChangeImageLayout (vc::Texture &image, const VkImageLayout newLayout)
 
void BindDescriptorSets (VkPipelineBindPoint vkPipelineBindPoint, VkPipelineLayout vkPipelineLayout, uint32_t firstSet, VkDescriptorSet vkDescriptors) const
 
void BindDescriptorSets (VkPipelineBindPoint vkPipelineBindPoint, VkPipelineLayout vkPipelineLayout, uint32_t firstSet, uint32_t descriptSetCount, const VkDescriptorSet *vkDescriptors) const
 
void SubmitToQueue (VkFence fence=VK_NULL_HANDLE, VkSemaphore waitSemaphore=VK_NULL_HANDLE, VkPipelineStageFlags waitStage=0, VkSemaphore signalSemaphore=VK_NULL_HANDLE)
 
void WaitForQueue () const
 

Friends

class CommandPool
 

Additional Inherited Members

- Protected Member Functions inherited from venom::vulkan::CommandBuffer
- Protected Attributes inherited from venom::vulkan::CommandBuffer
VkCommandBuffer _commandBuffer
 
const Queue_queue
 
bool _isActive
 
VkPipeline _lastBoundPipeline
 

The documentation for this class was generated from the following files: