Package org.lwjgl.vulkan
Class VkPhysicalDeviceRayTracingPropertiesNV
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPhysicalDeviceRayTracingPropertiesNV>
org.lwjgl.vulkan.VkPhysicalDeviceRayTracingPropertiesNV
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPhysicalDeviceRayTracingPropertiesNV
extends org.lwjgl.system.Struct<VkPhysicalDeviceRayTracingPropertiesNV>
implements org.lwjgl.system.NativeResource
Properties of the physical device for ray tracing.
Description
Due to the fact that the geometry, instance, and triangle counts are specified at acceleration structure creation as 32-bit values, maxGeometryCount, maxInstanceCount, and maxTriangleCount must not exceed 232-1.
If the VkPhysicalDeviceRayTracingPropertiesNV structure is included in the pNext chain of the VkPhysicalDeviceProperties2 structure passed to GetPhysicalDeviceProperties2, it is filled in with each corresponding implementation-dependent property.
Limits specified by this structure must match those specified with the same name in VkPhysicalDeviceAccelerationStructurePropertiesKHR and VkPhysicalDeviceRayTracingPipelinePropertiesKHR.
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV
Layout
struct VkPhysicalDeviceRayTracingPropertiesNV {
VkStructureType sType();
void * pNext();
uint32_t shaderGroupHandleSize();
uint32_t maxRecursionDepth();
uint32_t maxShaderGroupStride();
uint32_t shaderGroupBaseAlignment();
uint64_t maxGeometryCount();
uint64_t maxInstanceCount();
uint64_t maxTriangleCount();
uint32_t maxDescriptorSetAccelerationStructures();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPhysicalDeviceRayTracingPropertiesNVstructs.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 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
ConstructorsConstructorDescriptionVkPhysicalDeviceRayTracingPropertiesNV(ByteBuffer container) Creates aVkPhysicalDeviceRayTracingPropertiesNVinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.Deprecated.callocStack(int capacity) Deprecated.callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.create()Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withBufferUtils.create(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance for the specified memory address.create(long address, int capacity) Create aVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance at the specified memory.static @Nullable VkPhysicalDeviceRayTracingPropertiesNVcreateSafe(long address) static @Nullable VkPhysicalDeviceRayTracingPropertiesNV.BuffercreateSafe(long address, int capacity) malloc()Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated on the specifiedMemoryStack.Deprecated.mallocStack(int capacity) Deprecated.mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.intthe maximum number of acceleration structure descriptors that are allowed in a descriptor set.longthe maximum number of geometries in the bottom level acceleration structure.longthe maximum number of instances in the top level acceleration structure.intthe maximum number of levels of recursion allowed in a trace command.intthe maximum stride in bytes allowed between shader groups in the shader binding table.longthe maximum number of triangles in all geometries in the bottom level acceleration structure.static intnmaxDescriptorSetAccelerationStructures(long struct) Unsafe version ofmaxDescriptorSetAccelerationStructures().static longnmaxGeometryCount(long struct) Unsafe version ofmaxGeometryCount().static longnmaxInstanceCount(long struct) Unsafe version ofmaxInstanceCount().static intnmaxRecursionDepth(long struct) Unsafe version ofmaxRecursionDepth().static intnmaxShaderGroupStride(long struct) Unsafe version ofmaxShaderGroupStride().static longnmaxTriangleCount(long struct) Unsafe version ofmaxTriangleCount().static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnshaderGroupBaseAlignment(long struct) Unsafe version ofshaderGroupBaseAlignment().static intnshaderGroupHandleSize(long struct) Unsafe version ofshaderGroupHandleSize().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.set(int sType, long pNext) Initializes this struct with the specified values.Copies the specified struct data to this struct.intthe required alignment in bytes for the base of the shader binding table.intthe size in bytes of the shader header.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NVvalue 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. -
SHADERGROUPHANDLESIZE
public static final int SHADERGROUPHANDLESIZEThe struct member offsets. -
MAXRECURSIONDEPTH
public static final int MAXRECURSIONDEPTHThe struct member offsets. -
MAXSHADERGROUPSTRIDE
public static final int MAXSHADERGROUPSTRIDEThe struct member offsets. -
SHADERGROUPBASEALIGNMENT
public static final int SHADERGROUPBASEALIGNMENTThe struct member offsets. -
MAXGEOMETRYCOUNT
public static final int MAXGEOMETRYCOUNTThe struct member offsets. -
MAXINSTANCECOUNT
public static final int MAXINSTANCECOUNTThe struct member offsets. -
MAXTRIANGLECOUNT
public static final int MAXTRIANGLECOUNTThe struct member offsets. -
MAXDESCRIPTORSETACCELERATIONSTRUCTURES
public static final int MAXDESCRIPTORSETACCELERATIONSTRUCTURESThe struct member offsets.
-
-
Constructor Details
-
VkPhysicalDeviceRayTracingPropertiesNV
Creates aVkPhysicalDeviceRayTracingPropertiesNVinstance 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<VkPhysicalDeviceRayTracingPropertiesNV>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
shaderGroupHandleSize
public int shaderGroupHandleSize()the size in bytes of the shader header. -
maxRecursionDepth
public int maxRecursionDepth()the maximum number of levels of recursion allowed in a trace command. -
maxShaderGroupStride
public int maxShaderGroupStride()the maximum stride in bytes allowed between shader groups in the shader binding table. -
shaderGroupBaseAlignment
public int shaderGroupBaseAlignment()the required alignment in bytes for the base of the shader binding table. -
maxGeometryCount
public long maxGeometryCount()the maximum number of geometries in the bottom level acceleration structure. -
maxInstanceCount
public long maxInstanceCount()the maximum number of instances in the top level acceleration structure. -
maxTriangleCount
public long maxTriangleCount()the maximum number of triangles in all geometries in the bottom level acceleration structure. -
maxDescriptorSetAccelerationStructures
public int maxDescriptorSetAccelerationStructures()the maximum number of acceleration structure descriptors that are allowed in a descriptor set. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NVvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
set
Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated withBufferUtils. -
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPhysicalDeviceRayTracingPropertiesNV.Buffer createSafe(long address, int capacity) -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
@Deprecated public static VkPhysicalDeviceRayTracingPropertiesNV mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkPhysicalDeviceRayTracingPropertiesNV callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkPhysicalDeviceRayTracingPropertiesNV.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
@Deprecated public static VkPhysicalDeviceRayTracingPropertiesNV.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPhysicalDeviceRayTracingPropertiesNV.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPhysicalDeviceRayTracingPropertiesNV.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.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(). -
nshaderGroupHandleSize
public static int nshaderGroupHandleSize(long struct) Unsafe version ofshaderGroupHandleSize(). -
nmaxRecursionDepth
public static int nmaxRecursionDepth(long struct) Unsafe version ofmaxRecursionDepth(). -
nmaxShaderGroupStride
public static int nmaxShaderGroupStride(long struct) Unsafe version ofmaxShaderGroupStride(). -
nshaderGroupBaseAlignment
public static int nshaderGroupBaseAlignment(long struct) Unsafe version ofshaderGroupBaseAlignment(). -
nmaxGeometryCount
public static long nmaxGeometryCount(long struct) Unsafe version ofmaxGeometryCount(). -
nmaxInstanceCount
public static long nmaxInstanceCount(long struct) Unsafe version ofmaxInstanceCount(). -
nmaxTriangleCount
public static long nmaxTriangleCount(long struct) Unsafe version ofmaxTriangleCount(). -
nmaxDescriptorSetAccelerationStructures
public static int nmaxDescriptorSetAccelerationStructures(long struct) Unsafe version ofmaxDescriptorSetAccelerationStructures(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext.
-