Package org.lwjgl.vulkan
Class VkVertexInputAttributeDescription
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkVertexInputAttributeDescription
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVertexInputAttributeDescription extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying vertex input attribute description.Valid Usage
locationmust be less thanVkPhysicalDeviceLimits::maxVertexInputAttributesbindingmust be less thanVkPhysicalDeviceLimits::maxVertexInputBindingsoffsetmust be less than or equal toVkPhysicalDeviceLimits::maxVertexInputAttributeOffsetformatmust be allowed as a vertex buffer format, as specified by theFORMAT_FEATURE_VERTEX_BUFFER_BITflag inVkFormatProperties::bufferFeaturesreturned byvkGetPhysicalDeviceFormatProperties- If the
VK_KHR_portability_subsetextension is enabled, andVkPhysicalDevicePortabilitySubsetFeaturesKHR::vertexAttributeAccessBeyondStrideisFALSE, the sum ofoffsetplus the size of the vertex attribute data described byformatmust not be greater thanstridein theVkVertexInputBindingDescriptionreferenced inbinding
Valid Usage (Implicit)
formatmust be a validVkFormatvalue
See Also
VkPipelineVertexInputStateCreateInfoLayout
struct VkVertexInputAttributeDescription { uint32_tlocation(); uint32_tbinding(); VkFormatformat(); uint32_toffset(); }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkVertexInputAttributeDescription.BufferAn array ofVkVertexInputAttributeDescriptionstructs.
-
Constructor Summary
Constructors Constructor Description VkVertexInputAttributeDescription(java.nio.ByteBuffer container)Creates aVkVertexInputAttributeDescriptioninstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description intbinding()the binding number which this attribute takes its data from.VkVertexInputAttributeDescriptionbinding(int value)Sets the specified value to thebinding()field.static VkVertexInputAttributeDescriptioncalloc()Returns a newVkVertexInputAttributeDescriptioninstance allocated withmemCalloc.static VkVertexInputAttributeDescription.Buffercalloc(int capacity)Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withmemCalloc.static VkVertexInputAttributeDescription.Buffercalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVertexInputAttributeDescriptioncalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVertexInputAttributeDescriptioninstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkVertexInputAttributeDescriptioncallocStack()Deprecated.static VkVertexInputAttributeDescription.BuffercallocStack(int capacity)Deprecated.static VkVertexInputAttributeDescription.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static VkVertexInputAttributeDescriptioncallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.static VkVertexInputAttributeDescriptioncreate()Returns a newVkVertexInputAttributeDescriptioninstance allocated withBufferUtils.static VkVertexInputAttributeDescription.Buffercreate(int capacity)Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withBufferUtils.static VkVertexInputAttributeDescriptioncreate(long address)Returns a newVkVertexInputAttributeDescriptioninstance for the specified memory address.static VkVertexInputAttributeDescription.Buffercreate(long address, int capacity)Create aVkVertexInputAttributeDescription.Bufferinstance at the specified memory.static VkVertexInputAttributeDescriptioncreateSafe(long address)static VkVertexInputAttributeDescription.BuffercreateSafe(long address, int capacity)intformat()the size and type of the vertex attribute data.VkVertexInputAttributeDescriptionformat(int value)Sets the specified value to theformat()field.intlocation()the shader input location number for this attribute.VkVertexInputAttributeDescriptionlocation(int value)Sets the specified value to thelocation()field.static VkVertexInputAttributeDescriptionmalloc()Returns a newVkVertexInputAttributeDescriptioninstance allocated withmemAlloc.static VkVertexInputAttributeDescription.Buffermalloc(int capacity)Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withmemAlloc.static VkVertexInputAttributeDescription.Buffermalloc(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated on the specifiedMemoryStack.static VkVertexInputAttributeDescriptionmalloc(org.lwjgl.system.MemoryStack stack)Returns a newVkVertexInputAttributeDescriptioninstance allocated on the specifiedMemoryStack.static VkVertexInputAttributeDescriptionmallocStack()Deprecated.static VkVertexInputAttributeDescription.BuffermallocStack(int capacity)Deprecated.static VkVertexInputAttributeDescription.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Deprecated.static VkVertexInputAttributeDescriptionmallocStack(org.lwjgl.system.MemoryStack stack)Deprecated.static intnbinding(long struct)Unsafe version ofbinding().static voidnbinding(long struct, int value)Unsafe version ofbinding.static intnformat(long struct)Unsafe version offormat().static voidnformat(long struct, int value)Unsafe version offormat.static intnlocation(long struct)Unsafe version oflocation().static voidnlocation(long struct, int value)Unsafe version oflocation.static intnoffset(long struct)Unsafe version ofoffset().static voidnoffset(long struct, int value)Unsafe version ofoffset.intoffset()a byte offset of this attribute relative to the start of an element in the vertex input binding.VkVertexInputAttributeDescriptionoffset(int value)Sets the specified value to theoffset()field.VkVertexInputAttributeDescriptionset(int location, int binding, int format, int offset)Initializes this struct with the specified values.VkVertexInputAttributeDescriptionset(VkVertexInputAttributeDescription src)Copies the specified struct data to this struct.intsizeof()
-
-
-
Constructor Detail
-
VkVertexInputAttributeDescription
public VkVertexInputAttributeDescription(java.nio.ByteBuffer container)
Creates aVkVertexInputAttributeDescriptioninstance 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 Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
location
public int location()
the shader input location number for this attribute.
-
binding
public int binding()
the binding number which this attribute takes its data from.
-
format
public int format()
the size and type of the vertex attribute data.
-
offset
public int offset()
a byte offset of this attribute relative to the start of an element in the vertex input binding.
-
location
public VkVertexInputAttributeDescription location(int value)
Sets the specified value to thelocation()field.
-
binding
public VkVertexInputAttributeDescription binding(int value)
Sets the specified value to thebinding()field.
-
format
public VkVertexInputAttributeDescription format(int value)
Sets the specified value to theformat()field.
-
offset
public VkVertexInputAttributeDescription offset(int value)
Sets the specified value to theoffset()field.
-
set
public VkVertexInputAttributeDescription set(int location, int binding, int format, int offset)
Initializes this struct with the specified values.
-
set
public VkVertexInputAttributeDescription set(VkVertexInputAttributeDescription src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkVertexInputAttributeDescription malloc()
Returns a newVkVertexInputAttributeDescriptioninstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkVertexInputAttributeDescription calloc()
Returns a newVkVertexInputAttributeDescriptioninstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkVertexInputAttributeDescription create()
Returns a newVkVertexInputAttributeDescriptioninstance allocated withBufferUtils.
-
create
public static VkVertexInputAttributeDescription create(long address)
Returns a newVkVertexInputAttributeDescriptioninstance for the specified memory address.
-
createSafe
@Nullable public static VkVertexInputAttributeDescription createSafe(long address)
-
malloc
public static VkVertexInputAttributeDescription.Buffer malloc(int capacity)
Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkVertexInputAttributeDescription.Buffer calloc(int capacity)
Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkVertexInputAttributeDescription.Buffer create(int capacity)
Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkVertexInputAttributeDescription.Buffer create(long address, int capacity)
Create aVkVertexInputAttributeDescription.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkVertexInputAttributeDescription.Buffer createSafe(long address, int capacity)
-
mallocStack
@Deprecated public static VkVertexInputAttributeDescription mallocStack()
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static VkVertexInputAttributeDescription callocStack()
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static VkVertexInputAttributeDescription mallocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead.
-
callocStack
@Deprecated public static VkVertexInputAttributeDescription callocStack(org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead.
-
mallocStack
@Deprecated public static VkVertexInputAttributeDescription.Buffer mallocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead.
-
callocStack
@Deprecated public static VkVertexInputAttributeDescription.Buffer callocStack(int capacity)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
mallocStack
@Deprecated public static VkVertexInputAttributeDescription.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 VkVertexInputAttributeDescription.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead.
-
malloc
public static VkVertexInputAttributeDescription malloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVertexInputAttributeDescriptioninstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
public static VkVertexInputAttributeDescription calloc(org.lwjgl.system.MemoryStack stack)
Returns a newVkVertexInputAttributeDescriptioninstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVertexInputAttributeDescription.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
calloc
public static VkVertexInputAttributeDescription.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkVertexInputAttributeDescription.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nlocation
public static int nlocation(long struct)
Unsafe version oflocation().
-
nbinding
public static int nbinding(long struct)
Unsafe version ofbinding().
-
nformat
public static int nformat(long struct)
Unsafe version offormat().
-
noffset
public static int noffset(long struct)
Unsafe version ofoffset().
-
nlocation
public static void nlocation(long struct, int value)Unsafe version oflocation.
-
nbinding
public static void nbinding(long struct, int value)Unsafe version ofbinding.
-
nformat
public static void nformat(long struct, int value)Unsafe version offormat.
-
noffset
public static void noffset(long struct, int value)Unsafe version ofoffset.
-
-