parent
21f9cd5251
commit
a369e6ed96
7 changed files with 37 additions and 26 deletions
|
|
@ -205,10 +205,11 @@ void VulkanRaytracingSample::prepare()
|
|||
|
||||
VkStridedDeviceAddressRegionKHR VulkanRaytracingSample::getSbtEntryStridedDeviceAddressRegion(VkBuffer buffer, uint32_t handleCount)
|
||||
{
|
||||
const uint32_t handleSizeAligned = vks::tools::alignedSize(rayTracingPipelineProperties.shaderGroupHandleSize, rayTracingPipelineProperties.shaderGroupHandleAlignment);
|
||||
VkStridedDeviceAddressRegionKHR stridedDeviceAddressRegionKHR{};
|
||||
stridedDeviceAddressRegionKHR.deviceAddress = getBufferDeviceAddress(buffer);
|
||||
stridedDeviceAddressRegionKHR.stride = rayTracingPipelineProperties.shaderGroupHandleSize;
|
||||
stridedDeviceAddressRegionKHR.size = rayTracingPipelineProperties.shaderGroupHandleSize * handleCount;
|
||||
stridedDeviceAddressRegionKHR.stride = handleSizeAligned;
|
||||
stridedDeviceAddressRegionKHR.size = handleCount * handleSizeAligned;
|
||||
return stridedDeviceAddressRegionKHR;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -378,5 +378,11 @@ namespace vks
|
|||
std::ifstream f(filename.c_str());
|
||||
return !f.fail();
|
||||
}
|
||||
|
||||
uint32_t alignedSize(uint32_t value, uint32_t alignment)
|
||||
{
|
||||
return (value + alignment - 1) & ~(alignment - 1);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -125,5 +125,7 @@ namespace vks
|
|||
|
||||
/** @brief Checks if a file exists */
|
||||
bool fileExists(const std::string &filename);
|
||||
|
||||
uint32_t alignedSize(uint32_t value, uint32_t alignment);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue