public class VkPhysicalDeviceMeshShaderPropertiesNV
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
If the VkPhysicalDeviceMeshShaderPropertiesNV structure is included in the pNext chain of VkPhysicalDeviceProperties2, it is filled with the implementation-dependent limits.
sType must be STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NVsType – the type of this structure.pNext – NULL or a pointer to an extension-specific structure.maxDrawMeshTasksCount – the maximum number of local workgroups that can be launched by a single draw mesh tasks command. See Programmable Mesh Shading.maxTaskWorkGroupInvocations – the maximum total number of task shader invocations in a single local workgroup. The product of the X, Y, and Z sizes, as specified by the LocalSize execution mode in shader modules or by the object decorated by the WorkgroupSize decoration, must be less than or equal to this limit.maxTaskWorkGroupSize[3] – the maximum size of a local task workgroup. These three values represent the maximum local workgroup size in the X, Y, and Z dimensions, respectively. The x, y, and z sizes, as specified by the LocalSize execution mode or by the object decorated by the WorkgroupSize decoration in shader modules, must be less than or equal to the corresponding limit.maxTaskTotalMemorySize – the maximum number of bytes that the task shader can use in total for shared and output memory combined.maxTaskOutputCount – the maximum number of output tasks a single task shader workgroup can emit.maxMeshWorkGroupInvocations – the maximum total number of mesh shader invocations in a single local workgroup. The product of the X, Y, and Z sizes, as specified by the LocalSize execution mode in shader modules or by the object decorated by the WorkgroupSize decoration, must be less than or equal to this limit.maxMeshWorkGroupSize[3] – the maximum size of a local mesh workgroup. These three values represent the maximum local workgroup size in the X, Y, and Z dimensions, respectively. The x, y, and z sizes, as specified by the LocalSize execution mode or by the object decorated by the WorkgroupSize decoration in shader modules, must be less than or equal to the corresponding limit.maxMeshTotalMemorySize – the maximum number of bytes that the mesh shader can use in total for shared and output memory combined.maxMeshOutputVertices – the maximum number of vertices a mesh shader output can store.maxMeshOutputPrimitives – the maximum number of primitives a mesh shader output can store.maxMeshMultiviewViewCount – the maximum number of multi-view views a mesh shader can use.meshOutputPerVertexGranularity – the granularity with which mesh vertex outputs are allocated. The value can be used to compute the memory size used by the mesh shader, which must be less than or equal to maxMeshTotalMemorySize.meshOutputPerPrimitiveGranularity – the granularity with which mesh outputs qualified as per-primitive are allocated. The value can be used to compute the memory size used by the mesh shader, which must be less than or equal to maxMeshTotalMemorySize.
struct VkPhysicalDeviceMeshShaderPropertiesNV {
VkStructureType sType;
void * pNext;
uint32_t maxDrawMeshTasksCount;
uint32_t maxTaskWorkGroupInvocations;
uint32_t maxTaskWorkGroupSize[3];
uint32_t maxTaskTotalMemorySize;
uint32_t maxTaskOutputCount;
uint32_t maxMeshWorkGroupInvocations;
uint32_t maxMeshWorkGroupSize[3];
uint32_t maxMeshTotalMemorySize;
uint32_t maxMeshOutputVertices;
uint32_t maxMeshOutputPrimitives;
uint32_t maxMeshMultiviewViewCount;
uint32_t meshOutputPerVertexGranularity;
uint32_t meshOutputPerPrimitiveGranularity;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer
An array of
VkPhysicalDeviceMeshShaderPropertiesNV structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
MAXDRAWMESHTASKSCOUNT
The struct member offsets.
|
static int |
MAXMESHMULTIVIEWVIEWCOUNT
The struct member offsets.
|
static int |
MAXMESHOUTPUTPRIMITIVES
The struct member offsets.
|
static int |
MAXMESHOUTPUTVERTICES
The struct member offsets.
|
static int |
MAXMESHTOTALMEMORYSIZE
The struct member offsets.
|
static int |
MAXMESHWORKGROUPINVOCATIONS
The struct member offsets.
|
static int |
MAXMESHWORKGROUPSIZE
The struct member offsets.
|
static int |
MAXTASKOUTPUTCOUNT
The struct member offsets.
|
static int |
MAXTASKTOTALMEMORYSIZE
The struct member offsets.
|
static int |
MAXTASKWORKGROUPINVOCATIONS
The struct member offsets.
|
static int |
MAXTASKWORKGROUPSIZE
The struct member offsets.
|
static int |
MESHOUTPUTPERPRIMITIVEGRANULARITY
The struct member offsets.
|
static int |
MESHOUTPUTPERVERTEXGRANULARITY
The struct member offsets.
|
static int |
PNEXT
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
STYPE
The struct member offsets.
|
| Constructor and Description |
|---|
VkPhysicalDeviceMeshShaderPropertiesNV(java.nio.ByteBuffer container)
Creates a
VkPhysicalDeviceMeshShaderPropertiesNV instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
static VkPhysicalDeviceMeshShaderPropertiesNV |
calloc()
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with memCalloc. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
calloc(int capacity)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with memCalloc. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
callocStack()
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
callocStack(int capacity)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
create()
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with BufferUtils. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
create(int capacity)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with BufferUtils. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
create(long address)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance for the specified memory address. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
create(long address,
int capacity)
Create a
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance at the specified memory. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
createSafe(long address)
|
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
createSafe(long address,
int capacity)
|
static VkPhysicalDeviceMeshShaderPropertiesNV |
malloc()
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with memAlloc. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
malloc(int capacity)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with memAlloc. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
mallocStack()
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the thread-local MemoryStack. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
mallocStack(int capacity)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the thread-local MemoryStack. |
static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the specified MemoryStack. |
static VkPhysicalDeviceMeshShaderPropertiesNV |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the specified MemoryStack. |
int |
maxDrawMeshTasksCount()
Returns the value of the
maxDrawMeshTasksCount field. |
int |
maxMeshMultiviewViewCount()
Returns the value of the
maxMeshMultiviewViewCount field. |
int |
maxMeshOutputPrimitives()
Returns the value of the
maxMeshOutputPrimitives field. |
int |
maxMeshOutputVertices()
Returns the value of the
maxMeshOutputVertices field. |
int |
maxMeshTotalMemorySize()
Returns the value of the
maxMeshTotalMemorySize field. |
int |
maxMeshWorkGroupInvocations()
Returns the value of the
maxMeshWorkGroupInvocations field. |
java.nio.IntBuffer |
maxMeshWorkGroupSize()
Returns a
IntBuffer view of the maxMeshWorkGroupSize field. |
int |
maxMeshWorkGroupSize(int index)
Returns the value at the specified index of the
maxMeshWorkGroupSize field. |
int |
maxTaskOutputCount()
Returns the value of the
maxTaskOutputCount field. |
int |
maxTaskTotalMemorySize()
Returns the value of the
maxTaskTotalMemorySize field. |
int |
maxTaskWorkGroupInvocations()
Returns the value of the
maxTaskWorkGroupInvocations field. |
java.nio.IntBuffer |
maxTaskWorkGroupSize()
Returns a
IntBuffer view of the maxTaskWorkGroupSize field. |
int |
maxTaskWorkGroupSize(int index)
Returns the value at the specified index of the
maxTaskWorkGroupSize field. |
int |
meshOutputPerPrimitiveGranularity()
Returns the value of the
meshOutputPerPrimitiveGranularity field. |
int |
meshOutputPerVertexGranularity()
Returns the value of the
meshOutputPerVertexGranularity field. |
static int |
nmaxDrawMeshTasksCount(long struct)
Unsafe version of
maxDrawMeshTasksCount(). |
static int |
nmaxMeshMultiviewViewCount(long struct)
Unsafe version of
maxMeshMultiviewViewCount(). |
static int |
nmaxMeshOutputPrimitives(long struct)
Unsafe version of
maxMeshOutputPrimitives(). |
static int |
nmaxMeshOutputVertices(long struct)
Unsafe version of
maxMeshOutputVertices(). |
static int |
nmaxMeshTotalMemorySize(long struct)
Unsafe version of
maxMeshTotalMemorySize(). |
static int |
nmaxMeshWorkGroupInvocations(long struct)
Unsafe version of
maxMeshWorkGroupInvocations(). |
static java.nio.IntBuffer |
nmaxMeshWorkGroupSize(long struct)
Unsafe version of
maxMeshWorkGroupSize(). |
static int |
nmaxMeshWorkGroupSize(long struct,
int index)
Unsafe version of
maxMeshWorkGroupSize. |
static int |
nmaxTaskOutputCount(long struct)
Unsafe version of
maxTaskOutputCount(). |
static int |
nmaxTaskTotalMemorySize(long struct)
Unsafe version of
maxTaskTotalMemorySize(). |
static int |
nmaxTaskWorkGroupInvocations(long struct)
Unsafe version of
maxTaskWorkGroupInvocations(). |
static java.nio.IntBuffer |
nmaxTaskWorkGroupSize(long struct)
Unsafe version of
maxTaskWorkGroupSize(). |
static int |
nmaxTaskWorkGroupSize(long struct,
int index)
Unsafe version of
maxTaskWorkGroupSize. |
static int |
nmeshOutputPerPrimitiveGranularity(long struct)
Unsafe version of
meshOutputPerPrimitiveGranularity(). |
static int |
nmeshOutputPerVertexGranularity(long struct)
Unsafe version of
meshOutputPerVertexGranularity(). |
static long |
npNext(long struct)
Unsafe version of
pNext(). |
static void |
npNext(long struct,
long value)
Unsafe version of
pNext. |
static int |
nsType(long struct)
Unsafe version of
sType(). |
static void |
nsType(long struct,
int value)
Unsafe version of
sType. |
long |
pNext()
Returns the value of the
pNext field. |
VkPhysicalDeviceMeshShaderPropertiesNV |
pNext(long value)
Sets the specified value to the
pNext field. |
VkPhysicalDeviceMeshShaderPropertiesNV |
set(int sType,
long pNext)
Initializes this struct with the specified values.
|
VkPhysicalDeviceMeshShaderPropertiesNV |
set(VkPhysicalDeviceMeshShaderPropertiesNV src)
Copies the specified struct data to this struct.
|
int |
sizeof() |
int |
sType()
Returns the value of the
sType field. |
VkPhysicalDeviceMeshShaderPropertiesNV |
sType(int value)
Sets the specified value to the
sType field. |
public static final int SIZEOF
public static final int ALIGNOF
public static final int STYPE
public static final int PNEXT
public static final int MAXDRAWMESHTASKSCOUNT
public static final int MAXTASKWORKGROUPINVOCATIONS
public static final int MAXTASKWORKGROUPSIZE
public static final int MAXTASKTOTALMEMORYSIZE
public static final int MAXTASKOUTPUTCOUNT
public static final int MAXMESHWORKGROUPINVOCATIONS
public static final int MAXMESHWORKGROUPSIZE
public static final int MAXMESHTOTALMEMORYSIZE
public static final int MAXMESHOUTPUTVERTICES
public static final int MAXMESHOUTPUTPRIMITIVES
public static final int MAXMESHMULTIVIEWVIEWCOUNT
public static final int MESHOUTPUTPERVERTEXGRANULARITY
public static final int MESHOUTPUTPERPRIMITIVEGRANULARITY
public VkPhysicalDeviceMeshShaderPropertiesNV(java.nio.ByteBuffer container)
VkPhysicalDeviceMeshShaderPropertiesNV instance at the current position of the specified ByteBuffer 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.
public int sizeof()
sizeof in class org.lwjgl.system.Structpublic int sType()
sType field.public long pNext()
pNext field.public int maxDrawMeshTasksCount()
maxDrawMeshTasksCount field.public int maxTaskWorkGroupInvocations()
maxTaskWorkGroupInvocations field.public java.nio.IntBuffer maxTaskWorkGroupSize()
IntBuffer view of the maxTaskWorkGroupSize field.public int maxTaskWorkGroupSize(int index)
maxTaskWorkGroupSize field.public int maxTaskTotalMemorySize()
maxTaskTotalMemorySize field.public int maxTaskOutputCount()
maxTaskOutputCount field.public int maxMeshWorkGroupInvocations()
maxMeshWorkGroupInvocations field.public java.nio.IntBuffer maxMeshWorkGroupSize()
IntBuffer view of the maxMeshWorkGroupSize field.public int maxMeshWorkGroupSize(int index)
maxMeshWorkGroupSize field.public int maxMeshTotalMemorySize()
maxMeshTotalMemorySize field.public int maxMeshOutputVertices()
maxMeshOutputVertices field.public int maxMeshOutputPrimitives()
maxMeshOutputPrimitives field.public int maxMeshMultiviewViewCount()
maxMeshMultiviewViewCount field.public int meshOutputPerVertexGranularity()
meshOutputPerVertexGranularity field.public int meshOutputPerPrimitiveGranularity()
meshOutputPerPrimitiveGranularity field.public VkPhysicalDeviceMeshShaderPropertiesNV sType(int value)
sType field.public VkPhysicalDeviceMeshShaderPropertiesNV pNext(long value)
pNext field.public VkPhysicalDeviceMeshShaderPropertiesNV set(int sType, long pNext)
public VkPhysicalDeviceMeshShaderPropertiesNV set(VkPhysicalDeviceMeshShaderPropertiesNV src)
src - the source structpublic static VkPhysicalDeviceMeshShaderPropertiesNV malloc()
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with memAlloc. The instance must be explicitly freed.public static VkPhysicalDeviceMeshShaderPropertiesNV calloc()
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with memCalloc. The instance must be explicitly freed.public static VkPhysicalDeviceMeshShaderPropertiesNV create()
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated with BufferUtils.public static VkPhysicalDeviceMeshShaderPropertiesNV create(long address)
VkPhysicalDeviceMeshShaderPropertiesNV instance for the specified memory address.@Nullable public static VkPhysicalDeviceMeshShaderPropertiesNV createSafe(long address)
public static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer malloc(int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer calloc(int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer create(int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer create(long address, int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer createSafe(long address, int capacity)
public static VkPhysicalDeviceMeshShaderPropertiesNV mallocStack()
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the thread-local MemoryStack.public static VkPhysicalDeviceMeshShaderPropertiesNV callocStack()
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkPhysicalDeviceMeshShaderPropertiesNV mallocStack(org.lwjgl.system.MemoryStack stack)
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkPhysicalDeviceMeshShaderPropertiesNV callocStack(org.lwjgl.system.MemoryStack stack)
VkPhysicalDeviceMeshShaderPropertiesNV instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer mallocStack(int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer callocStack(int capacity)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkPhysicalDeviceMeshShaderPropertiesNV.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkPhysicalDeviceMeshShaderPropertiesNV.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatecapacity - the buffer capacitypublic static int nsType(long struct)
sType().public static long npNext(long struct)
pNext().public static int nmaxDrawMeshTasksCount(long struct)
maxDrawMeshTasksCount().public static int nmaxTaskWorkGroupInvocations(long struct)
maxTaskWorkGroupInvocations().public static java.nio.IntBuffer nmaxTaskWorkGroupSize(long struct)
maxTaskWorkGroupSize().public static int nmaxTaskWorkGroupSize(long struct,
int index)
maxTaskWorkGroupSize.public static int nmaxTaskTotalMemorySize(long struct)
maxTaskTotalMemorySize().public static int nmaxTaskOutputCount(long struct)
maxTaskOutputCount().public static int nmaxMeshWorkGroupInvocations(long struct)
maxMeshWorkGroupInvocations().public static java.nio.IntBuffer nmaxMeshWorkGroupSize(long struct)
maxMeshWorkGroupSize().public static int nmaxMeshWorkGroupSize(long struct,
int index)
maxMeshWorkGroupSize.public static int nmaxMeshTotalMemorySize(long struct)
maxMeshTotalMemorySize().public static int nmaxMeshOutputVertices(long struct)
maxMeshOutputVertices().public static int nmaxMeshOutputPrimitives(long struct)
maxMeshOutputPrimitives().public static int nmaxMeshMultiviewViewCount(long struct)
maxMeshMultiviewViewCount().public static int nmeshOutputPerVertexGranularity(long struct)
meshOutputPerVertexGranularity().public static int nmeshOutputPerPrimitiveGranularity(long struct)
meshOutputPerPrimitiveGranularity().public static void nsType(long struct,
int value)
sType.public static void npNext(long struct,
long value)
pNext.Copyright LWJGL. All Rights Reserved. License terms.