Package org.lwjgl.vulkan
Class VkPhysicalDeviceSparseProperties
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkPhysicalDeviceSparseProperties
-
- All Implemented Interfaces:
org.lwjgl.system.Pointer
public class VkPhysicalDeviceSparseProperties extends org.lwjgl.system.StructStructure specifying physical device sparse memory properties.Member documentation
residencyStandard2DBlockShape–TRUEif the physical device will access all single-sample 2D sparse resources using the standard sparse image block shapes (based on image format), as described in the Standard Sparse Image Block Shapes (Single Sample) table. If this property is not supported the value returned in theimageGranularitymember of theVkSparseImageFormatPropertiesstructure for single-sample 2D images is not required: to match the standard sparse image block dimensions listed in the table.residencyStandard2DMultisampleBlockShape–TRUEif the physical device will access all multisample 2D sparse resources using the standard sparse image block shapes (based on image format), as described in the Standard Sparse Image Block Shapes (MSAA) table. If this property is not supported, the value returned in theimageGranularitymember of theVkSparseImageFormatPropertiesstructure for multisample 2D images is not required: to match the standard sparse image block dimensions listed in the table.residencyStandard3DBlockShape–TRUEif the physical device will access all 3D sparse resources using the standard sparse image block shapes (based on image format), as described in the Standard Sparse Image Block Shapes (Single Sample) table. If this property is not supported, the value returned in theimageGranularitymember of theVkSparseImageFormatPropertiesstructure for 3D images is not required: to match the standard sparse image block dimensions listed in the table.residencyAlignedMipSize–TRUEif images with mip level dimensions that are not integer multiples of the corresponding dimensions of the sparse image block may be placed in the mip tail. If this property is not reported, only mip levels with dimensions smaller than theimageGranularitymember of theVkSparseImageFormatPropertiesstructure will be placed in the mip tail. If this property is reported the implementation is allowed to returnSPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BITin theflagsmember ofVkSparseImageFormatProperties, indicating that mip level dimensions that are not integer multiples of the corresponding dimensions of the sparse image block will be placed in the mip tail.residencyNonResidentStrict– specifies whether the physical device can consistently access non-resident regions of a resource. If this property isTRUE, access to non-resident regions of resources will be guaranteed to return values as if the resource were populated with 0; writes to non-resident regions will be discarded.
Layout
struct VkPhysicalDeviceSparseProperties { VkBool32 residencyStandard2DBlockShape; VkBool32 residencyStandard2DMultisampleBlockShape; VkBool32 residencyStandard3DBlockShape; VkBool32 residencyAlignedMipSize; VkBool32 residencyNonResidentStrict; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkPhysicalDeviceSparseProperties.BufferAn array ofVkPhysicalDeviceSparsePropertiesstructs.
-
Field Summary
Fields Modifier and Type Field Description static intALIGNOFThe struct alignment in bytes.static intRESIDENCYALIGNEDMIPSIZE
RESIDENCYNONRESIDENTSTRICT
RESIDENCYSTANDARD2DBLOCKSHAPE
RESIDENCYSTANDARD2DMULTISAMPLEBLOCKSHAPE
RESIDENCYSTANDARD3DBLOCKSHAPEThe struct member offsets.static intSIZEOFThe struct size in bytes.
-
Constructor Summary
Constructors Constructor Description VkPhysicalDeviceSparseProperties(java.nio.ByteBuffer container)Creates aVkPhysicalDeviceSparsePropertiesinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkPhysicalDeviceSparsePropertiescreate(long address)Returns a newVkPhysicalDeviceSparsePropertiesinstance for the specified memory address.static VkPhysicalDeviceSparseProperties.Buffercreate(long address, int capacity)Create aVkPhysicalDeviceSparseProperties.Bufferinstance at the specified memory.static VkPhysicalDeviceSparsePropertiescreateSafe(long address)static VkPhysicalDeviceSparseProperties.BuffercreateSafe(long address, int capacity)static intnresidencyAlignedMipSize(long struct)Unsafe version ofresidencyAlignedMipSize().static intnresidencyNonResidentStrict(long struct)Unsafe version ofresidencyNonResidentStrict().static intnresidencyStandard2DBlockShape(long struct)Unsafe version ofresidencyStandard2DBlockShape().static intnresidencyStandard2DMultisampleBlockShape(long struct)Unsafe version ofresidencyStandard2DMultisampleBlockShape().static intnresidencyStandard3DBlockShape(long struct)Unsafe version ofresidencyStandard3DBlockShape().booleanresidencyAlignedMipSize()Returns the value of theresidencyAlignedMipSizefield.booleanresidencyNonResidentStrict()Returns the value of theresidencyNonResidentStrictfield.booleanresidencyStandard2DBlockShape()Returns the value of theresidencyStandard2DBlockShapefield.booleanresidencyStandard2DMultisampleBlockShape()Returns the value of theresidencyStandard2DMultisampleBlockShapefield.booleanresidencyStandard3DBlockShape()Returns the value of theresidencyStandard3DBlockShapefield.intsizeof()
-
-
-
Constructor Detail
-
VkPhysicalDeviceSparseProperties
public VkPhysicalDeviceSparseProperties(java.nio.ByteBuffer container)
Creates aVkPhysicalDeviceSparsePropertiesinstance 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
-
residencyStandard2DBlockShape
public boolean residencyStandard2DBlockShape()
Returns the value of theresidencyStandard2DBlockShapefield.
-
residencyStandard2DMultisampleBlockShape
public boolean residencyStandard2DMultisampleBlockShape()
Returns the value of theresidencyStandard2DMultisampleBlockShapefield.
-
residencyStandard3DBlockShape
public boolean residencyStandard3DBlockShape()
Returns the value of theresidencyStandard3DBlockShapefield.
-
residencyAlignedMipSize
public boolean residencyAlignedMipSize()
Returns the value of theresidencyAlignedMipSizefield.
-
residencyNonResidentStrict
public boolean residencyNonResidentStrict()
Returns the value of theresidencyNonResidentStrictfield.
-
create
public static VkPhysicalDeviceSparseProperties create(long address)
Returns a newVkPhysicalDeviceSparsePropertiesinstance for the specified memory address.
-
createSafe
@Nullable public static VkPhysicalDeviceSparseProperties createSafe(long address)
-
create
public static VkPhysicalDeviceSparseProperties.Buffer create(long address, int capacity)
Create aVkPhysicalDeviceSparseProperties.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkPhysicalDeviceSparseProperties.Buffer createSafe(long address, int capacity)
-
nresidencyStandard2DBlockShape
public static int nresidencyStandard2DBlockShape(long struct)
Unsafe version ofresidencyStandard2DBlockShape().
-
nresidencyStandard2DMultisampleBlockShape
public static int nresidencyStandard2DMultisampleBlockShape(long struct)
Unsafe version ofresidencyStandard2DMultisampleBlockShape().
-
nresidencyStandard3DBlockShape
public static int nresidencyStandard3DBlockShape(long struct)
Unsafe version ofresidencyStandard3DBlockShape().
-
nresidencyAlignedMipSize
public static int nresidencyAlignedMipSize(long struct)
Unsafe version ofresidencyAlignedMipSize().
-
nresidencyNonResidentStrict
public static int nresidencyNonResidentStrict(long struct)
Unsafe version ofresidencyNonResidentStrict().
-
-