SpiecsEngine
 
Loading...
Searching...
No Matches

◆ BindDescriptorSetAsync() [1/2]

void Spices::Renderer::RenderBehaveBuilder::BindDescriptorSetAsync ( const DescriptorSetInfo & infos,
const std::string & name,
VkPipelineBindPoint bindPoint = VK_PIPELINE_BIND_POINT_GRAPHICS )
virtual

Binding DescriptorSet with DescriptorSetInfo and name Async. For Binding a Material DescriptorSet.

Parameters
[in]infosDescriptorSetInfo.
[in]nameThe material name.
[in]bindPointVkPipelineBindPoint.

Iter all desctiptorsets.

Iter all desctiptorsets.

Reimplemented in Spices::Renderer::RayTracingRenderBehaveBuilder.

Definition at line 1334 of file Renderer.cpp.

1339 {
1341
1342 m_Renderer->SubmitCmdsParallel(m_CommandBuffer, m_SubPassIndex, [&](const VkCommandBuffer& secCmdBuffer) {
1343
1347 for (const auto& pair : infos)
1348 {
1349 vkCmdBindDescriptorSets(
1350 secCmdBuffer,
1351 bindPoint,
1352 m_Renderer->m_Pipelines.Find(name)->GetPipelineLayout(),
1353 pair.first,
1354 1,
1355 &pair.second->Get(),
1356 0,
1357 nullptr
1358 );
1359 }
1360 });
1361 }
#define SPICES_PROFILE_ZONE
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
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
scl::thread_unordered_map< std::string, std::shared_ptr< VulkanPipeline > > m_Pipelines
Renderer stored material pipelines.
Definition Renderer.h:2022