radv/sqtt: Handle ray tracing pipelines with no traversal shader
Fixes: 0f87d40
("radv/rt: Skip compiling a traversal shader")
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27383>
This commit is contained in:
@@ -1575,10 +1575,12 @@ radv_register_rt_pipeline(struct radv_device *device, struct radv_ray_tracing_pi
|
||||
uint32_t idx = pipeline->stage_count;
|
||||
|
||||
/* Combined traversal shader */
|
||||
result = radv_register_rt_stage(device, pipeline, idx++, max_any_hit_stack_size + max_intersection_stack_size,
|
||||
pipeline->base.base.shaders[MESA_SHADER_INTERSECTION]);
|
||||
if (result != VK_SUCCESS)
|
||||
return result;
|
||||
if (pipeline->base.base.shaders[MESA_SHADER_INTERSECTION]) {
|
||||
result = radv_register_rt_stage(device, pipeline, idx++, max_any_hit_stack_size + max_intersection_stack_size,
|
||||
pipeline->base.base.shaders[MESA_SHADER_INTERSECTION]);
|
||||
if (result != VK_SUCCESS)
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Prolog */
|
||||
result = radv_register_rt_stage(device, pipeline, idx++, 0, pipeline->prolog);
|
||||
|
Reference in New Issue
Block a user