shader: add BVH stack operations

This commit is contained in:
nmzik committed 2026-10-29 18:37:29 +01:00
1 parent 6ff6e7551d
commit bfd4c34b88
18 files changed
+419 -3

No files matched your search

+8
View File
@@ -46807,6 +46807,10 @@ std::vector<TestCase> MakeCases() {
AddCase(ScratchIsPrivatePerInvocation);
cases.push_back(FlatStackApertures(32));
cases.push_back(FlatStackApertures(64));
for (const u32 wave : {32u, 64u}) {
for (const u32 capacity : {8u, 16u, 31u}) cases.push_back(TrinityStack(wave, capacity));
cases.push_back(TrinityStack(wave, 8, true));
}
cases.push_back(BvhIntersections(true, true, 1));
cases.push_back(BvhIntersections(true, true, 0, true));
for (bool barycentrics : {false, true}) {
@@ -53346,6 +53350,10 @@ int main(int argc, char **argv) {
#endif
if (argc == 2 && std::strcmp(argv[1], "--ray-tracing-only") == 0) {
VulkanHarness vulkan;
for (const u32 wave : {32u, 64u}) {
for (const u32 capacity : {8u, 16u, 31u}) RunCase(&vulkan, TrinityStack(wave, capacity));
RunCase(&vulkan, TrinityStack(wave, 8, true));
}
RunCase(&vulkan, FlatStackApertures(32));
RunCase(&vulkan, FlatStackApertures(64));
RunCase(&vulkan, BvhIntersections(true, true, 1));