SpiecsEngine
 
Loading...
Searching...
No Matches

◆ RunDGCAsync()

void Spices::Renderer::RenderBehaveBuilder::RunDGCAsync ( ) const

Run DGC Buffer Async.

Definition at line 1380 of file Renderer.cpp.

1381 {
1383
1384 m_Renderer->SubmitCmdsParallel(m_CommandBuffer, m_SubPassIndex, [&](const VkCommandBuffer& cmdBuffer) {
1385 PreprocessDGC_NV(cmdBuffer);
1386
1388 VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV ,
1389 VK_ACCESS_INDIRECT_COMMAND_READ_BIT ,
1390 VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV ,
1391 VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT ,
1392 cmdBuffer
1393 );
1394
1395 ExecuteDGC_NV(cmdBuffer);
1396 });
1397 }
#define SPICES_PROFILE_ZONE
void InternalRegionBarrier(VkAccessFlags srcAccessMask, VkAccessFlags dstAccessMask, VkPipelineStageFlags srcStageMask, VkPipelineStageFlags dstStageMask, VkCommandBuffer cmdBuffer=VK_NULL_HANDLE) const
Add a memory Barrier.
uint32_t m_SubPassIndex
Current subPass Index.
Definition Renderer.h:1534
Renderer * m_Renderer
Specific Renderer pointer. Passed while this class instanced.
Definition Renderer.h:1515
VkCommandBuffer m_CommandBuffer
Current CommandBuffer.
Definition Renderer.h:1539
void PreprocessDGC_NV(VkCommandBuffer cmdBuffer=VK_NULL_HANDLE) const
Preprocess Device Generated CommandsBuffer.
void ExecuteDGC_NV(const VkCommandBuffer &cmdBuffer=VK_NULL_HANDLE) const
Execute Device Generated CommandsBuffer.
std::future< VkCommandBuffer > SubmitCmdsParallel(VkCommandBuffer primaryCmdBuffer, uint32_t subPass, F &&func)
Submit a group of commands to secondary command buffer, and execute all of them.
Definition Renderer.h:2273