Post PR cleanup
Use rayTracingPipelineProperties from base class instead of expliclity querying it in the sample
This commit is contained in:
parent
fee8bcb434
commit
9756ad8c23
4 changed files with 7 additions and 39 deletions
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
* Vulkan Example - Hardware accelerated ray tracing intersection shader samples
|
||||
*
|
||||
* Copyright (C) 2023 by Sascha Willems - www.saschawillems.de
|
||||
* Copyright (C) 2023-2024 by Sascha Willems - www.saschawillems.de
|
||||
*
|
||||
* This sample uses intersection shaders for doing prodcedural ray traced geometry
|
||||
* Instead of passing actual geometry, this samples only passes bounding boxes and sphere descriptions
|
||||
|
|
@ -431,20 +431,12 @@ public:
|
|||
shaderGroups.push_back(shaderGroup);
|
||||
}
|
||||
|
||||
// Get max pipeline ray tracing recursion depth for physical device
|
||||
VkPhysicalDeviceRayTracingPipelinePropertiesKHR physicalDeviceRayTracingPipelinePropertiesKHR {};
|
||||
physicalDeviceRayTracingPipelinePropertiesKHR.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR;
|
||||
VkPhysicalDeviceProperties2 physicalDeviceProperties2;
|
||||
physicalDeviceProperties2.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR;
|
||||
physicalDeviceProperties2.pNext = &physicalDeviceRayTracingPipelinePropertiesKHR;
|
||||
vkGetPhysicalDeviceProperties2(physicalDevice, &physicalDeviceProperties2);
|
||||
|
||||
VkRayTracingPipelineCreateInfoKHR rayTracingPipelineCI = vks::initializers::rayTracingPipelineCreateInfoKHR();
|
||||
rayTracingPipelineCI.stageCount = static_cast<uint32_t>(shaderStages.size());
|
||||
rayTracingPipelineCI.pStages = shaderStages.data();
|
||||
rayTracingPipelineCI.groupCount = static_cast<uint32_t>(shaderGroups.size());
|
||||
rayTracingPipelineCI.pGroups = shaderGroups.data();
|
||||
rayTracingPipelineCI.maxPipelineRayRecursionDepth = std::min(uint32_t(2), physicalDeviceRayTracingPipelinePropertiesKHR.maxRayRecursionDepth);
|
||||
rayTracingPipelineCI.maxPipelineRayRecursionDepth = std::min(uint32_t(2), rayTracingPipelineProperties.maxRayRecursionDepth);
|
||||
rayTracingPipelineCI.layout = pipelineLayout;
|
||||
VK_CHECK_RESULT(vkCreateRayTracingPipelinesKHR(device, VK_NULL_HANDLE, VK_NULL_HANDLE, 1, &rayTracingPipelineCI, nullptr, &pipeline));
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue