diff --git a/include/vkcv/BufferManager.hpp b/include/vkcv/BufferManager.hpp index 272ba44bb622c476be2a2d2de5a101a24bc47fd3..7bec33d8c4fa752be2487a849c16eaeeea0e6237 100644 --- a/include/vkcv/BufferManager.hpp +++ b/include/vkcv/BufferManager.hpp @@ -13,9 +13,7 @@ namespace vkcv VERTEX, UNIFORM, STORAGE, - STAGING, - RT_ACCELERATION_VERTEX, - RT_ACCELERATION_INDEX + STAGING }; enum class BufferMemoryType { diff --git a/include/vkcv/Core.hpp b/include/vkcv/Core.hpp index 2f164ca4ae7340f9a52b0daaf0dc8967c3ecac66..e9fd3eb95a90e6ece71c592407b91025804e798f 100644 --- a/include/vkcv/Core.hpp +++ b/include/vkcv/Core.hpp @@ -341,7 +341,18 @@ namespace vkcv const WindowHandle& windowHandle); - + /** + * Prepares RTXPipeline for Raygeneration by recording the binding Table to the Commandstream. + * Currently only supports closestHit, rayGen and miss shaderstages. + * @param cmdStreamHandle The command stream handle which receives relevant commands for drawing. + * @param rtxPipeline The raytracing pipeline from the RTXModule. + * @param rtxPipelineLayout The raytracing pipeline layout from the RTXModule. + * @param shaderBindingTable The shader binding table from the RTXModule. + * @param shaderGroupBaseAlignment The shader group base alignment from the RTXModule. + * @param descriptorSetUsages The descriptor set usages. + * @param pushConstants The push constants. + * @param windowHandle The window handle defining in which window to render. + */ void recordRayGenerationToCmdStream( CommandStreamHandle cmdStreamHandle, vk::Pipeline rtxPipeline, diff --git a/src/vkcv/BufferManager.cpp b/src/vkcv/BufferManager.cpp index 3f5051d4111658d917e2d063c892a9f0d8fdbb05..f468bccc68c7b79391f1132160b7237a51f64081 100644 --- a/src/vkcv/BufferManager.cpp +++ b/src/vkcv/BufferManager.cpp @@ -48,12 +48,6 @@ namespace vkcv { case BufferType::INDEX: usageFlags = vk::BufferUsageFlagBits::eIndexBuffer; break; - case BufferType::RT_ACCELERATION_VERTEX: - usageFlags = vk::BufferUsageFlagBits::eVertexBuffer | vk::BufferUsageFlagBits::eAccelerationStructureStorageKHR | vk::BufferUsageFlagBits::eShaderDeviceAddressKHR | vk::BufferUsageFlagBits::eStorageBuffer; - break; - case BufferType::RT_ACCELERATION_INDEX: - usageFlags = vk::BufferUsageFlagBits::eIndexBuffer | vk::BufferUsageFlagBits::eAccelerationStructureStorageKHR | vk::BufferUsageFlagBits::eShaderDeviceAddressKHR | vk::BufferUsageFlagBits::eStorageBuffer; - break; default: vkcv_log(LogLevel::WARNING, "Unknown buffer type"); break; diff --git a/src/vkcv/Core.cpp b/src/vkcv/Core.cpp index d5acdf1c3ef24d66c7fabf9886a320c3067b29b9..d2082bd46d5009a8294a110c89ca5f5758e37a4b 100644 --- a/src/vkcv/Core.cpp +++ b/src/vkcv/Core.cpp @@ -459,7 +459,6 @@ namespace vkcv rchitRegion.setSize(shaderBindingTableSize); vk::StridedDeviceAddressRegionKHR rcallRegion = {}; - cmdBuffer.traceRaysKHR(&rgenRegion,&rmissRegion,&rchitRegion,&rcallRegion, getWindow(windowHandle).getWidth(), getWindow(windowHandle).getHeight(),1, m_rtxDispatcher);