SpiecsEngine
 
Loading...
Searching...
No Matches

◆ CreateRTShaderBindingTable()

void Spices::RayTracingRenderer::CreateRTShaderBindingTable ( std::shared_ptr< VulkanRayTracing > rayTracingInstance)
private

Create Shader Binding Table.

Parameters
[in]rayTracingInstanceVulkanRayTracingInstance.

Definition at line 180 of file RayTracingRenderer.cpp.

181 {
183
184 const auto rayTracingMaterial = ResourcePool<Material>::Load<Material>("RayTracingRenderer.RayTracing.Default", "RayTracingRenderer.RayTracing.Default");
185
186 const uint32_t rayGenCount = static_cast<uint32_t>(rayTracingMaterial->GetShaderPath("rgen").size());
187 const uint32_t missCount = static_cast<uint32_t>(rayTracingMaterial->GetShaderPath("rmiss").size());
188
189 rayTracingInstance->CreateRTShaderBindingTable(rayGenCount, missCount, m_Pipelines.Find("RayTracingRenderer.RayTracing.Default")->GetPipeline());
190 }
#define SPICES_PROFILE_ZONE
scl::thread_unordered_map< std::string, std::shared_ptr< VulkanPipeline > > m_Pipelines
Renderer stored material pipelines.
Definition Renderer.h:2022