Top Description Fields Constructors Methods
org.lwjgl.vulkan

public Class KHRRayTracingMaintenance1

extends Object
Class Inheritance
Imports
org.lwjgl.system.*

VK_KHR_ray_tracing_maintenance1 adds a collection of minor ray tracing features, none of which would warrant an entire extension of their own.

The new features are as follows:

VK_KHR_ray_tracing_maintenance1
Name String
VK_KHR_ray_tracing_maintenance1
Extension Type
Device extension
Registered Extension Number
387
Revision
1
Extension and Version Dependencies
VK_KHR_acceleration_structure
Contact
Other Extension Metadata
Last Modified Date
2022-02-21
Interactions and External Dependencies
Contributors
  • Stu Smith, AMD
  • Tobias Hector, AMD
  • Marius Bjorge, Arm
  • Tom Olson, Arm
  • Yuriy O’Donnell, Epic Games
  • Yunpeng Zhu, Huawei
  • Andrew Garrard, Imagination
  • Dae Kim, Imagination
  • Joshua Barczak, Intel
  • Lionel Landwerlin, Intel
  • Daniel Koch, NVIDIA
  • Eric Werness, NVIDIA
  • Spencer Fricke, Samsung

Field Summary

Modifier and TypeField and Description
public static final long
public static final String
public static final int
VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION

The extension specification version.

public static final long
public static final int
public static final int
public static final int

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static void
vkCmdTraceRaysIndirect2KHR(VkCommandBuffer
the command buffer into which the command will be recorded.
commandBuffer
,
long
a buffer device address which is a pointer to a VkTraceRaysIndirectCommand2KHR structure containing the trace ray parameters.
indirectDeviceAddress
)

Initialize an indirect ray tracing dispatch with indirect shader binding tables.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHRback to summary
public static final long VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR

Extends VkAccessFlagBits2.

VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAMEback to summary
public static final String VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME

The extension name.

VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSIONback to summary
public static final int VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION

The extension specification version.

VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHRback to summary
public static final long VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR

Extends VkPipelineStageFlagBits2.

VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHRback to summary
public static final int VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR

Extends VkQueryType.

Enum values:
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHRback to summary
public static final int VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR

Extends VkQueryType.

Enum values:
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHRback to summary
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR

Extends VkStructureType.

Constructor Detail

KHRRayTracingMaintenance1back to summary
protected KHRRayTracingMaintenance1()

Method Detail

vkCmdTraceRaysIndirect2KHRback to summary
public static void vkCmdTraceRaysIndirect2KHR(VkCommandBuffer commandBuffer, long indirectDeviceAddress)

Initialize an indirect ray tracing dispatch with indirect shader binding tables.

C Specification

To dispatch ray tracing, with some parameters sourced on the device, use:


void vkCmdTraceRaysIndirect2KHR(
    VkCommandBuffer                             commandBuffer,
    VkDeviceAddress                             indirectDeviceAddress);
Description

vkCmdTraceRaysIndirect2KHR behaves similarly to CmdTraceRaysIndirectKHR except that shader binding table parameters as well as dispatch dimensions are read by the device from indirectDeviceAddress during execution.

Valid Usage
  • This command must not cause a shader call instruction to be executed from a shader invocation with a recursion depth greater than the value of maxPipelineRayRecursionDepth used to create the bound ray tracing pipeline
  • commandBuffer must not be a protected command buffer
Valid Usage (Implicit)
  • commandBuffer must be a valid VkCommandBuffer handle
  • commandBuffer must be in the recording state
  • The VkCommandPool that commandBuffer was allocated from must support compute operations
  • This command must only be called outside of a render pass instance
  • This command must only be called outside of a video coding scope
Host Synchronization
  • Host access to commandBuffer must be externally synchronized
  • Host access to the VkCommandPool that commandBuffer was allocated from must be externally synchronized
Command Properties
Command Buffer LevelsRender Pass ScopeVideo Coding ScopeSupported Queue TypesCommand Type
Primary SecondaryOutsideOutsideComputeAction
Parameters
commandBuffer:VkCommandBuffer

the command buffer into which the command will be recorded.

indirectDeviceAddress:long

a buffer device address which is a pointer to a VkTraceRaysIndirectCommand2KHR structure containing the trace ray parameters.