Author Topic: Motion Blur in Ray Tracing with VK_NV_ray_tracing_motion_blur  (Read 4991 times)

0 Members and 1 Guest are viewing this topic.


  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2921
Motion Blur in Ray Tracing with VK_NV_ray_tracing_motion_blur
« on: September 14, 2021, 12:32:36 PM »
This NVIDIA sample shows the usage of the motion blur extension: VK_NV_ray_tracing_motion_blur
This extension has been introduced in Vulkan 1.2.182 specs.

- ray_tracing_motionblur repo @ github
- VK_NV_ray_tracing_motion_blur specifications
Ray tracing support in the API provides an efficient mechanism to intersect rays against static geometry, but rendering algorithms often want to support motion, which is more efficiently supported with motion-specific algorithms. This extension adds a set of mechanisms to support fast tracing of moving geometry:

A ray pipeline trace call which takes a time parameter

Flags to enable motion support in an acceleration structure

Support for time-varying vertex positions in a geometry

Motion instances to move existing instances over time

The motion represented here is parameterized across a normalized timestep between 0.0 and 1.0. A motion trace using OpTraceRayMotionNV provides a time within that normalized range to be used when intersecting that ray with geometry. The geometry can be provided with motion by a combination of adding a second vertex position for time of 1.0 using VkAccelerationStructureGeometryMotionTrianglesDataNV and providing multiple transforms in the instance using VkAccelerationStructureMotionInstanceNV.

Ray tracing - motion blur - VK_NV_ray_tracing_motion_blur