The members of VkTraceRaysIndirectCommand2KHR have the same meaning as the similarly named parameters of CmdTraceRaysKHR.
Indirect shader binding table buffer parameters must satisfy the same memory alignment and binding requirements as their counterparts in CmdTraceRaysIndirectKHR and CmdTraceRaysKHR.
raygenShaderRecordAddress was queried is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory objectraygenShaderRecordAddress is queried must have been created with the BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR usage flagraygenShaderRecordAddress must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupBaseAlignmentmissShaderBindingTableAddress was queried is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory objectmissShaderBindingTableAddress is queried must have been created with the BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR usage flagmissShaderBindingTableAddress must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupBaseAlignmentmissShaderBindingTableStride must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupHandleAlignmentmissShaderBindingTableStride must be less than or equal to VkPhysicalDeviceRayTracingPipelinePropertiesKHR::maxShaderGroupStridehitShaderBindingTableAddress was queried is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory objecthitShaderBindingTableAddress is queried must have been created with the BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR usage flaghitShaderBindingTableAddress must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupBaseAlignmenthitShaderBindingTableStride must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupHandleAlignmenthitShaderBindingTableStride must be less than or equal to VkPhysicalDeviceRayTracingPipelinePropertiesKHR::maxShaderGroupStridecallableShaderBindingTableAddress was queried is non-sparse then it must be bound completely and contiguously to a single VkDeviceMemory objectcallableShaderBindingTableAddress is queried must have been created with the BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR usage flagcallableShaderBindingTableAddress must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupBaseAlignmentcallableShaderBindingTableStride must be a multiple of VkPhysicalDeviceRayTracingPipelinePropertiesKHR::shaderGroupHandleAlignmentcallableShaderBindingTableStride must be less than or equal to VkPhysicalDeviceRayTracingPipelinePropertiesKHR::maxShaderGroupStrideflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR, hitShaderBindingTableAddress must not be zeroflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR, hitShaderBindingTableAddress must not be zeroflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR, the shader group handle identified by missShaderBindingTableAddress must not be set to zeroflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR, entries in the table identified by hitShaderBindingTableAddress accessed as a result of this command in order to execute an any-hit shader must not be set to zeroflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR, entries in the table identified by hitShaderBindingTableAddress accessed as a result of this command in order to execute a closest hit shader must not be set to zeroflags that included PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR, entries in the table identified by hitShaderBindingTableAddress accessed as a result of this command in order to execute an intersection shader must not be set to zerohitShaderBindingTableAddress accessed by this call from a geometry with a geometryType of GEOMETRY_TYPE_TRIANGLES_KHR must have been created with RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHRhitShaderBindingTableAddress accessed by this call from a geometry with a geometryType of GEOMETRY_TYPE_AABBS_KHR must have been created with RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHRwidth must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[0] × VkPhysicalDeviceLimits::maxComputeWorkGroupSize[0]height must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[1] × VkPhysicalDeviceLimits::maxComputeWorkGroupSize[1]depth must be less than or equal to VkPhysicalDeviceLimits::maxComputeWorkGroupCount[2] × VkPhysicalDeviceLimits::maxComputeWorkGroupSize[2]width × height × depth must be less than or equal to VkPhysicalDeviceRayTracingPipelinePropertiesKHR::maxRayDispatchInvocationCount
struct VkTraceRaysIndirectCommand2KHR {
VkDeviceAddress raygenShaderRecordAddress;
VkDeviceSize raygenShaderRecordSize;
VkDeviceAddress missShaderBindingTableAddress;
VkDeviceSize missShaderBindingTableSize;
VkDeviceSize missShaderBindingTableStride;
VkDeviceAddress hitShaderBindingTableAddress;
VkDeviceSize hitShaderBindingTableSize;
VkDeviceSize hitShaderBindingTableStride;
VkDeviceAddress callableShaderBindingTableAddress;
VkDeviceSize callableShaderBindingTableSize;
VkDeviceSize callableShaderBindingTableStride;
uint32_t width;
uint32_t height;
uint32_t depth;
}
| Modifier and Type | Class and Description |
|---|---|
| public static class | VkTraceRaysIndirectCommand2KHR.
An array of |
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALIGNOF
The struct alignment in bytes. |
| public static final int | CALLABLESHADERBINDINGTABLEADDRESS
The struct member offsets. |
| public static final int | CALLABLESHADERBINDINGTABLESIZE
The struct member offsets. |
| public static final int | CALLABLESHADERBINDINGTABLESTRIDE
The struct member offsets. |
| public static final int | DEPTH
The struct member offsets. |
| public static final int | HEIGHT
The struct member offsets. |
| public static final int | HITSHADERBINDINGTABLEADDRESS
The struct member offsets. |
| public static final int | HITSHADERBINDINGTABLESIZE
The struct member offsets. |
| public static final int | HITSHADERBINDINGTABLESTRIDE
The struct member offsets. |
| public static final int | MISSSHADERBINDINGTABLEADDRESS
The struct member offsets. |
| public static final int | MISSSHADERBINDINGTABLESIZE
The struct member offsets. |
| public static final int | MISSSHADERBINDINGTABLESTRIDE
The struct member offsets. |
| public static final int | RAYGENSHADERRECORDADDRESS
The struct member offsets. |
| public static final int | RAYGENSHADERRECORDSIZE
The struct member offsets. |
| public static final int | SIZEOF
The struct size in bytes. |
| public static final int | WIDTH
The struct member offsets. |
| Access | Constructor and Description |
|---|---|
| protected | |
| public | VkTraceRaysIndirectCommand2KHR(ByteBuffer container)
Creates a |
| Modifier and Type | Method and Description |
|---|---|
| public long | callableShaderBindingTableAddress()
a |
| public VkTraceRaysIndirectCommand2KHR | callableShaderBindingTableAddress(long value)
Sets the specified value to the |
| public long | callableShaderBindingTableSize()
a |
| public VkTraceRaysIndirectCommand2KHR | callableShaderBindingTableSize(long value)
Sets the specified value to the |
| public long | callableShaderBindingTableStride()
a |
| public VkTraceRaysIndirectCommand2KHR | callableShaderBindingTableStride(long value)
Sets the specified value to the |
| public static VkTraceRaysIndirectCommand2KHR | |
| public static VkTraceRaysIndirectCommand2KHR. | calloc(int
the buffer capacity capacity)Returns a new |
| public static VkTraceRaysIndirectCommand2KHR | calloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkTraceRaysIndirectCommand2KHR. | calloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| protected VkTraceRaysIndirectCommand2KHR | create(long
the struct memory address address, ByteBuffer an optional container buffer, to be referenced strongly by the struct instance. container)Implements abstract org. the constructor, but returns the exact type of the Struct subclass.
|
| public static VkTraceRaysIndirectCommand2KHR | |
| public static VkTraceRaysIndirectCommand2KHR | create(long address)
Returns a new |
| public static VkTraceRaysIndirectCommand2KHR. | create(int
the buffer capacity capacity)Returns a new |
| public static VkTraceRaysIndirectCommand2KHR. | create(long
the memory address address, int the buffer capacity capacity)Create a |
| public static VkTraceRaysIndirectCommand2KHR | |
| public static VkTraceRaysIndirectCommand2KHR. | |
| public int | |
| public VkTraceRaysIndirectCommand2KHR | |
| public int | |
| public VkTraceRaysIndirectCommand2KHR | |
| public long | hitShaderBindingTableAddress()
a |
| public VkTraceRaysIndirectCommand2KHR | hitShaderBindingTableAddress(long value)
Sets the specified value to the |
| public long | hitShaderBindingTableSize()
a |
| public VkTraceRaysIndirectCommand2KHR | hitShaderBindingTableSize(long value)
Sets the specified value to the |
| public long | hitShaderBindingTableStride()
a |
| public VkTraceRaysIndirectCommand2KHR | hitShaderBindingTableStride(long value)
Sets the specified value to the |
| public static VkTraceRaysIndirectCommand2KHR | |
| public static VkTraceRaysIndirectCommand2KHR. | malloc(int
the buffer capacity capacity)Returns a new |
| public static VkTraceRaysIndirectCommand2KHR | malloc(MemoryStack
the stack from which to allocate stack)Returns a new |
| public static VkTraceRaysIndirectCommand2KHR. | malloc(int
the buffer capacity capacity, MemoryStack the stack from which to allocate stack)Returns a new |
| public long | missShaderBindingTableAddress()
a |
| public VkTraceRaysIndirectCommand2KHR | missShaderBindingTableAddress(long value)
Sets the specified value to the |
| public long | missShaderBindingTableSize()
a |
| public VkTraceRaysIndirectCommand2KHR | missShaderBindingTableSize(long value)
Sets the specified value to the |
| public long | missShaderBindingTableStride()
a |
| public VkTraceRaysIndirectCommand2KHR | missShaderBindingTableStride(long value)
Sets the specified value to the |
| public static long | |
| public static void | ncallableShaderBindingTableAddress(long struct, long value)
Unsafe version of |
| public static long | |
| public static void | ncallableShaderBindingTableSize(long struct, long value)
Unsafe version of |
| public static long | |
| public static void | ncallableShaderBindingTableStride(long struct, long value)
Unsafe version of |
| public static int | |
| public static void | |
| public static int | |
| public static void | |
| public static long | |
| public static void | nhitShaderBindingTableAddress(long struct, long value)
Unsafe version of |
| public static long | |
| public static void | |
| public static long | |
| public static void | |
| public static long | |
| public static void | nmissShaderBindingTableAddress(long struct, long value)
Unsafe version of |
| public static long | |
| public static void | |
| public static long | |
| public static void | nmissShaderBindingTableStride(long struct, long value)
Unsafe version of |
| public static long | |
| public static void | |
| public static long | |
| public static void | |
| public static int | |
| public static void | |
| public long | raygenShaderRecordAddress()
a |
| public VkTraceRaysIndirectCommand2KHR | raygenShaderRecordAddress(long value)
Sets the specified value to the |
| public long | raygenShaderRecordSize()
a |
| public VkTraceRaysIndirectCommand2KHR | |
| public VkTraceRaysIndirectCommand2KHR | set(long raygenShaderRecordAddress, long raygenShaderRecordSize, long missShaderBindingTableAddress, long missShaderBindingTableSize, long missShaderBindingTableStride, long hitShaderBindingTableAddress, long hitShaderBindingTableSize, long hitShaderBindingTableStride, long callableShaderBindingTableAddress, long callableShaderBindingTableSize, long callableShaderBindingTableStride, int width, int height, int depth)
Initializes this struct with the specified values. |
| public VkTraceRaysIndirectCommand2KHR | Returns: this structthe source struct src)Copies the specified struct data to this struct. |
| public int | |
| public int | |
| public VkTraceRaysIndirectCommand2KHR |