diff --git a/README.md b/README.md index 713f7fc..d129289 100644 --- a/README.md +++ b/README.md @@ -41,3 +41,5 @@ Tutorial | Details ![img](ray_tracing_intersection/images/intersection.png) | [Intersectiom Shader](ray_tracing_intersection)
Adding thousands of implicit primitives and using an intersection shader to render spheres and cubes. The tutorial explains what is needed to get procedural hit group working. Intersection Shader. Sphere intersection. Axis aligned bounding box intersection. ![img](ray_tracing_callable/images/callable.png) | [Callable Shader](ray_tracing_callable)
Replacing if/else by callable shaders. The code to execute the lighting is done in separate callable shaders instead of been part of the code. Adding multiple callable shaders. Calling ExecuteCallableEXT from the closest hit shader. ![img](ray_tracing_rayquery/images/rayquery.png) | [Ray Query](ray_tracing_rayquery)
Invoking ray intersection queries directly from the fragment shader to cast shadow rays. Ray tracing directly from the fragment shader. +![img](ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR_2.png) | [glTF Scene](ray_tracing_gltf)
Instead of loading separated OBJ objects, the example was modified to load glTF scene files containing multiple objects. This example is not about shading, but using more complex data than OBJ. +![img](ray_tracing__advance/images/ray_tracing__advance.png) | [Advance](ray_tracing__advance)
An example combining most of the above samples in a single application. diff --git a/ray_tracing_gltf/README.md b/ray_tracing_gltf/README.md index 857d2ba..75a03c9 100644 --- a/ray_tracing_gltf/README.md +++ b/ray_tracing_gltf/README.md @@ -1,11 +1,19 @@ # NVIDIA Vulkan Ray Tracing Tutorial - glTF Scene +![img](images/vk_ray_tracing_gltf_KHR.png) + + This example is the result of the modification of the [simple ray tracing](../ray_tracing__simple) tutorial. Instead of loading separated OBJ objects, the example was modified to load glTF scene files containing multiple objects. This example is not about shading, but using more complex data than OBJ. -![img](../docs/Images/vk_ray_tracing_gltf_KHR.png) +For a more complete version, see + +* https://github.com/nvpro-samples/vk_raytrace +* https://github.com/nvpro-samples/vk_shaded_gltfscene + + ## Scene Data @@ -290,7 +298,7 @@ Before doing this, we will modify the application to send the current rendering samples. -![img](../docs/Images/vk_ray_tracing_gltf_KHR_2.png) +![img](images/vk_ray_tracing_gltf_KHR_2.png) Add the following two functions in `hello_vulkan.cpp`: diff --git a/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR.png b/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR.png new file mode 100644 index 0000000..ab21864 Binary files /dev/null and b/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR.png differ diff --git a/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR_2.png b/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR_2.png new file mode 100644 index 0000000..a5aeed1 Binary files /dev/null and b/ray_tracing_gltf/images/vk_ray_tracing_gltf_KHR_2.png differ