Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkAccelerationStructureGeometryTrianglesDataKHR

extends Struct<VkAccelerationStructureGeometryTrianglesDataKHR>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure specifying a triangle geometry in a bottom-level acceleration structure.
Description
Note

Unlike the stride for vertex buffers in VkVertexInputBindingDescription for graphics pipelines which must not exceed maxVertexInputBindingStride, vertexStride for acceleration structure geometry is instead restricted to being a 32-bit value.

Valid Usage
Valid Usage (Implicit)
See Also

VkAccelerationStructureGeometryDataKHR, VkDeviceOrHostAddressConstKHR

Layout


struct VkAccelerationStructureGeometryTrianglesDataKHR {
    VkStructureType sType;
    void const * pNext;
    VkFormat vertexFormat;
    VkDeviceOrHostAddressConstKHR vertexData;
    VkDeviceSize vertexStride;
    uint32_t maxVertex;
    VkIndexType indexType;
    VkDeviceOrHostAddressConstKHR indexData;
    VkDeviceOrHostAddressConstKHR transformData;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
INDEXDATA

The struct member offsets.

public static final int
INDEXTYPE

The struct member offsets.

public static final int
MAXVERTEX

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
STYPE

The struct member offsets.

public static final int
TRANSFORMDATA

The struct member offsets.

public static final int
VERTEXDATA

The struct member offsets.

public static final int
VERTEXFORMAT

The struct member offsets.

public static final int
VERTEXSTRIDE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
public
VkAccelerationStructureGeometryTrianglesDataKHR(ByteBuffer container)

Creates a VkAccelerationStructureGeometryTrianglesDataKHR instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkAccelerationStructureGeometryTrianglesDataKHR
calloc()

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance allocated with memCalloc.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance allocated with memCalloc.

public static VkAccelerationStructureGeometryTrianglesDataKHR
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

protected VkAccelerationStructureGeometryTrianglesDataKHR
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkAccelerationStructureGeometryTrianglesDataKHR
create()

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance allocated with BufferUtils.

public static VkAccelerationStructureGeometryTrianglesDataKHR
create(long address)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance for the specified memory address.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance allocated with BufferUtils.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance at the specified memory.

public static VkAccelerationStructureGeometryTrianglesDataKHR
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public VkDeviceOrHostAddressConstKHR
indexData()

a device or host address to memory containing index data for this geometry.

public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
indexData(Consumer<VkDeviceOrHostAddressConstKHR> consumer)

Passes the indexData field to the specified Consumer.

public int
indexType()

the VkIndexType of each index element.

public VkAccelerationStructureGeometryTrianglesDataKHR
indexType(int value)

Sets the specified value to the indexType field.

public static VkAccelerationStructureGeometryTrianglesDataKHR
malloc()

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance allocated with memAlloc.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance allocated with memAlloc.

public static VkAccelerationStructureGeometryTrianglesDataKHR
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR instance allocated on the specified MemoryStack.

public static VkAccelerationStructureGeometryTrianglesDataKHR.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkAccelerationStructureGeometryTrianglesDataKHR.Buffer instance allocated on the specified MemoryStack.

public int
maxVertex()

the highest index of a vertex that will be addressed by a build command using this structure.

public VkAccelerationStructureGeometryTrianglesDataKHR
maxVertex(int value)

Sets the specified value to the maxVertex field.

public static VkDeviceOrHostAddressConstKHR
nindexData(long struct)

Unsafe version of indexData.

public static void
nindexData(long struct, VkDeviceOrHostAddressConstKHR value)

Unsafe version of indexData.

public static int
nindexType(long struct)

Unsafe version of indexType.

public static void
nindexType(long struct, int value)

Unsafe version of indexType.

public static int
nmaxVertex(long struct)

Unsafe version of maxVertex.

public static void
nmaxVertex(long struct, int value)

Unsafe version of maxVertex.

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public static VkDeviceOrHostAddressConstKHR
ntransformData(long struct)

Unsafe version of transformData.

public static void
ntransformData(long struct, VkDeviceOrHostAddressConstKHR value)

Unsafe version of transformData.

public static VkDeviceOrHostAddressConstKHR
nvertexData(long struct)

Unsafe version of vertexData.

public static void
nvertexData(long struct, VkDeviceOrHostAddressConstKHR value)

Unsafe version of vertexData.

public static int
nvertexFormat(long struct)

Unsafe version of vertexFormat.

public static void
nvertexFormat(long struct, int value)

Unsafe version of vertexFormat.

public static long
nvertexStride(long struct)

Unsafe version of vertexStride.

public static void
nvertexStride(long struct, long value)

Unsafe version of vertexStride.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkAccelerationStructureGeometryTrianglesDataKHR
pNext(long value)

Sets the specified value to the pNext field.

public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
set(int sType, long pNext, int vertexFormat, VkDeviceOrHostAddressConstKHR vertexData, long vertexStride, int maxVertex, int indexType, VkDeviceOrHostAddressConstKHR indexData, VkDeviceOrHostAddressConstKHR transformData)

Initializes this struct with the specified values.

public VkAccelerationStructureGeometryTrianglesDataKHR

Returns:

this struct
set
(VkAccelerationStructureGeometryTrianglesDataKHR
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
sType()

a VkStructureType value identifying this structure.

public VkAccelerationStructureGeometryTrianglesDataKHR
sType(int value)

Sets the specified value to the sType field.

public VkAccelerationStructureGeometryTrianglesDataKHR
public VkDeviceOrHostAddressConstKHR
transformData()

a device or host address to memory containing an optional reference to a VkTransformMatrixKHR structure describing a transformation from the space in which the vertices in this geometry are described to the space in which the acceleration structure is defined.

public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
transformData(Consumer<VkDeviceOrHostAddressConstKHR> consumer)

Passes the transformData field to the specified Consumer.

public VkDeviceOrHostAddressConstKHR
vertexData()

a device or host address to memory containing vertex data for this geometry.

public VkAccelerationStructureGeometryTrianglesDataKHR
public VkAccelerationStructureGeometryTrianglesDataKHR
vertexData(Consumer<VkDeviceOrHostAddressConstKHR> consumer)

Passes the vertexData field to the specified Consumer.

public int
vertexFormat()

the VkFormat of each vertex element.

public VkAccelerationStructureGeometryTrianglesDataKHR
vertexFormat(int value)

Sets the specified value to the vertexFormat field.

public long
vertexStride()

the stride in bytes between each vertex.

public VkAccelerationStructureGeometryTrianglesDataKHR
vertexStride(long value)

Sets the specified value to the vertexStride field.

Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate