Package org.lwjgl.vulkan
Class VkCoarseSampleOrderCustomNV
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkCoarseSampleOrderCustomNV>
org.lwjgl.vulkan.VkCoarseSampleOrderCustomNV
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkCoarseSampleOrderCustomNV
extends org.lwjgl.system.Struct<VkCoarseSampleOrderCustomNV>
implements org.lwjgl.system.NativeResource
Structure specifying parameters controlling shading rate image usage.
Description
The VkCoarseSampleOrderCustomNV structure is used with a coverage sample ordering type of COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV to specify the order of coverage samples for one combination of fragment width, fragment height, and coverage sample count.
When using a custom sample ordering, element j in pSampleLocations specifies a specific pixel location and sample index that corresponds to coverage index j in the multi-pixel fragment.
Valid Usage
shadingRatemust be a shading rate that generates fragments with more than one pixelsampleCountmust correspond to a sample count enumerated inVkSampleCountFlagswhose corresponding bit is set inVkPhysicalDeviceLimits::framebufferNoAttachmentsSampleCountssampleLocationCountmust be equal to the product ofsampleCount, the fragment width forshadingRate, and the fragment height forshadingRatesampleLocationCountmust be less than or equal to the value ofVkPhysicalDeviceShadingRateImagePropertiesNV::shadingRateMaxCoarseSamples- The array
pSampleLocationsmust contain exactly one entry for every combination of valid values forpixelX,pixelY, andsamplein the structureVkCoarseSampleOrderCustomNV
Valid Usage (Implicit)
shadingRatemust be a validVkShadingRatePaletteEntryNVvaluepSampleLocationsmust be a valid pointer to an array ofsampleLocationCountVkCoarseSampleLocationNVstructuressampleLocationCountmust be greater than 0
See Also
VkCoarseSampleLocationNV, VkPipelineViewportCoarseSampleOrderStateCreateInfoNV, CmdSetCoarseSampleOrderNV
Layout
struct VkCoarseSampleOrderCustomNV {
VkShadingRatePaletteEntryNV shadingRate();
uint32_t sampleCount();
uint32_t sampleLocationCount();
VkCoarseSampleLocationNV const * pSampleLocations();
}-
Nested Class Summary
Nested ClassesNested 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 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
ConstructorsConstructorDescriptionVkCoarseSampleOrderCustomNV(ByteBuffer container) Creates aVkCoarseSampleOrderCustomNVinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionstatic VkCoarseSampleOrderCustomNVcalloc()Returns a newVkCoarseSampleOrderCustomNVinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkCoarseSampleOrderCustomNVcalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkCoarseSampleOrderCustomNVDeprecated.callocStack(int capacity) Deprecated.callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkCoarseSampleOrderCustomNVcallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.static VkCoarseSampleOrderCustomNVcreate()Returns a newVkCoarseSampleOrderCustomNVinstance allocated withBufferUtils.create(int capacity) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withBufferUtils.static VkCoarseSampleOrderCustomNVcreate(long address) Returns a newVkCoarseSampleOrderCustomNVinstance for the specified memory address.create(long address, int capacity) Create aVkCoarseSampleOrderCustomNV.Bufferinstance at the specified memory.static @Nullable VkCoarseSampleOrderCustomNVcreateSafe(long address) static @Nullable VkCoarseSampleOrderCustomNV.BuffercreateSafe(long address, int capacity) static VkCoarseSampleOrderCustomNVmalloc()Returns a newVkCoarseSampleOrderCustomNVinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated on the specifiedMemoryStack.static VkCoarseSampleOrderCustomNVmalloc(org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNVinstance allocated on the specifiedMemoryStack.static VkCoarseSampleOrderCustomNVDeprecated.mallocStack(int capacity) Deprecated.mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.static VkCoarseSampleOrderCustomNVmallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.npSampleLocations(long struct) Unsafe version ofpSampleLocations().static voidnpSampleLocations(long struct, VkCoarseSampleLocationNV.Buffer value) Unsafe version ofpSampleLocations.static intnsampleCount(long struct) Unsafe version ofsampleCount().static voidnsampleCount(long struct, int value) Unsafe version ofsampleCount.static intnsampleLocationCount(long struct) Unsafe version ofsampleLocationCount().static voidnsampleLocationCount(long struct, int value) Sets the specified value to thesampleLocationCountfield of the specifiedstruct.static intnshadingRate(long struct) Unsafe version ofshadingRate().static voidnshadingRate(long struct, int value) Unsafe version ofshadingRate.a pointer to an array ofVkCoarseSampleLocationNVstructures specifying the location of each sample in the custom ordering.Sets the address of the specifiedVkCoarseSampleLocationNV.Bufferto thepSampleLocations()field.intidentifies the per-pixel coverage sample count for the combination of fragment area and coverage sample count to control.sampleCount(int value) Sets the specified value to thesampleCount()field.intspecifies the number of sample locations in the custom ordering.set(int shadingRate, int sampleCount, VkCoarseSampleLocationNV.Buffer pSampleLocations) Initializes this struct with the specified values.Copies the specified struct data to this struct.inta shading rate palette entry that identifies the fragment width and height for the combination of fragment area and per-pixel coverage sample count to control.shadingRate(int value) Sets the specified value to theshadingRate()field.intsizeof()static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, 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. -
SHADINGRATE
public static final int SHADINGRATEThe struct member offsets. -
SAMPLECOUNT
public static final int SAMPLECOUNTThe struct member offsets. -
SAMPLELOCATIONCOUNT
public static final int SAMPLELOCATIONCOUNTThe struct member offsets. -
PSAMPLELOCATIONS
public static final int PSAMPLELOCATIONSThe struct member offsets.
-
-
Constructor Details
-
VkCoarseSampleOrderCustomNV
Creates aVkCoarseSampleOrderCustomNVinstance 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<VkCoarseSampleOrderCustomNV>
-
shadingRate
public int shadingRate()a shading rate palette entry that identifies the fragment width and height for the combination of fragment area and per-pixel coverage sample count to control. -
sampleCount
public int sampleCount()identifies the per-pixel coverage sample count for the combination of fragment area and coverage sample count to control. -
sampleLocationCount
public int sampleLocationCount()specifies the number of sample locations in the custom ordering. -
pSampleLocations
a pointer to an array ofVkCoarseSampleLocationNVstructures specifying the location of each sample in the custom ordering. -
shadingRate
Sets the specified value to theshadingRate()field. -
sampleCount
Sets the specified value to thesampleCount()field. -
pSampleLocations
Sets the address of the specifiedVkCoarseSampleLocationNV.Bufferto thepSampleLocations()field. -
set
public VkCoarseSampleOrderCustomNV set(int shadingRate, int sampleCount, VkCoarseSampleLocationNV.Buffer pSampleLocations) 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 newVkCoarseSampleOrderCustomNVinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkCoarseSampleOrderCustomNVinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkCoarseSampleOrderCustomNVinstance allocated withBufferUtils. -
create
Returns a newVkCoarseSampleOrderCustomNVinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkCoarseSampleOrderCustomNV.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
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 VkCoarseSampleOrderCustomNV mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkCoarseSampleOrderCustomNV callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkCoarseSampleOrderCustomNV.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 VkCoarseSampleOrderCustomNV.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkCoarseSampleOrderCustomNVinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkCoarseSampleOrderCustomNVinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkCoarseSampleOrderCustomNV.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkCoarseSampleOrderCustomNV.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkCoarseSampleOrderCustomNV.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nshadingRate
public static int nshadingRate(long struct) Unsafe version ofshadingRate(). -
nsampleCount
public static int nsampleCount(long struct) Unsafe version ofsampleCount(). -
nsampleLocationCount
public static int nsampleLocationCount(long struct) Unsafe version ofsampleLocationCount(). -
npSampleLocations
Unsafe version ofpSampleLocations(). -
nshadingRate
public static void nshadingRate(long struct, int value) Unsafe version ofshadingRate. -
nsampleCount
public static void nsampleCount(long struct, int value) Unsafe version ofsampleCount. -
nsampleLocationCount
public static void nsampleLocationCount(long struct, int value) Sets the specified value to thesampleLocationCountfield of the specifiedstruct. -
npSampleLocations
Unsafe version ofpSampleLocations. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-