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
,NativeResource
,Pointer
public class VkPhysicalDeviceRayTracingPropertiesNV
extends Struct<VkPhysicalDeviceRayTracingPropertiesNV>
implements 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)
sType
must 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
Modifier and TypeClassDescriptionstatic class
An array ofVkPhysicalDeviceRayTracingPropertiesNV
structs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
Struct.StructValidation
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The struct alignment in bytes.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct size in bytes.static final int
The struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
-
Constructor Summary
ConstructorDescriptionVkPhysicalDeviceRayTracingPropertiesNV
(ByteBuffer container) Creates aVkPhysicalDeviceRayTracingPropertiesNV
instance at the current position of the specifiedByteBuffer
container. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withmemCalloc
.calloc
(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withmemCalloc
.calloc
(int capacity, MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.calloc
(MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.Deprecated.callocStack
(int capacity) Deprecated.callocStack
(int capacity, MemoryStack stack) Deprecated.callocStack
(MemoryStack stack) Deprecated.create()
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withBufferUtils
.create
(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withBufferUtils
.create
(long address) Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance for the specified memory address.create
(long address, int capacity) Create aVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance at the specified memory.createSafe
(long address) createSafe
(long address, int capacity) malloc()
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withmemAlloc
.malloc
(int capacity) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withmemAlloc
.malloc
(int capacity, MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated on the specifiedMemoryStack
.malloc
(MemoryStack stack) Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated on the specifiedMemoryStack
.Deprecated.mallocStack
(int capacity) Deprecated.mallocStack
(int capacity, MemoryStack stack) Deprecated.mallocStack
(MemoryStack stack) Deprecated.int
the maximum number of acceleration structure descriptors that are allowed in a descriptor set.long
the maximum number of geometries in the bottom level acceleration structure.long
the maximum number of instances in the top level acceleration structure.int
the maximum number of levels of recursion allowed in a trace command.int
the maximum stride in bytes allowed between shader groups in the shader binding table.long
the maximum number of triangles in all geometries in the bottom level acceleration structure.static int
nmaxDescriptorSetAccelerationStructures
(long struct) Unsafe version ofmaxDescriptorSetAccelerationStructures()
.static long
nmaxGeometryCount
(long struct) Unsafe version ofmaxGeometryCount()
.static long
nmaxInstanceCount
(long struct) Unsafe version ofmaxInstanceCount()
.static int
nmaxRecursionDepth
(long struct) Unsafe version ofmaxRecursionDepth()
.static int
nmaxShaderGroupStride
(long struct) Unsafe version ofmaxShaderGroupStride()
.static long
nmaxTriangleCount
(long struct) Unsafe version ofmaxTriangleCount()
.static long
npNext
(long struct) Unsafe version ofpNext()
.static void
npNext
(long struct, long value) Unsafe version ofpNext
.static int
nshaderGroupBaseAlignment
(long struct) Unsafe version ofshaderGroupBaseAlignment()
.static int
nshaderGroupHandleSize
(long struct) Unsafe version ofshaderGroupHandleSize()
.static int
nsType
(long struct) Unsafe version ofsType()
.static void
nsType
(long struct, int value) Unsafe version ofsType
.long
pNext()
NULL
or 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.int
the required alignment in bytes for the base of the shader binding table.int
the size in bytes of the shader header.int
sizeof()
Returnssizeof(struct)
.int
sType()
aVkStructureType
value identifying this structure.sType
(int value) Sets the specified value to thesType()
field.Sets theSTRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV
value to thesType()
field.Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
Methods 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 aVkPhysicalDeviceRayTracingPropertiesNV
instance at the current position of the specifiedByteBuffer
container. 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()Description copied from class:Struct
Returnssizeof(struct)
.- Specified by:
sizeof
in classStruct<VkPhysicalDeviceRayTracingPropertiesNV>
-
sType
public int sType()aVkStructureType
value identifying this structure. -
pNext
public long pNext()NULL
or 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_NV
value 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 newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withmemAlloc
. The instance must be explicitly freed. -
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withmemCalloc
. The instance must be explicitly freed. -
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated withBufferUtils
. -
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
Create aVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
@Nullable public static 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.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)
instead. -
callocStack
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, MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)
instead. -
callocStack
@Deprecated public static VkPhysicalDeviceRayTracingPropertiesNV.Buffer callocStack(int capacity, MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)
instead. -
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
malloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
capacity
- the buffer capacitystack
- the stack from which to allocate
-
calloc
Returns a newVkPhysicalDeviceRayTracingPropertiesNV.Buffer
instance allocated on the specifiedMemoryStack
and 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
.
-