public class VkSparseImageMemoryRequirements
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
formatProperties – formatProperties.aspectMask is the set of aspects of the image that this sparse memory requirement applies to. This will usually have a single aspect specified. However, depth/stencil images may have depth and stencil data interleaved in the same sparse block, in which case both IMAGE_ASPECT_DEPTH_BIT and IMAGE_ASPECT_STENCIL_BIT would be present.
formatProperties.imageGranularity describes the dimensions of a single bindable sparse image block in texel units. For aspect IMAGE_ASPECT_METADATA_BIT, all dimensions will be zero. All metadata is located in the mip tail region.
formatProperties.flags is a bitmask of VkSparseImageFormatFlagBits:
SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT is set the image uses a single mip tail region for all array layers.SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT is set the dimensions of mip levels must be integer multiples of the corresponding dimensions of the sparse image block for levels not located in the mip tail.SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT is set the image uses non-standard sparse image block dimensions. The formatProperties.imageGranularity values do not match the standard sparse image block dimension corresponding to the image’s format.imageMipTailFirstLod – the first mip level at which image subresources are included in the mip tail region.imageMipTailSize – the memory size (in bytes) of the mip tail region. If formatProperties.flags contains SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, this is the size of the whole mip tail, otherwise this is the size of the mip tail of a single array layer. This value is guaranteed to be a multiple of the sparse block size in bytes.imageMipTailOffset – the opaque memory offset used with VkSparseImageOpaqueMemoryBindInfo to bind the mip tail region(s).imageMipTailStride – the offset stride between each array-layer’s mip tail, if formatProperties.flags does not contain SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT (otherwise the value is undefined).
struct VkSparseImageMemoryRequirements {
VkSparseImageFormatProperties formatProperties;
uint32_t imageMipTailFirstLod;
VkDeviceSize imageMipTailSize;
VkDeviceSize imageMipTailOffset;
VkDeviceSize imageMipTailStride;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkSparseImageMemoryRequirements.Buffer
An array of
VkSparseImageMemoryRequirements structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
FORMATPROPERTIES
The struct member offsets.
|
static int |
IMAGEMIPTAILFIRSTLOD
The struct member offsets.
|
static int |
IMAGEMIPTAILOFFSET
The struct member offsets.
|
static int |
IMAGEMIPTAILSIZE
The struct member offsets.
|
static int |
IMAGEMIPTAILSTRIDE
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
| Constructor and Description |
|---|
VkSparseImageMemoryRequirements(java.nio.ByteBuffer container)
Creates a
VkSparseImageMemoryRequirements instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
static VkSparseImageMemoryRequirements |
calloc()
Returns a new
VkSparseImageMemoryRequirements instance allocated with memCalloc. |
static VkSparseImageMemoryRequirements.Buffer |
calloc(int capacity)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated with memCalloc. |
static VkSparseImageMemoryRequirements |
callocStack()
Returns a new
VkSparseImageMemoryRequirements instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkSparseImageMemoryRequirements.Buffer |
callocStack(int capacity)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkSparseImageMemoryRequirements.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkSparseImageMemoryRequirements |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkSparseImageMemoryRequirements instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkSparseImageMemoryRequirements |
create()
Returns a new
VkSparseImageMemoryRequirements instance allocated with BufferUtils. |
static VkSparseImageMemoryRequirements.Buffer |
create(int capacity)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated with BufferUtils. |
static VkSparseImageMemoryRequirements |
create(long address)
Returns a new
VkSparseImageMemoryRequirements instance for the specified memory address. |
static VkSparseImageMemoryRequirements.Buffer |
create(long address,
int capacity)
Create a
VkSparseImageMemoryRequirements.Buffer instance at the specified memory. |
static VkSparseImageMemoryRequirements |
createSafe(long address)
|
static VkSparseImageMemoryRequirements.Buffer |
createSafe(long address,
int capacity)
|
VkSparseImageFormatProperties |
formatProperties()
Returns a
VkSparseImageFormatProperties view of the formatProperties field. |
int |
imageMipTailFirstLod()
Returns the value of the
imageMipTailFirstLod field. |
long |
imageMipTailOffset()
Returns the value of the
imageMipTailOffset field. |
long |
imageMipTailSize()
Returns the value of the
imageMipTailSize field. |
long |
imageMipTailStride()
Returns the value of the
imageMipTailStride field. |
static VkSparseImageMemoryRequirements |
malloc()
Returns a new
VkSparseImageMemoryRequirements instance allocated with memAlloc. |
static VkSparseImageMemoryRequirements.Buffer |
malloc(int capacity)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated with memAlloc. |
static VkSparseImageMemoryRequirements |
mallocStack()
Returns a new
VkSparseImageMemoryRequirements instance allocated on the thread-local MemoryStack. |
static VkSparseImageMemoryRequirements.Buffer |
mallocStack(int capacity)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated on the thread-local MemoryStack. |
static VkSparseImageMemoryRequirements.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkSparseImageMemoryRequirements.Buffer instance allocated on the specified MemoryStack. |
static VkSparseImageMemoryRequirements |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkSparseImageMemoryRequirements instance allocated on the specified MemoryStack. |
static VkSparseImageFormatProperties |
nformatProperties(long struct)
Unsafe version of
formatProperties(). |
static int |
nimageMipTailFirstLod(long struct)
Unsafe version of
imageMipTailFirstLod(). |
static long |
nimageMipTailOffset(long struct)
Unsafe version of
imageMipTailOffset(). |
static long |
nimageMipTailSize(long struct)
Unsafe version of
imageMipTailSize(). |
static long |
nimageMipTailStride(long struct)
Unsafe version of
imageMipTailStride(). |
int |
sizeof() |
public static final int SIZEOF
public static final int ALIGNOF
public static final int FORMATPROPERTIES
public static final int IMAGEMIPTAILFIRSTLOD
public static final int IMAGEMIPTAILSIZE
public static final int IMAGEMIPTAILOFFSET
public static final int IMAGEMIPTAILSTRIDE
public VkSparseImageMemoryRequirements(java.nio.ByteBuffer container)
VkSparseImageMemoryRequirements 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 VkSparseImageFormatProperties formatProperties()
VkSparseImageFormatProperties view of the formatProperties field.public int imageMipTailFirstLod()
imageMipTailFirstLod field.public long imageMipTailSize()
imageMipTailSize field.public long imageMipTailOffset()
imageMipTailOffset field.public long imageMipTailStride()
imageMipTailStride field.public static VkSparseImageMemoryRequirements malloc()
VkSparseImageMemoryRequirements instance allocated with memAlloc. The instance must be explicitly freed.public static VkSparseImageMemoryRequirements calloc()
VkSparseImageMemoryRequirements instance allocated with memCalloc. The instance must be explicitly freed.public static VkSparseImageMemoryRequirements create()
VkSparseImageMemoryRequirements instance allocated with BufferUtils.public static VkSparseImageMemoryRequirements create(long address)
VkSparseImageMemoryRequirements instance for the specified memory address.@Nullable public static VkSparseImageMemoryRequirements createSafe(long address)
public static VkSparseImageMemoryRequirements.Buffer malloc(int capacity)
VkSparseImageMemoryRequirements.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer calloc(int capacity)
VkSparseImageMemoryRequirements.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer create(int capacity)
VkSparseImageMemoryRequirements.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer create(long address, int capacity)
VkSparseImageMemoryRequirements.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkSparseImageMemoryRequirements.Buffer createSafe(long address, int capacity)
public static VkSparseImageMemoryRequirements mallocStack()
VkSparseImageMemoryRequirements instance allocated on the thread-local MemoryStack.public static VkSparseImageMemoryRequirements callocStack()
VkSparseImageMemoryRequirements instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkSparseImageMemoryRequirements mallocStack(org.lwjgl.system.MemoryStack stack)
VkSparseImageMemoryRequirements instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkSparseImageMemoryRequirements callocStack(org.lwjgl.system.MemoryStack stack)
VkSparseImageMemoryRequirements instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkSparseImageMemoryRequirements.Buffer mallocStack(int capacity)
VkSparseImageMemoryRequirements.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer callocStack(int capacity)
VkSparseImageMemoryRequirements.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkSparseImageMemoryRequirements.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkSparseImageMemoryRequirements.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkSparseImageMemoryRequirements.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 VkSparseImageFormatProperties nformatProperties(long struct)
formatProperties().public static int nimageMipTailFirstLod(long struct)
imageMipTailFirstLod().public static long nimageMipTailSize(long struct)
imageMipTailSize().public static long nimageMipTailOffset(long struct)
imageMipTailOffset().public static long nimageMipTailStride(long struct)
imageMipTailStride().Copyright LWJGL. All Rights Reserved. License terms.