@@ -163,7 +163,7 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
163163 const auto anyHitShaderColorPayload = loadCompileAndCreateShader (" app_resources/raytrace.rahit.hlsl" );
164164 const auto anyHitShaderShadowPayload = loadCompileAndCreateShader (" app_resources/raytrace_shadow.rahit.hlsl" );
165165 const auto missShader = loadCompileAndCreateShader (" app_resources/raytrace.rmiss.hlsl" );
166- const auto shadowClosestHitShader = loadCompileAndCreateShader (" app_resources/raytrace_shadow_triangle.rchit .hlsl" );
166+ const auto missShadowShader = loadCompileAndCreateShader (" app_resources/raytrace_shadow.rmiss .hlsl" );
167167 const auto directionalLightCallShader = loadCompileAndCreateShader (" app_resources/light_directional.rcall.hlsl" );
168168 const auto pointLightCallShader = loadCompileAndCreateShader (" app_resources/light_point.rcall.hlsl" );
169169 const auto spotLightCallShader = loadCompileAndCreateShader (" app_resources/light_spot.rcall.hlsl" );
@@ -323,7 +323,7 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
323323 {
324324 RTDS_RAYGEN,
325325 RTDS_MISS,
326- RTDS_CLOSEST_HIT_SHADOW ,
326+ RTDS_MISS_SHADOW ,
327327 RTDS_CLOSEST_HIT,
328328 RTDS_SPHERE_CLOSEST_HIT,
329329 RTDS_ANYHIT_PRIMARY,
@@ -338,7 +338,7 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
338338 IGPUShader::SSpecInfo shaders[RTDS_COUNT];
339339 shaders[RTDS_RAYGEN] = {.shader = raygenShader.get ()};
340340 shaders[RTDS_MISS] = {.shader = missShader.get ()};
341- shaders[RTDS_CLOSEST_HIT_SHADOW ] = { .shader = shadowClosestHitShader .get () };
341+ shaders[RTDS_MISS_SHADOW ] = { .shader = missShadowShader .get () };
342342 shaders[RTDS_CLOSEST_HIT] = {.shader = closestHitShader.get ()};
343343 shaders[RTDS_SPHERE_CLOSEST_HIT] = {.shader = proceduralClosestHitShader.get ()};
344344 shaders[RTDS_ANYHIT_PRIMARY] = {.shader = anyHitShaderColorPayload.get ()};
@@ -351,17 +351,17 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
351351 params.layout = pipelineLayout.get ();
352352 params.shaders = std::span (shaders);
353353 using RayTracingFlags = IGPURayTracingPipeline::SCreationParams::FLAGS;
354- params.flags = core::bitflag (RayTracingFlags::NO_NULL_INTERSECTION_SHADERS ) |
355- RayTracingFlags::NO_NULL_ANY_HIT_SHADERS |
356- RayTracingFlags::NO_NULL_CLOSEST_HIT_SHADERS ;
354+ params.flags = core::bitflag (RayTracingFlags::NO_NULL_MISS_SHADERS ) |
355+ RayTracingFlags::NO_NULL_INTERSECTION_SHADERS |
356+ RayTracingFlags::NO_NULL_ANY_HIT_SHADERS ;
357357
358358 auto & shaderGroups = params.shaderGroups ;
359359
360360 shaderGroups.raygen = { .index = RTDS_RAYGEN };
361361
362362 IRayTracingPipelineBase::SGeneralShaderGroup missGroups[EMT_COUNT];
363363 missGroups[EMT_PRIMARY] = { .index = RTDS_MISS };
364- missGroups[EMT_OCCLUSION] = { .index = IGPURayTracingPipeline::SGeneralShaderGroup::Unused };
364+ missGroups[EMT_OCCLUSION] = { .index = RTDS_MISS_SHADOW };
365365 shaderGroups.misses = missGroups;
366366
367367 auto getHitGroupIndex = [](E_GEOM_TYPE geomType, E_RAY_TYPE rayType)
@@ -374,7 +374,7 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
374374 .anyHit = RTDS_ANYHIT_PRIMARY,
375375 };
376376 hitGroups[getHitGroupIndex (EGT_TRIANGLES, ERT_OCCLUSION)] = {
377- .closestHit = RTDS_CLOSEST_HIT_SHADOW ,
377+ .closestHit = IGPURayTracingPipeline::SGeneralShaderGroup::Unused ,
378378 .anyHit = RTDS_ANYHIT_SHADOW,
379379 };
380380 hitGroups[getHitGroupIndex (EGT_PROCEDURAL, ERT_PRIMARY)] = {
@@ -383,7 +383,7 @@ class RaytracingPipelineApp final : public examples::SimpleWindowedApplication,
383383 .intersection = RTDS_INTERSECTION,
384384 };
385385 hitGroups[getHitGroupIndex (EGT_PROCEDURAL, ERT_OCCLUSION)] = {
386- .closestHit = RTDS_CLOSEST_HIT_SHADOW ,
386+ .closestHit = IGPURayTracingPipeline::SGeneralShaderGroup::Unused ,
387387 .anyHit = RTDS_ANYHIT_SHADOW,
388388 .intersection = RTDS_INTERSECTION,
389389 };
0 commit comments