Package org.lwjgl.vulkan
Class NVRayTracingMotionBlur
- java.lang.Object
-
- org.lwjgl.vulkan.NVRayTracingMotionBlur
-
public final class NVRayTracingMotionBlur extends java.lang.ObjectRay 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
OpTraceRayMotionNVprovides 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 usingVkAccelerationStructureGeometryMotionTrianglesDataNVand providing multiple transforms in the instance usingVkAccelerationStructureMotionInstanceNV.VK_NV_ray_tracing_motion_blur
- Name String
VK_NV_ray_tracing_motion_blur- Extension Type
- Device extension
- Registered Extension Number
- 328
- Revision
- 1
- Extension and Version Dependencies
- Requires Vulkan 1.0
- Requires
VK_KHR_ray_tracing_pipeline
- Contact
- Eric Werness
Other Extension Metadata
- Last Modified Date
- 2021-06-16
- Interactions and External Dependencies
- This extension requires
SPV_NV_ray_tracing_motion_blur - This extension provides API support for
GL_NV_ray_tracing_motion_blur
- This extension requires
- Contributors
- Eric Werness, NVIDIA
- Ashwin Lele, NVIDIA
-
-
Field Summary
-
-
-
Field Detail
-
VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION
The extension specification version.
-
VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME
The extension name.
-
VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV, VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV
-
VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV
ExtendsVkBuildAccelerationStructureFlagBitsKHR.
-
VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV
ExtendsVkAccelerationStructureCreateFlagBitsKHR.
-
VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV
ExtendsVkPipelineCreateFlagBits.
-
VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV, VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV, VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV
VkAccelerationStructureMotionInstanceTypeNV - Enum specifying a type of acceleration structure motion instance data for building into an acceleration structure geometryDescription
ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NVspecifies that the instance is a static instance with no instance motion.ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NVspecifies that the instance is a motion instance with motion specified by interpolation between two matrices.ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NVspecifies that the instance is a motion instance with motion specified by interpolation in the SRT decomposition.
See Also
-
-