SpiecsEngine
 
Loading...
Searching...
No Matches

◆ AddPushConstantInput()

Renderer::DGCLayoutBuilder & Spices::Renderer::DGCLayoutBuilder::AddPushConstantInput ( )

Add Binding PushConstant Command to Input.

Returns
Returns this reference.

Instance a VkIndirectCommandsLayoutTokenNV.

Store Input.

Instance a VkIndirectCommandsLayoutTokenNV.

Store Input.

Definition at line 2412 of file Renderer.cpp.

2413 {
2415
2416 std::stringstream ss;
2417 ss << m_Renderer->m_RendererName << "." << m_SubPassName << ".Default";
2418
2422 VkIndirectCommandsLayoutTokenNV input{};
2423 input.sType = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV;
2424 input.tokenType = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV;
2425
2426 input.pushconstantPipelineLayout = m_Renderer->m_Pipelines.Find(ss.str())->GetPipelineLayout();
2427 input.pushconstantShaderStageFlags = VK_SHADER_STAGE_ALL;
2428 input.pushconstantOffset = 0;
2429 input.pushconstantSize = sizeof(VkDeviceAddress);
2430
2431 input.stream = static_cast<uint32_t>(m_InputInfos.size());
2432 input.offset = 0;
2433
2434 input.pIndexTypes = nullptr;
2435 input.pIndexTypeValues = nullptr;
2436
2440 m_InputInfos.push_back(input);
2441 m_HandledDGCData->AddInputStride(sizeof(VkDeviceAddress));
2442
2443 return *this;
2444 }
#define SPICES_PROFILE_ZONE
Renderer * m_Renderer
Specific Renderer pointer. Passed while this class instanced.
Definition Renderer.h:961
std::string m_SubPassName
Specific SubPass Name. Passed while this class instanced.
Definition Renderer.h:967
std::vector< VkIndirectCommandsLayoutTokenNV > m_InputInfos
Stores command inputs.
Definition Renderer.h:972
std::shared_ptr< VulkanDeviceGeneratedCommandsNV > m_HandledDGCData
Current SubPass DGC Data.
Definition Renderer.h:977
std::string m_RendererName
Specific renderer name, Passed by instanced.
Definition Renderer.h:2017
scl::thread_unordered_map< std::string, std::shared_ptr< VulkanPipeline > > m_Pipelines
Renderer stored material pipelines.
Definition Renderer.h:2022

References m_Renderer, Spices::Renderer::m_RendererName, and m_SubPassName.

Referenced by Spices::BasePassRenderer::CreateDeviceGeneratedCommandsLayout().