Package org.lwjgl.vulkan
Class VkPhysicalDeviceRayTracingPipelineFeaturesKHR
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>
org.lwjgl.vulkan.VkPhysicalDeviceRayTracingPipelineFeaturesKHR
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceRayTracingPipelineFeaturesKHR
extends org.lwjgl.system.Struct<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>
implements org.lwjgl.system.NativeResource
Structure describing the ray tracing features that can be supported by an implementation.
Description
If the VkPhysicalDeviceRayTracingPipelineFeaturesKHR structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to GetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDeviceRayTracingPipelineFeaturesKHR can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.
Valid Usage
- If
rayTracingPipelineShaderGroupHandleCaptureReplayMixedisTRUE,rayTracingPipelineShaderGroupHandleCaptureReplaymust also beTRUE
Valid Usage (Implicit)
Layout
struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR {
VkStructureType sType();
void * pNext();
VkBool32 rayTracingPipeline();
VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay();
VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed();
VkBool32 rayTracingPipelineTraceRaysIndirect();
VkBool32 rayTraversalPrimitiveCulling();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPhysicalDeviceRayTracingPipelineFeaturesKHRstructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionCreates aVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.create()Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withBufferUtils.create(int capacity) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance for the specified memory address.create(long address, int capacity) Create aVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance at the specified memory.static @Nullable VkPhysicalDeviceRayTracingPipelineFeaturesKHRcreateSafe(long address) static @Nullable VkPhysicalDeviceRayTracingPipelineFeaturesKHR.BuffercreateSafe(long address, int capacity) malloc()Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated on the specifiedMemoryStack.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnrayTracingPipeline(long struct) Unsafe version ofrayTracingPipeline().static voidnrayTracingPipeline(long struct, int value) Unsafe version ofrayTracingPipeline.static intnrayTracingPipelineShaderGroupHandleCaptureReplay(long struct) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplay().static voidnrayTracingPipelineShaderGroupHandleCaptureReplay(long struct, int value) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplay.static intUnsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplayMixed().static voidnrayTracingPipelineShaderGroupHandleCaptureReplayMixed(long struct, int value) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplayMixed.static intnrayTracingPipelineTraceRaysIndirect(long struct) Unsafe version ofrayTracingPipelineTraceRaysIndirect().static voidnrayTracingPipelineTraceRaysIndirect(long struct, int value) Unsafe version ofrayTracingPipelineTraceRaysIndirect.static intnrayTraversalPrimitiveCulling(long struct) Unsafe version ofrayTraversalPrimitiveCulling().static voidnrayTraversalPrimitiveCulling(long struct, int value) Unsafe version ofrayTraversalPrimitiveCulling.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.booleanindicates whether the implementation supports the ray tracing pipeline functionality.rayTracingPipeline(boolean value) Sets the specified value to therayTracingPipeline()field.booleanindicates whether the implementation supports saving and reusing shader group handles, e.g.rayTracingPipelineShaderGroupHandleCaptureReplay(boolean value) Sets the specified value to therayTracingPipelineShaderGroupHandleCaptureReplay()field.booleanindicates whether the implementation supports reuse of shader group handles being arbitrarily mixed with creation of non-reused shader group handles.rayTracingPipelineShaderGroupHandleCaptureReplayMixed(boolean value) Sets the specified value to therayTracingPipelineShaderGroupHandleCaptureReplayMixed()field.booleanindicates whether the implementation supports indirect ray tracing commands, e.g.rayTracingPipelineTraceRaysIndirect(boolean value) Sets the specified value to therayTracingPipelineTraceRaysIndirect()field.booleanindicates whether the implementation supports primitive culling during ray traversal.rayTraversalPrimitiveCulling(boolean value) Sets the specified value to therayTraversalPrimitiveCulling()field.set(int sType, long pNext, boolean rayTracingPipeline, boolean rayTracingPipelineShaderGroupHandleCaptureReplay, boolean rayTracingPipelineShaderGroupHandleCaptureReplayMixed, boolean rayTracingPipelineTraceRaysIndirect, boolean rayTraversalPrimitiveCulling) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHRvalue to thesType()field.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
RAYTRACINGPIPELINE
public static final int RAYTRACINGPIPELINEThe struct member offsets. -
RAYTRACINGPIPELINESHADERGROUPHANDLECAPTUREREPLAY
public static final int RAYTRACINGPIPELINESHADERGROUPHANDLECAPTUREREPLAYThe struct member offsets. -
RAYTRACINGPIPELINESHADERGROUPHANDLECAPTUREREPLAYMIXED
public static final int RAYTRACINGPIPELINESHADERGROUPHANDLECAPTUREREPLAYMIXEDThe struct member offsets. -
RAYTRACINGPIPELINETRACERAYSINDIRECT
public static final int RAYTRACINGPIPELINETRACERAYSINDIRECTThe struct member offsets. -
RAYTRAVERSALPRIMITIVECULLING
public static final int RAYTRAVERSALPRIMITIVECULLINGThe struct member offsets.
-
-
Constructor Details
-
VkPhysicalDeviceRayTracingPipelineFeaturesKHR
Creates aVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
rayTracingPipeline
public boolean rayTracingPipeline()indicates whether the implementation supports the ray tracing pipeline functionality. See Ray Tracing. -
rayTracingPipelineShaderGroupHandleCaptureReplay
public boolean rayTracingPipelineShaderGroupHandleCaptureReplay()indicates whether the implementation supports saving and reusing shader group handles, e.g. for trace capture and replay. -
rayTracingPipelineShaderGroupHandleCaptureReplayMixed
public boolean rayTracingPipelineShaderGroupHandleCaptureReplayMixed()indicates whether the implementation supports reuse of shader group handles being arbitrarily mixed with creation of non-reused shader group handles. If this isFALSE, all reused shader group handles must be specified before any non-reused handles may be created. -
rayTracingPipelineTraceRaysIndirect
public boolean rayTracingPipelineTraceRaysIndirect()indicates whether the implementation supports indirect ray tracing commands, e.g.CmdTraceRaysIndirectKHR. -
rayTraversalPrimitiveCulling
public boolean rayTraversalPrimitiveCulling()indicates whether the implementation supports primitive culling during ray traversal. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHRvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
rayTracingPipeline
Sets the specified value to therayTracingPipeline()field. -
rayTracingPipelineShaderGroupHandleCaptureReplay
public VkPhysicalDeviceRayTracingPipelineFeaturesKHR rayTracingPipelineShaderGroupHandleCaptureReplay(boolean value) Sets the specified value to therayTracingPipelineShaderGroupHandleCaptureReplay()field. -
rayTracingPipelineShaderGroupHandleCaptureReplayMixed
public VkPhysicalDeviceRayTracingPipelineFeaturesKHR rayTracingPipelineShaderGroupHandleCaptureReplayMixed(boolean value) Sets the specified value to therayTracingPipelineShaderGroupHandleCaptureReplayMixed()field. -
rayTracingPipelineTraceRaysIndirect
public VkPhysicalDeviceRayTracingPipelineFeaturesKHR rayTracingPipelineTraceRaysIndirect(boolean value) Sets the specified value to therayTracingPipelineTraceRaysIndirect()field. -
rayTraversalPrimitiveCulling
Sets the specified value to therayTraversalPrimitiveCulling()field. -
set
public VkPhysicalDeviceRayTracingPipelineFeaturesKHR set(int sType, long pNext, boolean rayTracingPipeline, boolean rayTracingPipelineShaderGroupHandleCaptureReplay, boolean rayTracingPipelineShaderGroupHandleCaptureReplayMixed, boolean rayTracingPipelineTraceRaysIndirect, boolean rayTraversalPrimitiveCulling) Initializes this struct with the specified values. -
set
public VkPhysicalDeviceRayTracingPipelineFeaturesKHR set(VkPhysicalDeviceRayTracingPipelineFeaturesKHR src) Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated withBufferUtils. -
create
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPhysicalDeviceRayTracingPipelineFeaturesKHR.Buffer create(long address, int capacity) Create aVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPhysicalDeviceRayTracingPipelineFeaturesKHR.Buffer createSafe(long address, int capacity) -
malloc
public static VkPhysicalDeviceRayTracingPipelineFeaturesKHR malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceRayTracingPipelineFeaturesKHR calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceRayTracingPipelineFeaturesKHR.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceRayTracingPipelineFeaturesKHR.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPipelineFeaturesKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
nrayTracingPipeline
public static int nrayTracingPipeline(long struct) Unsafe version ofrayTracingPipeline(). -
nrayTracingPipelineShaderGroupHandleCaptureReplay
public static int nrayTracingPipelineShaderGroupHandleCaptureReplay(long struct) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplay(). -
nrayTracingPipelineShaderGroupHandleCaptureReplayMixed
public static int nrayTracingPipelineShaderGroupHandleCaptureReplayMixed(long struct) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplayMixed(). -
nrayTracingPipelineTraceRaysIndirect
public static int nrayTracingPipelineTraceRaysIndirect(long struct) Unsafe version ofrayTracingPipelineTraceRaysIndirect(). -
nrayTraversalPrimitiveCulling
public static int nrayTraversalPrimitiveCulling(long struct) Unsafe version ofrayTraversalPrimitiveCulling(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
nrayTracingPipeline
public static void nrayTracingPipeline(long struct, int value) Unsafe version ofrayTracingPipeline. -
nrayTracingPipelineShaderGroupHandleCaptureReplay
public static void nrayTracingPipelineShaderGroupHandleCaptureReplay(long struct, int value) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplay. -
nrayTracingPipelineShaderGroupHandleCaptureReplayMixed
public static void nrayTracingPipelineShaderGroupHandleCaptureReplayMixed(long struct, int value) Unsafe version ofrayTracingPipelineShaderGroupHandleCaptureReplayMixed. -
nrayTracingPipelineTraceRaysIndirect
public static void nrayTracingPipelineTraceRaysIndirect(long struct, int value) Unsafe version ofrayTracingPipelineTraceRaysIndirect. -
nrayTraversalPrimitiveCulling
public static void nrayTraversalPrimitiveCulling(long struct, int value) Unsafe version ofrayTraversalPrimitiveCulling.
-