Package org.lwjgl.vulkan
Class VkVertexInputBindingDivisorDescriptionEXT
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkVertexInputBindingDivisorDescriptionEXT>
org.lwjgl.vulkan.VkVertexInputBindingDivisorDescriptionEXT
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkVertexInputBindingDivisorDescriptionEXT
extends org.lwjgl.system.Struct<VkVertexInputBindingDivisorDescriptionEXT>
implements org.lwjgl.system.NativeResource
Structure specifying a divisor used in instanced rendering.
Description
If this structure is not used to define a divisor value for an attribute, then the divisor has a logical default value of 1.
Valid Usage
bindingmust be less thanVkPhysicalDeviceLimits::maxVertexInputBindings- If the
vertexAttributeInstanceRateZeroDivisorfeature is not enabled,divisormust not be 0 - If the
vertexAttributeInstanceRateDivisorfeature is not enabled,divisormust be 1 divisormust be a value between 0 andVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT::maxVertexAttribDivisor, inclusiveVkVertexInputBindingDescription::inputRatemust be of typeVERTEX_INPUT_RATE_INSTANCEfor thisbinding
See Also
VkPipelineVertexInputDivisorStateCreateInfoEXT
Layout
struct VkVertexInputBindingDivisorDescriptionEXT {
uint32_t binding();
uint32_t divisor();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkVertexInputBindingDivisorDescriptionEXTstructs.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 size in bytes.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionCreates aVkVertexInputBindingDivisorDescriptionEXTinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionintbinding()the binding number for which the divisor is specified.binding(int value) Sets the specified value to thebinding()field.calloc()Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance 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 newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withBufferUtils.create(int capacity) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance for the specified memory address.create(long address, int capacity) Create aVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance at the specified memory.createSafe(long address) createSafe(long address, int capacity) intdivisor()the number of successive instances that will use the same value of the vertex attribute when instanced rendering is enabled.divisor(int value) Sets the specified value to thedivisor()field.malloc()Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance 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.static intnbinding(long struct) Unsafe version ofbinding().static voidnbinding(long struct, int value) Unsafe version ofbinding.static intndivisor(long struct) Unsafe version ofdivisor().static voidndivisor(long struct, int value) Unsafe version ofdivisor.set(int binding, int divisor) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, 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. -
BINDING
public static final int BINDINGThe struct member offsets. -
DIVISOR
public static final int DIVISORThe struct member offsets.
-
-
Constructor Details
-
VkVertexInputBindingDivisorDescriptionEXT
Creates aVkVertexInputBindingDivisorDescriptionEXTinstance 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<VkVertexInputBindingDivisorDescriptionEXT>
-
binding
public int binding()the binding number for which the divisor is specified. -
divisor
public int divisor()the number of successive instances that will use the same value of the vertex attribute when instanced rendering is enabled. For example, if the divisor is N, the same vertex attribute will be applied to N successive instances before moving on to the next vertex attribute. The maximum value ofdivisoris implementation-dependent and can be queried usingVkPhysicalDeviceVertexAttributeDivisorPropertiesEXT::maxVertexAttribDivisor. A value of 0 can be used for the divisor if thevertexAttributeInstanceRateZeroDivisorfeature is enabled. In this case, the same vertex attribute will be applied to all instances. -
binding
Sets the specified value to thebinding()field. -
divisor
Sets the specified value to thedivisor()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 newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated withBufferUtils. -
create
Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkVertexInputBindingDivisorDescriptionEXT.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 VkVertexInputBindingDivisorDescriptionEXT mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkVertexInputBindingDivisorDescriptionEXT callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
@Deprecated public static VkVertexInputBindingDivisorDescriptionEXT.Buffer mallocStack(int capacity) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
@Deprecated public static VkVertexInputBindingDivisorDescriptionEXT.Buffer callocStack(int capacity) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkVertexInputBindingDivisorDescriptionEXT.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 VkVertexInputBindingDivisorDescriptionEXT.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkVertexInputBindingDivisorDescriptionEXTinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkVertexInputBindingDivisorDescriptionEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkVertexInputBindingDivisorDescriptionEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkVertexInputBindingDivisorDescriptionEXT.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nbinding
public static int nbinding(long struct) Unsafe version ofbinding(). -
ndivisor
public static int ndivisor(long struct) Unsafe version ofdivisor(). -
nbinding
public static void nbinding(long struct, int value) Unsafe version ofbinding. -
ndivisor
public static void ndivisor(long struct, int value) Unsafe version ofdivisor.
-