From 6ead6171a73c1a6854e23d96e188acc985b686dc Mon Sep 17 00:00:00 2001 From: Jason Macnak Date: Fri, 26 Jul 2019 16:31:19 -0700 Subject: [PATCH] Fix a couple of small errors in ray tracing examples nv_ray_tracing_basic.cpp - update to 3 component vertex data (4 component isn't supported) - update type to TOP_LEVEL when building the TLAS nv_ray_tracing_reflections.cpp - update AS info type to TOP_LEVEL when building the TLAS nv_ray_tracing_shadows.cpp - update AS info type to TOP_LEVEL when building the TLAS Validation layer changes coming soon :) --- .../nv_ray_tracing_basic/nv_ray_tracing_basic.cpp | 11 ++++++----- .../nv_ray_tracing_reflections.cpp | 1 + .../nv_ray_tracing_shadows/nv_ray_tracing_shadows.cpp | 1 + 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/examples/nv_ray_tracing_basic/nv_ray_tracing_basic.cpp b/examples/nv_ray_tracing_basic/nv_ray_tracing_basic.cpp index 94de98b1..ab8b07b6 100644 --- a/examples/nv_ray_tracing_basic/nv_ray_tracing_basic.cpp +++ b/examples/nv_ray_tracing_basic/nv_ray_tracing_basic.cpp @@ -246,12 +246,12 @@ public: { // Setup vertices for a single uv-mapped quad made from two triangles struct Vertex { - float pos[4]; + float pos[3]; }; std::vector vertices = { - { { 1.0f, 1.0f, 0.0f, 1.0f } }, - { { -1.0f, 1.0f, 0.0f, 1.0f } }, - { { 0.0f, -1.0f, 0.0f, 1.0f } } + { { 1.0f, 1.0f, 0.0f } }, + { { -1.0f, 1.0f, 0.0f } }, + { { 0.0f, -1.0f, 0.0f } } }; // Setup indices @@ -286,7 +286,7 @@ public: geometry.geometry.triangles.vertexOffset = 0; geometry.geometry.triangles.vertexCount = static_cast(vertices.size()); geometry.geometry.triangles.vertexStride = sizeof(Vertex); - geometry.geometry.triangles.vertexFormat = VK_FORMAT_R32G32B32A32_SFLOAT; + geometry.geometry.triangles.vertexFormat = VK_FORMAT_R32G32B32_SFLOAT; geometry.geometry.triangles.indexData = indexBuffer.buffer; geometry.geometry.triangles.indexOffset = 0; geometry.geometry.triangles.indexCount = indexCount; @@ -385,6 +385,7 @@ public: /* Build top-level acceleration structure */ + buildInfo.type = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV; buildInfo.pGeometries = 0; buildInfo.geometryCount = 0; buildInfo.instanceCount = 1; diff --git a/examples/nv_ray_tracing_reflections/nv_ray_tracing_reflections.cpp b/examples/nv_ray_tracing_reflections/nv_ray_tracing_reflections.cpp index ae2dc364..020477eb 100644 --- a/examples/nv_ray_tracing_reflections/nv_ray_tracing_reflections.cpp +++ b/examples/nv_ray_tracing_reflections/nv_ray_tracing_reflections.cpp @@ -374,6 +374,7 @@ public: /* Build top-level acceleration structure */ + buildInfo.type = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV; buildInfo.pGeometries = 0; buildInfo.geometryCount = 0; buildInfo.instanceCount = 1; diff --git a/examples/nv_ray_tracing_shadows/nv_ray_tracing_shadows.cpp b/examples/nv_ray_tracing_shadows/nv_ray_tracing_shadows.cpp index 0065ba43..676284e8 100644 --- a/examples/nv_ray_tracing_shadows/nv_ray_tracing_shadows.cpp +++ b/examples/nv_ray_tracing_shadows/nv_ray_tracing_shadows.cpp @@ -383,6 +383,7 @@ public: /* Build top-level acceleration structure */ + buildInfo.type = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV; buildInfo.pGeometries = 0; buildInfo.geometryCount = 0; buildInfo.instanceCount = 1;