Package org.lwjgl.vulkan
Class VkPipelineInputAssemblyStateCreateInfo
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPipelineInputAssemblyStateCreateInfo
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPipelineInputAssemblyStateCreateInfo extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying parameters of a newly created pipeline input assembly state.Description
Restarting the assembly of primitives discards the most recent index values if those elements formed an incomplete primitive, and restarts the primitive assembly using the subsequent indices, but only assembling the immediately following element through the end of the originally specified elements. The primitive restart index value comparison is performed before adding the
vertexOffsetvalue to the index value.Valid Usage
- If
topologyisPRIMITIVE_TOPOLOGY_POINT_LIST,PRIMITIVE_TOPOLOGY_LINE_LIST,PRIMITIVE_TOPOLOGY_TRIANGLE_LIST,PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY,PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCYorPRIMITIVE_TOPOLOGY_PATCH_LIST,primitiveRestartEnablemust beFALSE - If the geometry shaders feature is not enabled,
topologymust not be any ofPRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY,PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY,PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCYorPRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY - If the tessellation shaders feature is not enabled,
topologymust not bePRIMITIVE_TOPOLOGY_PATCH_LIST
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFOpNextmust beNULLflagsmust be 0topologymust be a validVkPrimitiveTopologyvalue
See Also
Member documentation
sType– the type of this structure.pNext–NULLor a pointer to an extension-specific structure.flags– reserved for future use.topology– aVkPrimitiveTopologydefining the primitive topology, as described below.primitiveRestartEnable– controls whether a special vertex index value is treated as restarting the assembly of primitives. This enable only applies to indexed draws (CmdDrawIndexedandCmdDrawIndexedIndirect), and the special index value is either 0xFFFFFFFF when theindexTypeparameter ofvkCmdBindIndexBufferis equal toINDEX_TYPE_UINT32, 0xFF whenindexTypeis equal toINDEX_TYPE_UINT8_EXT, or 0xFFFF whenindexTypeis equal toINDEX_TYPE_UINT16. Primitive restart is not allowed for “list” topologies.
Layout
struct VkPipelineInputAssemblyStateCreateInfo { VkStructureType sType; void const * pNext; VkPipelineInputAssemblyStateCreateFlags flags; VkPrimitiveTopology topology; VkBool32 primitiveRestartEnable; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPipelineInputAssemblyStateCreateInfo.BufferAn array ofVkPipelineInputAssemblyStateCreateInfostructs.
-
Constructor Summary
Constructors Constructor Description VkPipelineInputAssemblyStateCreateInfo(java.nio.ByteBuffer container)Creates aVkPipelineInputAssemblyStateCreateInfoinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPipelineInputAssemblyStateCreateInfocalloc()Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withmemCalloc.static VkPipelineInputAssemblyStateCreateInfo.Buffercalloc(int capacity)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withmemCalloc.static VkPipelineInputAssemblyStateCreateInfocallocStack()Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPipelineInputAssemblyStateCreateInfo.BuffercallocStack(int capacity)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkPipelineInputAssemblyStateCreateInfo.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPipelineInputAssemblyStateCreateInfocallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkPipelineInputAssemblyStateCreateInfocreate()Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withBufferUtils.static VkPipelineInputAssemblyStateCreateInfo.Buffercreate(int capacity)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withBufferUtils.static VkPipelineInputAssemblyStateCreateInfocreate(long address)Returns a newVkPipelineInputAssemblyStateCreateInfoinstance for the specified memory address.static VkPipelineInputAssemblyStateCreateInfo.Buffercreate(long address, int capacity)Create aVkPipelineInputAssemblyStateCreateInfo.Bufferinstance at the specified memory.static VkPipelineInputAssemblyStateCreateInfocreateSafe(long address)static VkPipelineInputAssemblyStateCreateInfo.BuffercreateSafe(long address, int capacity)intflags()Returns the value of theflagsfield.VkPipelineInputAssemblyStateCreateInfoflags(int value)Sets the specified value to theflagsfield.static VkPipelineInputAssemblyStateCreateInfomalloc()Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withmemAlloc.static VkPipelineInputAssemblyStateCreateInfo.Buffermalloc(int capacity)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withmemAlloc.static VkPipelineInputAssemblyStateCreateInfomallocStack()Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the thread-localMemoryStack.static VkPipelineInputAssemblyStateCreateInfo.BuffermallocStack(int capacity)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the thread-localMemoryStack.static VkPipelineInputAssemblyStateCreateInfo.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.static VkPipelineInputAssemblyStateCreateInfomallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the specifiedMemoryStack.static intnflags(long struct)Unsafe version offlags().static voidnflags(long struct, int value)Unsafe version offlags.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnprimitiveRestartEnable(long struct)Unsafe version ofprimitiveRestartEnable().static voidnprimitiveRestartEnable(long struct, int value)Unsafe version ofprimitiveRestartEnable.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.static intntopology(long struct)Unsafe version oftopology().static voidntopology(long struct, int value)Unsafe version oftopology.longpNext()Returns the value of thepNextfield.VkPipelineInputAssemblyStateCreateInfopNext(long value)Sets the specified value to thepNextfield.booleanprimitiveRestartEnable()Returns the value of theprimitiveRestartEnablefield.VkPipelineInputAssemblyStateCreateInfoprimitiveRestartEnable(boolean value)Sets the specified value to theprimitiveRestartEnablefield.VkPipelineInputAssemblyStateCreateInfoset(int sType, long pNext, int flags, int topology, boolean primitiveRestartEnable)Initializes this struct with the specified values.VkPipelineInputAssemblyStateCreateInfoset(VkPipelineInputAssemblyStateCreateInfo src)Copies the specified struct data to this struct.intsizeof()intsType()Returns the value of thesTypefield.VkPipelineInputAssemblyStateCreateInfosType(int value)Sets the specified value to thesTypefield.inttopology()Returns the value of thetopologyfield.VkPipelineInputAssemblyStateCreateInfotopology(int value)Sets the specified value to thetopologyfield.
-
-
-
Constructor Detail
-
VkPipelineInputAssemblyStateCreateInfo
public VkPipelineInputAssemblyStateCreateInfo(java.nio.ByteBuffer container)
Creates aVkPipelineInputAssemblyStateCreateInfoinstance 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
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
flags
public int flags()
Returns the value of theflagsfield.
-
topology
public int topology()
Returns the value of thetopologyfield.
-
primitiveRestartEnable
public boolean primitiveRestartEnable()
Returns the value of theprimitiveRestartEnablefield.
-
sType
public VkPipelineInputAssemblyStateCreateInfo sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkPipelineInputAssemblyStateCreateInfo pNext(long value)
Sets the specified value to thepNextfield.
-
flags
public VkPipelineInputAssemblyStateCreateInfo flags(int value)
Sets the specified value to theflagsfield.
-
topology
public VkPipelineInputAssemblyStateCreateInfo topology(int value)
Sets the specified value to thetopologyfield.
-
primitiveRestartEnable
public VkPipelineInputAssemblyStateCreateInfo primitiveRestartEnable(boolean value)
Sets the specified value to theprimitiveRestartEnablefield.
-
set
public VkPipelineInputAssemblyStateCreateInfo set(int sType, long pNext, int flags, int topology, boolean primitiveRestartEnable)
Initializes this struct with the specified values.
-
set
public VkPipelineInputAssemblyStateCreateInfo set(VkPipelineInputAssemblyStateCreateInfo src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkPipelineInputAssemblyStateCreateInfo malloc()
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkPipelineInputAssemblyStateCreateInfo calloc()
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkPipelineInputAssemblyStateCreateInfo create()
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated withBufferUtils.
-
create
public static VkPipelineInputAssemblyStateCreateInfo create(long address)
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance for the specified memory address.
-
createSafe
@Nullable public static VkPipelineInputAssemblyStateCreateInfo createSafe(long address)
-
malloc
public static VkPipelineInputAssemblyStateCreateInfo.Buffer malloc(int capacity)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkPipelineInputAssemblyStateCreateInfo.Buffer calloc(int capacity)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkPipelineInputAssemblyStateCreateInfo.Buffer create(int capacity)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkPipelineInputAssemblyStateCreateInfo.Buffer create(long address, int capacity)
Create aVkPipelineInputAssemblyStateCreateInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPipelineInputAssemblyStateCreateInfo.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkPipelineInputAssemblyStateCreateInfo mallocStack()
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkPipelineInputAssemblyStateCreateInfo callocStack()
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkPipelineInputAssemblyStateCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkPipelineInputAssemblyStateCreateInfo callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkPipelineInputAssemblyStateCreateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkPipelineInputAssemblyStateCreateInfo.Buffer mallocStack(int capacity)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkPipelineInputAssemblyStateCreateInfo.Buffer callocStack(int capacity)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkPipelineInputAssemblyStateCreateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkPipelineInputAssemblyStateCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkPipelineInputAssemblyStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType().
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext().
-
nflags
public static int nflags(long struct)
Unsafe version offlags().
-
ntopology
public static int ntopology(long struct)
Unsafe version oftopology().
-
nprimitiveRestartEnable
public static int nprimitiveRestartEnable(long struct)
Unsafe version ofprimitiveRestartEnable().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
nflags
public static void nflags(long struct, int value)Unsafe version offlags.
-
ntopology
public static void ntopology(long struct, int value)Unsafe version oftopology.
-
nprimitiveRestartEnable
public static void nprimitiveRestartEnable(long struct, int value)Unsafe version ofprimitiveRestartEnable.
-
-