SpiecsEngine
 
Loading...
Searching...
No Matches

◆ CreateDescriptorSet()

void Spices::RayTracingRenderer::CreateDescriptorSet ( )
overrideprivatevirtual

The interface is inherited from Renderer. Create specific descriptor set for sub pass.

Implements Spices::Renderer.

Definition at line 47 of file RayTracingRenderer.cpp.

48 {
50
51 DescriptorSetBuilder{ "RayTracing", this }
52 .AddPushConstant(sizeof(RayTracingR::PushConstant))
53 .AddAccelerationStructure(2, 0, VK_SHADER_STAGE_RAYGEN_BIT_KHR | VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR) /* @brief Acceleration Structure. */
54 .AddStorageTexture(2, 1, VK_SHADER_STAGE_RAYGEN_BIT_KHR, { "RayImage" }, VK_FORMAT_R32G32B32A32_SFLOAT) /* @brief Ray Tracing Output Image. */
55 .AddStorageTexture(2, 2, VK_SHADER_STAGE_RAYGEN_BIT_KHR, { "RayEntityID", "RayTriangleID" }, VK_FORMAT_R32_SFLOAT) /* @brief Ray Tracing Output IDs. */
56 .AddStorageBuffer(3, 0, SpicesShader::MESH_BUFFER_MAXNUM * sizeof(uint64_t), VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR) /* @brief World Mesh Buffer. */
57 .AddStorageBuffer(3, 1, sizeof(RayTracingR::DirectionalLightBuffer), VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR) /* @brief World Directional Light Buffer. */
58 .AddStorageBuffer(3, 2, sizeof(RayTracingR::PointLightBuffer), VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR) /* @brief World PointLight Buffer. */
59 .AddTexture<Texture2D>(4, 0, VK_SHADER_STAGE_MISS_BIT_KHR, {"skybox/kloofendal_48d_partly_cloudy_puresky_4k.hdr"}) /* @brief temp. */
60 .Build(m_VulkanRayTracing->GetAccelerationStructure());
61 }
#define SPICES_PROFILE_ZONE
static std::shared_ptr< VulkanRayTracing > m_VulkanRayTracing
In Used VulkanRayTracing.
friend class DescriptorSetBuilder
Allow this class access all data.
Definition Renderer.h:2052
Definition Build.py:1