Class VkPhysicalDeviceLimits

All Implemented Interfaces:
Pointer

public class VkPhysicalDeviceLimits extends Struct<VkPhysicalDeviceLimits>
Structure reporting implementation-dependent physical device limits.
Description
1
For all bitmasks of VkSampleCountFlagBits, the sample count limits defined above represent the minimum supported sample counts for each image type. Individual images may support additional sample counts, which are queried using GetPhysicalDeviceImageFormatProperties as described in Supported Sample Counts.
See Also

VkPhysicalDeviceProperties

Layout


 struct VkPhysicalDeviceLimits {
     uint32_t maxImageDimension1D();
     uint32_t maxImageDimension2D();
     uint32_t maxImageDimension3D();
     uint32_t maxImageDimensionCube();
     uint32_t maxImageArrayLayers();
     uint32_t maxTexelBufferElements();
     uint32_t maxUniformBufferRange();
     uint32_t maxStorageBufferRange();
     uint32_t maxPushConstantsSize();
     uint32_t maxMemoryAllocationCount();
     uint32_t maxSamplerAllocationCount();
     VkDeviceSize bufferImageGranularity();
     VkDeviceSize sparseAddressSpaceSize();
     uint32_t maxBoundDescriptorSets();
     uint32_t maxPerStageDescriptorSamplers();
     uint32_t maxPerStageDescriptorUniformBuffers();
     uint32_t maxPerStageDescriptorStorageBuffers();
     uint32_t maxPerStageDescriptorSampledImages();
     uint32_t maxPerStageDescriptorStorageImages();
     uint32_t maxPerStageDescriptorInputAttachments();
     uint32_t maxPerStageResources();
     uint32_t maxDescriptorSetSamplers();
     uint32_t maxDescriptorSetUniformBuffers();
     uint32_t maxDescriptorSetUniformBuffersDynamic();
     uint32_t maxDescriptorSetStorageBuffers();
     uint32_t maxDescriptorSetStorageBuffersDynamic();
     uint32_t maxDescriptorSetSampledImages();
     uint32_t maxDescriptorSetStorageImages();
     uint32_t maxDescriptorSetInputAttachments();
     uint32_t maxVertexInputAttributes();
     uint32_t maxVertexInputBindings();
     uint32_t maxVertexInputAttributeOffset();
     uint32_t maxVertexInputBindingStride();
     uint32_t maxVertexOutputComponents();
     uint32_t maxTessellationGenerationLevel();
     uint32_t maxTessellationPatchSize();
     uint32_t maxTessellationControlPerVertexInputComponents();
     uint32_t maxTessellationControlPerVertexOutputComponents();
     uint32_t maxTessellationControlPerPatchOutputComponents();
     uint32_t maxTessellationControlTotalOutputComponents();
     uint32_t maxTessellationEvaluationInputComponents();
     uint32_t maxTessellationEvaluationOutputComponents();
     uint32_t maxGeometryShaderInvocations();
     uint32_t maxGeometryInputComponents();
     uint32_t maxGeometryOutputComponents();
     uint32_t maxGeometryOutputVertices();
     uint32_t maxGeometryTotalOutputComponents();
     uint32_t maxFragmentInputComponents();
     uint32_t maxFragmentOutputAttachments();
     uint32_t maxFragmentDualSrcAttachments();
     uint32_t maxFragmentCombinedOutputResources();
     uint32_t maxComputeSharedMemorySize();
     uint32_t maxComputeWorkGroupCount()[3];
     uint32_t maxComputeWorkGroupInvocations();
     uint32_t maxComputeWorkGroupSize()[3];
     uint32_t subPixelPrecisionBits();
     uint32_t subTexelPrecisionBits();
     uint32_t mipmapPrecisionBits();
     uint32_t maxDrawIndexedIndexValue();
     uint32_t maxDrawIndirectCount();
     float maxSamplerLodBias();
     float maxSamplerAnisotropy();
     uint32_t maxViewports();
     uint32_t maxViewportDimensions()[2];
     float viewportBoundsRange()[2];
     uint32_t viewportSubPixelBits();
     size_t minMemoryMapAlignment();
     VkDeviceSize minTexelBufferOffsetAlignment();
     VkDeviceSize minUniformBufferOffsetAlignment();
     VkDeviceSize minStorageBufferOffsetAlignment();
     int32_t minTexelOffset();
     uint32_t maxTexelOffset();
     int32_t minTexelGatherOffset();
     uint32_t maxTexelGatherOffset();
     float minInterpolationOffset();
     float maxInterpolationOffset();
     uint32_t subPixelInterpolationOffsetBits();
     uint32_t maxFramebufferWidth();
     uint32_t maxFramebufferHeight();
     uint32_t maxFramebufferLayers();
     VkSampleCountFlags framebufferColorSampleCounts();
     VkSampleCountFlags framebufferDepthSampleCounts();
     VkSampleCountFlags framebufferStencilSampleCounts();
     VkSampleCountFlags framebufferNoAttachmentsSampleCounts();
     uint32_t maxColorAttachments();
     VkSampleCountFlags sampledImageColorSampleCounts();
     VkSampleCountFlags sampledImageIntegerSampleCounts();
     VkSampleCountFlags sampledImageDepthSampleCounts();
     VkSampleCountFlags sampledImageStencilSampleCounts();
     VkSampleCountFlags storageImageSampleCounts();
     uint32_t maxSampleMaskWords();
     VkBool32 timestampComputeAndGraphics();
     float timestampPeriod();
     uint32_t maxClipDistances();
     uint32_t maxCullDistances();
     uint32_t maxCombinedClipAndCullDistances();
     uint32_t discreteQueuePriorities();
     float pointSizeRange()[2];
     float lineWidthRange()[2];
     float pointSizeGranularity();
     float lineWidthGranularity();
     VkBool32 strictLines();
     VkBool32 standardSampleLocations();
     VkDeviceSize optimalBufferCopyOffsetAlignment();
     VkDeviceSize optimalBufferCopyRowPitchAlignment();
     VkDeviceSize nonCoherentAtomSize();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • MAXIMAGEDIMENSION1D

      public static final int MAXIMAGEDIMENSION1D
      The struct member offsets.
    • MAXIMAGEDIMENSION2D

      public static final int MAXIMAGEDIMENSION2D
      The struct member offsets.
    • MAXIMAGEDIMENSION3D

      public static final int MAXIMAGEDIMENSION3D
      The struct member offsets.
    • MAXIMAGEDIMENSIONCUBE

      public static final int MAXIMAGEDIMENSIONCUBE
      The struct member offsets.
    • MAXIMAGEARRAYLAYERS

      public static final int MAXIMAGEARRAYLAYERS
      The struct member offsets.
    • MAXTEXELBUFFERELEMENTS

      public static final int MAXTEXELBUFFERELEMENTS
      The struct member offsets.
    • MAXUNIFORMBUFFERRANGE

      public static final int MAXUNIFORMBUFFERRANGE
      The struct member offsets.
    • MAXSTORAGEBUFFERRANGE

      public static final int MAXSTORAGEBUFFERRANGE
      The struct member offsets.
    • MAXPUSHCONSTANTSSIZE

      public static final int MAXPUSHCONSTANTSSIZE
      The struct member offsets.
    • MAXMEMORYALLOCATIONCOUNT

      public static final int MAXMEMORYALLOCATIONCOUNT
      The struct member offsets.
    • MAXSAMPLERALLOCATIONCOUNT

      public static final int MAXSAMPLERALLOCATIONCOUNT
      The struct member offsets.
    • BUFFERIMAGEGRANULARITY

      public static final int BUFFERIMAGEGRANULARITY
      The struct member offsets.
    • SPARSEADDRESSSPACESIZE

      public static final int SPARSEADDRESSSPACESIZE
      The struct member offsets.
    • MAXBOUNDDESCRIPTORSETS

      public static final int MAXBOUNDDESCRIPTORSETS
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORSAMPLERS

      public static final int MAXPERSTAGEDESCRIPTORSAMPLERS
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORUNIFORMBUFFERS

      public static final int MAXPERSTAGEDESCRIPTORUNIFORMBUFFERS
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORSTORAGEBUFFERS

      public static final int MAXPERSTAGEDESCRIPTORSTORAGEBUFFERS
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORSAMPLEDIMAGES

      public static final int MAXPERSTAGEDESCRIPTORSAMPLEDIMAGES
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORSTORAGEIMAGES

      public static final int MAXPERSTAGEDESCRIPTORSTORAGEIMAGES
      The struct member offsets.
    • MAXPERSTAGEDESCRIPTORINPUTATTACHMENTS

      public static final int MAXPERSTAGEDESCRIPTORINPUTATTACHMENTS
      The struct member offsets.
    • MAXPERSTAGERESOURCES

      public static final int MAXPERSTAGERESOURCES
      The struct member offsets.
    • MAXDESCRIPTORSETSAMPLERS

      public static final int MAXDESCRIPTORSETSAMPLERS
      The struct member offsets.
    • MAXDESCRIPTORSETUNIFORMBUFFERS

      public static final int MAXDESCRIPTORSETUNIFORMBUFFERS
      The struct member offsets.
    • MAXDESCRIPTORSETUNIFORMBUFFERSDYNAMIC

      public static final int MAXDESCRIPTORSETUNIFORMBUFFERSDYNAMIC
      The struct member offsets.
    • MAXDESCRIPTORSETSTORAGEBUFFERS

      public static final int MAXDESCRIPTORSETSTORAGEBUFFERS
      The struct member offsets.
    • MAXDESCRIPTORSETSTORAGEBUFFERSDYNAMIC

      public static final int MAXDESCRIPTORSETSTORAGEBUFFERSDYNAMIC
      The struct member offsets.
    • MAXDESCRIPTORSETSAMPLEDIMAGES

      public static final int MAXDESCRIPTORSETSAMPLEDIMAGES
      The struct member offsets.
    • MAXDESCRIPTORSETSTORAGEIMAGES

      public static final int MAXDESCRIPTORSETSTORAGEIMAGES
      The struct member offsets.
    • MAXDESCRIPTORSETINPUTATTACHMENTS

      public static final int MAXDESCRIPTORSETINPUTATTACHMENTS
      The struct member offsets.
    • MAXVERTEXINPUTATTRIBUTES

      public static final int MAXVERTEXINPUTATTRIBUTES
      The struct member offsets.
    • MAXVERTEXINPUTBINDINGS

      public static final int MAXVERTEXINPUTBINDINGS
      The struct member offsets.
    • MAXVERTEXINPUTATTRIBUTEOFFSET

      public static final int MAXVERTEXINPUTATTRIBUTEOFFSET
      The struct member offsets.
    • MAXVERTEXINPUTBINDINGSTRIDE

      public static final int MAXVERTEXINPUTBINDINGSTRIDE
      The struct member offsets.
    • MAXVERTEXOUTPUTCOMPONENTS

      public static final int MAXVERTEXOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONGENERATIONLEVEL

      public static final int MAXTESSELLATIONGENERATIONLEVEL
      The struct member offsets.
    • MAXTESSELLATIONPATCHSIZE

      public static final int MAXTESSELLATIONPATCHSIZE
      The struct member offsets.
    • MAXTESSELLATIONCONTROLPERVERTEXINPUTCOMPONENTS

      public static final int MAXTESSELLATIONCONTROLPERVERTEXINPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONCONTROLPERVERTEXOUTPUTCOMPONENTS

      public static final int MAXTESSELLATIONCONTROLPERVERTEXOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONCONTROLPERPATCHOUTPUTCOMPONENTS

      public static final int MAXTESSELLATIONCONTROLPERPATCHOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONCONTROLTOTALOUTPUTCOMPONENTS

      public static final int MAXTESSELLATIONCONTROLTOTALOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONEVALUATIONINPUTCOMPONENTS

      public static final int MAXTESSELLATIONEVALUATIONINPUTCOMPONENTS
      The struct member offsets.
    • MAXTESSELLATIONEVALUATIONOUTPUTCOMPONENTS

      public static final int MAXTESSELLATIONEVALUATIONOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXGEOMETRYSHADERINVOCATIONS

      public static final int MAXGEOMETRYSHADERINVOCATIONS
      The struct member offsets.
    • MAXGEOMETRYINPUTCOMPONENTS

      public static final int MAXGEOMETRYINPUTCOMPONENTS
      The struct member offsets.
    • MAXGEOMETRYOUTPUTCOMPONENTS

      public static final int MAXGEOMETRYOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXGEOMETRYOUTPUTVERTICES

      public static final int MAXGEOMETRYOUTPUTVERTICES
      The struct member offsets.
    • MAXGEOMETRYTOTALOUTPUTCOMPONENTS

      public static final int MAXGEOMETRYTOTALOUTPUTCOMPONENTS
      The struct member offsets.
    • MAXFRAGMENTINPUTCOMPONENTS

      public static final int MAXFRAGMENTINPUTCOMPONENTS
      The struct member offsets.
    • MAXFRAGMENTOUTPUTATTACHMENTS

      public static final int MAXFRAGMENTOUTPUTATTACHMENTS
      The struct member offsets.
    • MAXFRAGMENTDUALSRCATTACHMENTS

      public static final int MAXFRAGMENTDUALSRCATTACHMENTS
      The struct member offsets.
    • MAXFRAGMENTCOMBINEDOUTPUTRESOURCES

      public static final int MAXFRAGMENTCOMBINEDOUTPUTRESOURCES
      The struct member offsets.
    • MAXCOMPUTESHAREDMEMORYSIZE

      public static final int MAXCOMPUTESHAREDMEMORYSIZE
      The struct member offsets.
    • MAXCOMPUTEWORKGROUPCOUNT

      public static final int MAXCOMPUTEWORKGROUPCOUNT
      The struct member offsets.
    • MAXCOMPUTEWORKGROUPINVOCATIONS

      public static final int MAXCOMPUTEWORKGROUPINVOCATIONS
      The struct member offsets.
    • MAXCOMPUTEWORKGROUPSIZE

      public static final int MAXCOMPUTEWORKGROUPSIZE
      The struct member offsets.
    • SUBPIXELPRECISIONBITS

      public static final int SUBPIXELPRECISIONBITS
      The struct member offsets.
    • SUBTEXELPRECISIONBITS

      public static final int SUBTEXELPRECISIONBITS
      The struct member offsets.
    • MIPMAPPRECISIONBITS

      public static final int MIPMAPPRECISIONBITS
      The struct member offsets.
    • MAXDRAWINDEXEDINDEXVALUE

      public static final int MAXDRAWINDEXEDINDEXVALUE
      The struct member offsets.
    • MAXDRAWINDIRECTCOUNT

      public static final int MAXDRAWINDIRECTCOUNT
      The struct member offsets.
    • MAXSAMPLERLODBIAS

      public static final int MAXSAMPLERLODBIAS
      The struct member offsets.
    • MAXSAMPLERANISOTROPY

      public static final int MAXSAMPLERANISOTROPY
      The struct member offsets.
    • MAXVIEWPORTS

      public static final int MAXVIEWPORTS
      The struct member offsets.
    • MAXVIEWPORTDIMENSIONS

      public static final int MAXVIEWPORTDIMENSIONS
      The struct member offsets.
    • VIEWPORTBOUNDSRANGE

      public static final int VIEWPORTBOUNDSRANGE
      The struct member offsets.
    • VIEWPORTSUBPIXELBITS

      public static final int VIEWPORTSUBPIXELBITS
      The struct member offsets.
    • MINMEMORYMAPALIGNMENT

      public static final int MINMEMORYMAPALIGNMENT
      The struct member offsets.
    • MINTEXELBUFFEROFFSETALIGNMENT

      public static final int MINTEXELBUFFEROFFSETALIGNMENT
      The struct member offsets.
    • MINUNIFORMBUFFEROFFSETALIGNMENT

      public static final int MINUNIFORMBUFFEROFFSETALIGNMENT
      The struct member offsets.
    • MINSTORAGEBUFFEROFFSETALIGNMENT

      public static final int MINSTORAGEBUFFEROFFSETALIGNMENT
      The struct member offsets.
    • MINTEXELOFFSET

      public static final int MINTEXELOFFSET
      The struct member offsets.
    • MAXTEXELOFFSET

      public static final int MAXTEXELOFFSET
      The struct member offsets.
    • MINTEXELGATHEROFFSET

      public static final int MINTEXELGATHEROFFSET
      The struct member offsets.
    • MAXTEXELGATHEROFFSET

      public static final int MAXTEXELGATHEROFFSET
      The struct member offsets.
    • MININTERPOLATIONOFFSET

      public static final int MININTERPOLATIONOFFSET
      The struct member offsets.
    • MAXINTERPOLATIONOFFSET

      public static final int MAXINTERPOLATIONOFFSET
      The struct member offsets.
    • SUBPIXELINTERPOLATIONOFFSETBITS

      public static final int SUBPIXELINTERPOLATIONOFFSETBITS
      The struct member offsets.
    • MAXFRAMEBUFFERWIDTH

      public static final int MAXFRAMEBUFFERWIDTH
      The struct member offsets.
    • MAXFRAMEBUFFERHEIGHT

      public static final int MAXFRAMEBUFFERHEIGHT
      The struct member offsets.
    • MAXFRAMEBUFFERLAYERS

      public static final int MAXFRAMEBUFFERLAYERS
      The struct member offsets.
    • FRAMEBUFFERCOLORSAMPLECOUNTS

      public static final int FRAMEBUFFERCOLORSAMPLECOUNTS
      The struct member offsets.
    • FRAMEBUFFERDEPTHSAMPLECOUNTS

      public static final int FRAMEBUFFERDEPTHSAMPLECOUNTS
      The struct member offsets.
    • FRAMEBUFFERSTENCILSAMPLECOUNTS

      public static final int FRAMEBUFFERSTENCILSAMPLECOUNTS
      The struct member offsets.
    • FRAMEBUFFERNOATTACHMENTSSAMPLECOUNTS

      public static final int FRAMEBUFFERNOATTACHMENTSSAMPLECOUNTS
      The struct member offsets.
    • MAXCOLORATTACHMENTS

      public static final int MAXCOLORATTACHMENTS
      The struct member offsets.
    • SAMPLEDIMAGECOLORSAMPLECOUNTS

      public static final int SAMPLEDIMAGECOLORSAMPLECOUNTS
      The struct member offsets.
    • SAMPLEDIMAGEINTEGERSAMPLECOUNTS

      public static final int SAMPLEDIMAGEINTEGERSAMPLECOUNTS
      The struct member offsets.
    • SAMPLEDIMAGEDEPTHSAMPLECOUNTS

      public static final int SAMPLEDIMAGEDEPTHSAMPLECOUNTS
      The struct member offsets.
    • SAMPLEDIMAGESTENCILSAMPLECOUNTS

      public static final int SAMPLEDIMAGESTENCILSAMPLECOUNTS
      The struct member offsets.
    • STORAGEIMAGESAMPLECOUNTS

      public static final int STORAGEIMAGESAMPLECOUNTS
      The struct member offsets.
    • MAXSAMPLEMASKWORDS

      public static final int MAXSAMPLEMASKWORDS
      The struct member offsets.
    • TIMESTAMPCOMPUTEANDGRAPHICS

      public static final int TIMESTAMPCOMPUTEANDGRAPHICS
      The struct member offsets.
    • TIMESTAMPPERIOD

      public static final int TIMESTAMPPERIOD
      The struct member offsets.
    • MAXCLIPDISTANCES

      public static final int MAXCLIPDISTANCES
      The struct member offsets.
    • MAXCULLDISTANCES

      public static final int MAXCULLDISTANCES
      The struct member offsets.
    • MAXCOMBINEDCLIPANDCULLDISTANCES

      public static final int MAXCOMBINEDCLIPANDCULLDISTANCES
      The struct member offsets.
    • DISCRETEQUEUEPRIORITIES

      public static final int DISCRETEQUEUEPRIORITIES
      The struct member offsets.
    • POINTSIZERANGE

      public static final int POINTSIZERANGE
      The struct member offsets.
    • LINEWIDTHRANGE

      public static final int LINEWIDTHRANGE
      The struct member offsets.
    • POINTSIZEGRANULARITY

      public static final int POINTSIZEGRANULARITY
      The struct member offsets.
    • LINEWIDTHGRANULARITY

      public static final int LINEWIDTHGRANULARITY
      The struct member offsets.
    • STRICTLINES

      public static final int STRICTLINES
      The struct member offsets.
    • STANDARDSAMPLELOCATIONS

      public static final int STANDARDSAMPLELOCATIONS
      The struct member offsets.
    • OPTIMALBUFFERCOPYOFFSETALIGNMENT

      public static final int OPTIMALBUFFERCOPYOFFSETALIGNMENT
      The struct member offsets.
    • OPTIMALBUFFERCOPYROWPITCHALIGNMENT

      public static final int OPTIMALBUFFERCOPYROWPITCHALIGNMENT
      The struct member offsets.
    • NONCOHERENTATOMSIZE

      public static final int NONCOHERENTATOMSIZE
      The struct member offsets.
  • Constructor Details

    • VkPhysicalDeviceLimits

      public VkPhysicalDeviceLimits(ByteBuffer container)
      Creates a VkPhysicalDeviceLimits 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.

  • Method Details

    • sizeof

      public int sizeof()
      Description copied from class: Struct
      Returns sizeof(struct).
      Specified by:
      sizeof in class Struct<VkPhysicalDeviceLimits>
    • maxImageDimension1D

      public int maxImageDimension1D()
      the largest dimension (width) that is guaranteed to be supported for all images created with an imageType of IMAGE_TYPE_1D. Some combinations of image parameters (format, usage, etc.) may allow support for larger dimensions, which can be queried using GetPhysicalDeviceImageFormatProperties.
    • maxImageDimension2D

      public int maxImageDimension2D()
      the largest dimension (width or height) that is guaranteed to be supported for all images created with an imageType of IMAGE_TYPE_2D and without IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags. Some combinations of image parameters (format, usage, etc.) may allow support for larger dimensions, which can be queried using GetPhysicalDeviceImageFormatProperties.
    • maxImageDimension3D

      public int maxImageDimension3D()
      the largest dimension (width, height, or depth) that is guaranteed to be supported for all images created with an imageType of IMAGE_TYPE_3D. Some combinations of image parameters (format, usage, etc.) may allow support for larger dimensions, which can be queried using GetPhysicalDeviceImageFormatProperties.
    • maxImageDimensionCube

      public int maxImageDimensionCube()
      the largest dimension (width or height) that is guaranteed to be supported for all images created with an imageType of IMAGE_TYPE_2D and with IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags. Some combinations of image parameters (format, usage, etc.) may allow support for larger dimensions, which can be queried using GetPhysicalDeviceImageFormatProperties.
    • maxImageArrayLayers

      public int maxImageArrayLayers()
      the maximum number of layers (arrayLayers) for an image.
    • maxTexelBufferElements

      public int maxTexelBufferElements()
      the maximum number of addressable texels for a buffer view created on a buffer which was created with the BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT or BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT set in the usage member of the VkBufferCreateInfo structure.
    • maxUniformBufferRange

      public int maxUniformBufferRange()
      the maximum value that can be specified in the range member of a VkDescriptorBufferInfo structure passed to UpdateDescriptorSets for descriptors of type DESCRIPTOR_TYPE_UNIFORM_BUFFER or DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
    • maxStorageBufferRange

      public int maxStorageBufferRange()
      the maximum value that can be specified in the range member of a VkDescriptorBufferInfo structure passed to UpdateDescriptorSets for descriptors of type DESCRIPTOR_TYPE_STORAGE_BUFFER or DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
    • maxPushConstantsSize

      public int maxPushConstantsSize()
      the maximum size, in bytes, of the pool of push constant memory. For each of the push constant ranges indicated by the pPushConstantRanges member of the VkPipelineLayoutCreateInfo structure, (offset + size) must be less than or equal to this limit.
    • maxMemoryAllocationCount

      public int maxMemoryAllocationCount()
      the maximum number of device memory allocations, as created by AllocateMemory, which can simultaneously exist.
    • maxSamplerAllocationCount

      public int maxSamplerAllocationCount()
      the maximum number of sampler objects, as created by CreateSampler, which can simultaneously exist on a device.
    • bufferImageGranularity

      public long bufferImageGranularity()
      the granularity, in bytes, at which buffer or linear image resources, and optimal image resources can be bound to adjacent offsets in the same VkDeviceMemory object without aliasing. See Buffer-Image Granularity for more details.
    • sparseAddressSpaceSize

      public long sparseAddressSpaceSize()
      the total amount of address space available, in bytes, for sparse memory resources. This is an upper bound on the sum of the sizes of all sparse resources, regardless of whether any memory is bound to them. If the extendedSparseAddressSpace feature is enabled, then the difference between extendedSparseAddressSpaceSize and sparseAddressSpaceSize can also be used, by VkImage created with the usage member of VkImageCreateInfo only containing bits in extendedSparseImageUsageFlags and VkBuffer created with the usage member of VkBufferCreateInfo only containing bits in extendedSparseBufferUsageFlags.
    • maxBoundDescriptorSets

      public int maxBoundDescriptorSets()
      the maximum number of descriptor sets that can be simultaneously used by a pipeline. All DescriptorSet decorations in shader modules must have a value less than maxBoundDescriptorSets. See Descriptor Sets.
    • maxPerStageDescriptorSamplers

      public int maxPerStageDescriptorSamplers()
      the maximum number of samplers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_SAMPLER or DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. See Sampler and Combined Image Sampler.
    • maxPerStageDescriptorUniformBuffers

      public int maxPerStageDescriptorUniformBuffers()
      the maximum number of uniform buffers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_UNIFORM_BUFFER or DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. See Uniform Buffer and Dynamic Uniform Buffer.
    • maxPerStageDescriptorStorageBuffers

      public int maxPerStageDescriptorStorageBuffers()
      the maximum number of storage buffers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_BUFFER or DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a pipeline shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. See Storage Buffer and Dynamic Storage Buffer.
    • maxPerStageDescriptorSampledImages

      public int maxPerStageDescriptorSampledImages()
      the maximum number of sampled images that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, DESCRIPTOR_TYPE_SAMPLED_IMAGE, or DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a pipeline shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. See Combined Image Sampler, Sampled Image, and Uniform Texel Buffer.
    • maxPerStageDescriptorStorageImages

      public int maxPerStageDescriptorStorageImages()
      the maximum number of storage images that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_IMAGE, or DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a pipeline shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. See Storage Image, and Storage Texel Buffer.
    • maxPerStageDescriptorInputAttachments

      public int maxPerStageDescriptorInputAttachments()
      the maximum number of input attachments that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. A descriptor is accessible to a pipeline shader stage when the stageFlags member of the VkDescriptorSetLayoutBinding structure has the bit for that shader stage set. These are only supported for the fragment stage. See Input Attachment.
    • maxPerStageResources

      public int maxPerStageResources()
      the maximum number of resources that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, DESCRIPTOR_TYPE_SAMPLED_IMAGE, DESCRIPTOR_TYPE_STORAGE_IMAGE, DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, DESCRIPTOR_TYPE_UNIFORM_BUFFER, DESCRIPTOR_TYPE_STORAGE_BUFFER, DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, or DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. For the fragment shader stage the framebuffer color attachments also count against this limit.
    • maxDescriptorSetSamplers

      public int maxDescriptorSetSamplers()
      the maximum number of samplers that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_SAMPLER or DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Sampler and Combined Image Sampler.
    • maxDescriptorSetUniformBuffers

      public int maxDescriptorSetUniformBuffers()
      the maximum number of uniform buffers that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_UNIFORM_BUFFER or DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Uniform Buffer and Dynamic Uniform Buffer.
    • maxDescriptorSetUniformBuffersDynamic

      public int maxDescriptorSetUniformBuffersDynamic()
      the maximum number of dynamic uniform buffers that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Dynamic Uniform Buffer.
    • maxDescriptorSetStorageBuffers

      public int maxDescriptorSetStorageBuffers()
      the maximum number of storage buffers that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_BUFFER or DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Storage Buffer and Dynamic Storage Buffer.
    • maxDescriptorSetStorageBuffersDynamic

      public int maxDescriptorSetStorageBuffersDynamic()
      the maximum number of dynamic storage buffers that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Dynamic Storage Buffer.
    • maxDescriptorSetSampledImages

      public int maxDescriptorSetSampledImages()
      the maximum number of sampled images that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, DESCRIPTOR_TYPE_SAMPLED_IMAGE, or DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Combined Image Sampler, Sampled Image, and Uniform Texel Buffer.
    • maxDescriptorSetStorageImages

      public int maxDescriptorSetStorageImages()
      the maximum number of storage images that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_STORAGE_IMAGE, or DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Storage Image, and Storage Texel Buffer.
    • maxDescriptorSetInputAttachments

      public int maxDescriptorSetInputAttachments()
      the maximum number of input attachments that can be included in a pipeline layout. Descriptors with a type of DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT bit set count against this limit. See Input Attachment.
    • maxVertexInputAttributes

      public int maxVertexInputAttributes()
      the maximum number of vertex input attributes that can be specified for a graphics pipeline. These are described in the array of VkVertexInputAttributeDescription structures that are provided at graphics pipeline creation time via the pVertexAttributeDescriptions member of the VkPipelineVertexInputStateCreateInfo structure. See Vertex Attributes and Vertex Input Description.
    • maxVertexInputBindings

      public int maxVertexInputBindings()
      the maximum number of vertex buffers that can be specified for providing vertex attributes to a graphics pipeline. These are described in the array of VkVertexInputBindingDescription structures that are provided at graphics pipeline creation time via the pVertexBindingDescriptions member of the VkPipelineVertexInputStateCreateInfo structure. The binding member of VkVertexInputBindingDescription must be less than this limit. See Vertex Input Description.
    • maxVertexInputAttributeOffset

      public int maxVertexInputAttributeOffset()
      the maximum vertex input attribute offset that can be added to the vertex input binding stride. The offset member of the VkVertexInputAttributeDescription structure must be less than or equal to this limit. See Vertex Input Description.
    • maxVertexInputBindingStride

      public int maxVertexInputBindingStride()
      the maximum vertex input binding stride that can be specified in a vertex input binding. The stride member of the VkVertexInputBindingDescription structure must be less than or equal to this limit. See Vertex Input Description.
    • maxVertexOutputComponents

      public int maxVertexOutputComponents()
      the maximum number of components of output variables which can be output by a vertex shader. See Vertex Shaders.
    • maxTessellationGenerationLevel

      public int maxTessellationGenerationLevel()
      the maximum tessellation generation level supported by the fixed-function tessellation primitive generator. See Tessellation.
    • maxTessellationPatchSize

      public int maxTessellationPatchSize()
      the maximum patch size, in vertices, of patches that can be processed by the tessellation control shader and tessellation primitive generator. The patchControlPoints member of the VkPipelineTessellationStateCreateInfo structure specified at pipeline creation time and the value provided in the OutputVertices execution mode of shader modules must be less than or equal to this limit. See Tessellation.
    • maxTessellationControlPerVertexInputComponents

      public int maxTessellationControlPerVertexInputComponents()
      the maximum number of components of input variables which can be provided as per-vertex inputs to the tessellation control shader stage.
    • maxTessellationControlPerVertexOutputComponents

      public int maxTessellationControlPerVertexOutputComponents()
      the maximum number of components of per-vertex output variables which can be output from the tessellation control shader stage.
    • maxTessellationControlPerPatchOutputComponents

      public int maxTessellationControlPerPatchOutputComponents()
      the maximum number of components of per-patch output variables which can be output from the tessellation control shader stage.
    • maxTessellationControlTotalOutputComponents

      public int maxTessellationControlTotalOutputComponents()
      the maximum total number of components of per-vertex and per-patch output variables which can be output from the tessellation control shader stage.
    • maxTessellationEvaluationInputComponents

      public int maxTessellationEvaluationInputComponents()
      the maximum number of components of input variables which can be provided as per-vertex inputs to the tessellation evaluation shader stage.
    • maxTessellationEvaluationOutputComponents

      public int maxTessellationEvaluationOutputComponents()
      the maximum number of components of per-vertex output variables which can be output from the tessellation evaluation shader stage.
    • maxGeometryShaderInvocations

      public int maxGeometryShaderInvocations()
      the maximum invocation count supported for instanced geometry shaders. The value provided in the Invocations execution mode of shader modules must be less than or equal to this limit. See Geometry Shading.
    • maxGeometryInputComponents

      public int maxGeometryInputComponents()
      the maximum number of components of input variables which can be provided as inputs to the geometry shader stage.
    • maxGeometryOutputComponents

      public int maxGeometryOutputComponents()
      the maximum number of components of output variables which can be output from the geometry shader stage.
    • maxGeometryOutputVertices

      public int maxGeometryOutputVertices()
      the maximum number of vertices which can be emitted by any geometry shader.
    • maxGeometryTotalOutputComponents

      public int maxGeometryTotalOutputComponents()
      the maximum total number of components of output variables, across all emitted vertices, which can be output from the geometry shader stage.
    • maxFragmentInputComponents

      public int maxFragmentInputComponents()
      the maximum number of components of input variables which can be provided as inputs to the fragment shader stage.
    • maxFragmentOutputAttachments

      public int maxFragmentOutputAttachments()
      the maximum number of output attachments which can be written to by the fragment shader stage.
    • maxFragmentDualSrcAttachments

      public int maxFragmentDualSrcAttachments()
      the maximum number of output attachments which can be written to by the fragment shader stage when blending is enabled and one of the dual source blend modes is in use. See Dual-Source Blending and dualSrcBlend.
    • maxFragmentCombinedOutputResources

      public int maxFragmentCombinedOutputResources()
      the total number of storage buffers, storage images, and output Location decorated color attachments (described in Fragment Output Interface) which can be used in the fragment shader stage.
    • maxComputeSharedMemorySize

      public int maxComputeSharedMemorySize()
      the maximum total storage size, in bytes, available for variables declared with the Workgroup storage class in shader modules (or with the shared storage qualifier in GLSL) in the compute shader stage.
    • maxComputeWorkGroupCount

      public IntBuffer maxComputeWorkGroupCount()
      the maximum number of local workgroups that can be dispatched by a single dispatching command. These three values represent the maximum number of local workgroups for the X, Y, and Z dimensions, respectively. The workgroup count parameters to the dispatching commands must be less than or equal to the corresponding limit. See Dispatching Commands.
    • maxComputeWorkGroupCount

      public int maxComputeWorkGroupCount(int index)
      the maximum number of local workgroups that can be dispatched by a single dispatching command. These three values represent the maximum number of local workgroups for the X, Y, and Z dimensions, respectively. The workgroup count parameters to the dispatching commands must be less than or equal to the corresponding limit. See Dispatching Commands.
    • maxComputeWorkGroupInvocations

      public int maxComputeWorkGroupInvocations()
      the maximum total number of compute shader invocations in a single local workgroup. The product of the X, Y, and Z sizes, as specified by the LocalSize or LocalSizeId execution mode in shader modules or by the object decorated by the WorkgroupSize decoration, must be less than or equal to this limit.
    • maxComputeWorkGroupSize

      public IntBuffer maxComputeWorkGroupSize()
      the maximum size of a local compute workgroup, per dimension. 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 or LocalSizeId execution mode or by the object decorated by the WorkgroupSize decoration in shader modules, must be less than or equal to the corresponding limit.
    • maxComputeWorkGroupSize

      public int maxComputeWorkGroupSize(int index)
      the maximum size of a local compute workgroup, per dimension. 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 or LocalSizeId execution mode or by the object decorated by the WorkgroupSize decoration in shader modules, must be less than or equal to the corresponding limit.
    • subPixelPrecisionBits

      public int subPixelPrecisionBits()
      the number of bits of subpixel precision in framebuffer coordinates xf and yf. See Rasterization.
    • subTexelPrecisionBits

      public int subTexelPrecisionBits()
      the number of bits of precision in the division along an axis of an image used for minification and magnification filters. 2subTexelPrecisionBits is the actual number of divisions along each axis of the image represented. Sub-texel values calculated during image sampling will snap to these locations when generating the filtered results.
    • mipmapPrecisionBits

      public int mipmapPrecisionBits()
      the number of bits of division that the LOD calculation for mipmap fetching get snapped to when determining the contribution from each mip level to the mip filtered results. 2mipmapPrecisionBits is the actual number of divisions.
    • maxDrawIndexedIndexValue

      public int maxDrawIndexedIndexValue()
      the maximum index value that can be used for indexed draw calls when using 32-bit indices. This excludes the primitive restart index value of 0xFFFFFFFF. See fullDrawIndexUint32.
    • maxDrawIndirectCount

      public int maxDrawIndirectCount()
      the maximum draw count that is supported for indirect drawing calls. See multiDrawIndirect.
    • maxSamplerLodBias

      public float maxSamplerLodBias()
      the maximum absolute sampler LOD bias. The sum of the mipLodBias member of the VkSamplerCreateInfo structure and the Bias operand of image sampling operations in shader modules (or 0 if no Bias operand is provided to an image sampling operation) are clamped to the range [-maxSamplerLodBias,+maxSamplerLodBias]. See samplers-mipLodBias.
    • maxSamplerAnisotropy

      public float maxSamplerAnisotropy()
      the maximum degree of sampler anisotropy. The maximum degree of anisotropic filtering used for an image sampling operation is the minimum of the maxAnisotropy member of the VkSamplerCreateInfo structure and this limit. See samplers-maxAnisotropy.
    • maxViewports

      public int maxViewports()
      the maximum number of active viewports. The viewportCount member of the VkPipelineViewportStateCreateInfo structure that is provided at pipeline creation must be less than or equal to this limit.
    • maxViewportDimensions

      public IntBuffer maxViewportDimensions()
      are the maximum viewport dimensions in the X (width) and Y (height) dimensions, respectively. The maximum viewport dimensions must be greater than or equal to the largest image which can be created and used as a framebuffer attachment. See Controlling the Viewport.
    • maxViewportDimensions

      public int maxViewportDimensions(int index)
      are the maximum viewport dimensions in the X (width) and Y (height) dimensions, respectively. The maximum viewport dimensions must be greater than or equal to the largest image which can be created and used as a framebuffer attachment. See Controlling the Viewport.
    • viewportBoundsRange

      public FloatBuffer viewportBoundsRange()
      the [minimum, maximum] range that the corners of a viewport must be contained in. This range must be at least [-2 × size, 2 × size - 1], where size = max(maxViewportDimensions[0], maxViewportDimensions[1]). See Controlling the Viewport.
      Note

      The intent of the viewportBoundsRange limit is to allow a maximum sized viewport to be arbitrarily shifted relative to the output target as long as at least some portion intersects. This would give a bounds limit of [-size + 1, 2 × size - 1] which would allow all possible non-empty-set intersections of the output target and the viewport. Since these numbers are typically powers of two, picking the signed number range using the smallest possible number of bits ends up with the specified range.

    • viewportBoundsRange

      public float viewportBoundsRange(int index)
      the [minimum, maximum] range that the corners of a viewport must be contained in. This range must be at least [-2 × size, 2 × size - 1], where size = max(maxViewportDimensions[0], maxViewportDimensions[1]). See Controlling the Viewport.
      Note

      The intent of the viewportBoundsRange limit is to allow a maximum sized viewport to be arbitrarily shifted relative to the output target as long as at least some portion intersects. This would give a bounds limit of [-size + 1, 2 × size - 1] which would allow all possible non-empty-set intersections of the output target and the viewport. Since these numbers are typically powers of two, picking the signed number range using the smallest possible number of bits ends up with the specified range.

    • viewportSubPixelBits

      public int viewportSubPixelBits()
      the number of bits of subpixel precision for viewport bounds. The subpixel precision that floating-point viewport bounds are interpreted at is given by this limit.
    • minMemoryMapAlignment

      public long minMemoryMapAlignment()
      the minimum required alignment, in bytes, of host visible memory allocations within the host address space. When mapping a memory allocation with MapMemory, subtracting offset bytes from the returned pointer will always produce an integer multiple of this limit. See Host Access to Device Memory Objects. The value must be a power of two.
    • minTexelBufferOffsetAlignment

      public long minTexelBufferOffsetAlignment()
      the minimum required alignment, in bytes, for the offset member of the VkBufferViewCreateInfo structure for texel buffers. The value must be a power of two. If texelBufferAlignment is enabled, this limit is equivalent to the maximum of the uniformTexelBufferOffsetAlignmentBytes and storageTexelBufferOffsetAlignmentBytes members of VkPhysicalDeviceTexelBufferAlignmentProperties, but smaller alignment is optionally allowed by storageTexelBufferOffsetSingleTexelAlignment and uniformTexelBufferOffsetSingleTexelAlignment. If texelBufferAlignment is not enabled, VkBufferViewCreateInfo::offset must be a multiple of this value.
    • minUniformBufferOffsetAlignment

      public long minUniformBufferOffsetAlignment()
      the minimum required alignment, in bytes, for the offset member of the VkDescriptorBufferInfo structure for uniform buffers. When a descriptor of type DESCRIPTOR_TYPE_UNIFORM_BUFFER or DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC is updated, the offset must be an integer multiple of this limit. Similarly, dynamic offsets for uniform buffers must be multiples of this limit. The value must be a power of two.
    • minStorageBufferOffsetAlignment

      public long minStorageBufferOffsetAlignment()
      the minimum required alignment, in bytes, for the offset member of the VkDescriptorBufferInfo structure for storage buffers. When a descriptor of type DESCRIPTOR_TYPE_STORAGE_BUFFER or DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC is updated, the offset must be an integer multiple of this limit. Similarly, dynamic offsets for storage buffers must be multiples of this limit. The value must be a power of two.
    • minTexelOffset

      public int minTexelOffset()
      the minimum offset value for the ConstOffset image operand of any of the OpImageSample* or OpImageFetch* image instructions.
    • maxTexelOffset

      public int maxTexelOffset()
      the maximum offset value for the ConstOffset image operand of any of the OpImageSample* or OpImageFetch* image instructions.
    • minTexelGatherOffset

      public int minTexelGatherOffset()
      the minimum offset value for the Offset, ConstOffset, or ConstOffsets image operands of any of the OpImage*Gather image instructions.
    • maxTexelGatherOffset

      public int maxTexelGatherOffset()
      the maximum offset value for the Offset, ConstOffset, or ConstOffsets image operands of any of the OpImage*Gather image instructions.
    • minInterpolationOffset

      public float minInterpolationOffset()
      the base minimum (inclusive) negative offset value for the Offset operand of the InterpolateAtOffset extended instruction.
    • maxInterpolationOffset

      public float maxInterpolationOffset()
      the base maximum (inclusive) positive offset value for the Offset operand of the InterpolateAtOffset extended instruction.
    • subPixelInterpolationOffsetBits

      public int subPixelInterpolationOffsetBits()
      the number of fractional bits that the x and y offsets to the InterpolateAtOffset extended instruction may be rounded to as fixed-point values.
    • maxFramebufferWidth

      public int maxFramebufferWidth()
      the maximum width for a framebuffer. The width member of the VkFramebufferCreateInfo structure must be less than or equal to this limit.
    • maxFramebufferHeight

      public int maxFramebufferHeight()
      the maximum height for a framebuffer. The height member of the VkFramebufferCreateInfo structure must be less than or equal to this limit.
    • maxFramebufferLayers

      public int maxFramebufferLayers()
      the maximum layer count for a layered framebuffer. The layers member of the VkFramebufferCreateInfo structure must be less than or equal to this limit.
    • framebufferColorSampleCounts

      public int framebufferColorSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the color sample counts that are supported for all framebuffer color attachments with floating- or fixed-point formats. For color attachments with integer formats, see framebufferIntegerColorSampleCounts.
    • framebufferDepthSampleCounts

      public int framebufferDepthSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the supported depth sample counts for all framebuffer depth/stencil attachments, when the format includes a depth component.
    • framebufferStencilSampleCounts

      public int framebufferStencilSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the supported stencil sample counts for all framebuffer depth/stencil attachments, when the format includes a stencil component.
    • framebufferNoAttachmentsSampleCounts

      public int framebufferNoAttachmentsSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the supported sample counts for a subpass which uses no attachments.
    • maxColorAttachments

      public int maxColorAttachments()
      the maximum number of color attachments that can be used by a subpass in a render pass. The colorAttachmentCount member of the VkSubpassDescription or VkSubpassDescription2 structure must be less than or equal to this limit.
    • sampledImageColorSampleCounts

      public int sampledImageColorSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with IMAGE_TILING_OPTIMAL, usage containing IMAGE_USAGE_SAMPLED_BIT, and a non-integer color format.
    • sampledImageIntegerSampleCounts

      public int sampledImageIntegerSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with IMAGE_TILING_OPTIMAL, usage containing IMAGE_USAGE_SAMPLED_BIT, and an integer color format.
    • sampledImageDepthSampleCounts

      public int sampledImageDepthSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with IMAGE_TILING_OPTIMAL, usage containing IMAGE_USAGE_SAMPLED_BIT, and a depth format.
    • sampledImageStencilSampleCounts

      public int sampledImageStencilSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with IMAGE_TILING_OPTIMAL, usage containing IMAGE_USAGE_SAMPLED_BIT, and a stencil format.
    • storageImageSampleCounts

      public int storageImageSampleCounts()
      a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with IMAGE_TILING_OPTIMAL, and usage containing IMAGE_USAGE_STORAGE_BIT.
    • maxSampleMaskWords

      public int maxSampleMaskWords()
      the maximum number of array elements of a variable decorated with the SampleMask built-in decoration.
    • timestampComputeAndGraphics

      public boolean timestampComputeAndGraphics()
      specifies support for timestamps on all graphics and compute queues. If this limit is set to TRUE, all queues that advertise the QUEUE_GRAPHICS_BIT or QUEUE_COMPUTE_BIT in the VkQueueFamilyProperties::queueFlags support VkQueueFamilyProperties::timestampValidBits of at least 36. See Timestamp Queries.
    • timestampPeriod

      public float timestampPeriod()
      the number of nanoseconds required for a timestamp query to be incremented by 1. See Timestamp Queries.
    • maxClipDistances

      public int maxClipDistances()
      the maximum number of clip distances that can be used in a single shader stage. The size of any array declared with the ClipDistance built-in decoration in a shader module must be less than or equal to this limit.
    • maxCullDistances

      public int maxCullDistances()
      the maximum number of cull distances that can be used in a single shader stage. The size of any array declared with the CullDistance built-in decoration in a shader module must be less than or equal to this limit.
    • maxCombinedClipAndCullDistances

      public int maxCombinedClipAndCullDistances()
      the maximum combined number of clip and cull distances that can be used in a single shader stage. The sum of the sizes of any pair of arrays declared with the ClipDistance and CullDistance built-in decoration used by a single shader stage in a shader module must be less than or equal to this limit.
    • discreteQueuePriorities

      public int discreteQueuePriorities()
      the number of discrete priorities that can be assigned to a queue based on the value of each member of VkDeviceQueueCreateInfo::pQueuePriorities. This must be at least 2, and levels must be spread evenly over the range, with at least one level at 1.0, and another at 0.0. See Queue Priority.
    • pointSizeRange

      public FloatBuffer pointSizeRange()
      the range [minimum,maximum] of supported sizes for points. Values written to variables decorated with the PointSize built-in decoration are clamped to this range.
    • pointSizeRange

      public float pointSizeRange(int index)
      the range [minimum,maximum] of supported sizes for points. Values written to variables decorated with the PointSize built-in decoration are clamped to this range.
    • lineWidthRange

      public FloatBuffer lineWidthRange()
      the range [minimum,maximum] of supported widths for lines. Values specified by the lineWidth member of the VkPipelineRasterizationStateCreateInfo or the lineWidth parameter to vkCmdSetLineWidth are clamped to this range.
    • lineWidthRange

      public float lineWidthRange(int index)
      the range [minimum,maximum] of supported widths for lines. Values specified by the lineWidth member of the VkPipelineRasterizationStateCreateInfo or the lineWidth parameter to vkCmdSetLineWidth are clamped to this range.
    • pointSizeGranularity

      public float pointSizeGranularity()
      the granularity of supported point sizes. Not all point sizes in the range defined by pointSizeRange are supported. This limit specifies the granularity (or increment) between successive supported point sizes.
    • lineWidthGranularity

      public float lineWidthGranularity()
      the granularity of supported line widths. Not all line widths in the range defined by lineWidthRange are supported. This limit specifies the granularity (or increment) between successive supported line widths.
    • strictLines

      public boolean strictLines()
      specifies whether lines are rasterized according to the preferred method of rasterization. If set to FALSE, lines may be rasterized under a relaxed set of rules. If set to TRUE, lines are rasterized as per the strict definition. See Basic Line Segment Rasterization.
    • standardSampleLocations

      public boolean standardSampleLocations()
      specifies whether rasterization uses the standard sample locations as documented in Multisampling. If set to TRUE, the implementation uses the documented sample locations. If set to FALSE, the implementation may use different sample locations.
    • optimalBufferCopyOffsetAlignment

      public long optimalBufferCopyOffsetAlignment()
      the optimal buffer offset alignment in bytes for CmdCopyBufferToImage2, CmdCopyBufferToImage, CmdCopyImageToBuffer2, and CmdCopyImageToBuffer. This value is also the optimal host memory offset alignment in bytes for CopyMemoryToImageEXT and CopyImageToMemoryEXT. The per texel alignment requirements are enforced, but applications should use the optimal alignment for optimal performance and power use. The value must be a power of two.
    • optimalBufferCopyRowPitchAlignment

      public long optimalBufferCopyRowPitchAlignment()
      the optimal buffer row pitch alignment in bytes for CmdCopyBufferToImage2, CmdCopyBufferToImage, CmdCopyImageToBuffer2, and CmdCopyImageToBuffer. This value is also the optimal host memory row pitch alignment in bytes for CopyMemoryToImageEXT and CopyImageToMemoryEXT. Row pitch is the number of bytes between texels with the same X coordinate in adjacent rows (Y coordinates differ by one). The per texel alignment requirements are enforced, but applications should use the optimal alignment for optimal performance and power use. The value must be a power of two.
    • nonCoherentAtomSize

      public long nonCoherentAtomSize()
      the size and alignment in bytes that bounds concurrent access to host-mapped device memory. The value must be a power of two.
    • create

      public static VkPhysicalDeviceLimits create(long address)
      Returns a new VkPhysicalDeviceLimits instance for the specified memory address.
    • createSafe

      @Nullable public static VkPhysicalDeviceLimits createSafe(long address)
      Like create, but returns null if address is NULL.
    • create

      public static VkPhysicalDeviceLimits.Buffer create(long address, int capacity)
      Create a VkPhysicalDeviceLimits.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      @Nullable public static VkPhysicalDeviceLimits.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • nmaxImageDimension1D

      public static int nmaxImageDimension1D(long struct)
      Unsafe version of maxImageDimension1D().
    • nmaxImageDimension2D

      public static int nmaxImageDimension2D(long struct)
      Unsafe version of maxImageDimension2D().
    • nmaxImageDimension3D

      public static int nmaxImageDimension3D(long struct)
      Unsafe version of maxImageDimension3D().
    • nmaxImageDimensionCube

      public static int nmaxImageDimensionCube(long struct)
      Unsafe version of maxImageDimensionCube().
    • nmaxImageArrayLayers

      public static int nmaxImageArrayLayers(long struct)
      Unsafe version of maxImageArrayLayers().
    • nmaxTexelBufferElements

      public static int nmaxTexelBufferElements(long struct)
      Unsafe version of maxTexelBufferElements().
    • nmaxUniformBufferRange

      public static int nmaxUniformBufferRange(long struct)
      Unsafe version of maxUniformBufferRange().
    • nmaxStorageBufferRange

      public static int nmaxStorageBufferRange(long struct)
      Unsafe version of maxStorageBufferRange().
    • nmaxPushConstantsSize

      public static int nmaxPushConstantsSize(long struct)
      Unsafe version of maxPushConstantsSize().
    • nmaxMemoryAllocationCount

      public static int nmaxMemoryAllocationCount(long struct)
      Unsafe version of maxMemoryAllocationCount().
    • nmaxSamplerAllocationCount

      public static int nmaxSamplerAllocationCount(long struct)
      Unsafe version of maxSamplerAllocationCount().
    • nbufferImageGranularity

      public static long nbufferImageGranularity(long struct)
      Unsafe version of bufferImageGranularity().
    • nsparseAddressSpaceSize

      public static long nsparseAddressSpaceSize(long struct)
      Unsafe version of sparseAddressSpaceSize().
    • nmaxBoundDescriptorSets

      public static int nmaxBoundDescriptorSets(long struct)
      Unsafe version of maxBoundDescriptorSets().
    • nmaxPerStageDescriptorSamplers

      public static int nmaxPerStageDescriptorSamplers(long struct)
    • nmaxPerStageDescriptorUniformBuffers

      public static int nmaxPerStageDescriptorUniformBuffers(long struct)
    • nmaxPerStageDescriptorStorageBuffers

      public static int nmaxPerStageDescriptorStorageBuffers(long struct)
    • nmaxPerStageDescriptorSampledImages

      public static int nmaxPerStageDescriptorSampledImages(long struct)
    • nmaxPerStageDescriptorStorageImages

      public static int nmaxPerStageDescriptorStorageImages(long struct)
    • nmaxPerStageDescriptorInputAttachments

      public static int nmaxPerStageDescriptorInputAttachments(long struct)
    • nmaxPerStageResources

      public static int nmaxPerStageResources(long struct)
      Unsafe version of maxPerStageResources().
    • nmaxDescriptorSetSamplers

      public static int nmaxDescriptorSetSamplers(long struct)
      Unsafe version of maxDescriptorSetSamplers().
    • nmaxDescriptorSetUniformBuffers

      public static int nmaxDescriptorSetUniformBuffers(long struct)
    • nmaxDescriptorSetUniformBuffersDynamic

      public static int nmaxDescriptorSetUniformBuffersDynamic(long struct)
    • nmaxDescriptorSetStorageBuffers

      public static int nmaxDescriptorSetStorageBuffers(long struct)
    • nmaxDescriptorSetStorageBuffersDynamic

      public static int nmaxDescriptorSetStorageBuffersDynamic(long struct)
    • nmaxDescriptorSetSampledImages

      public static int nmaxDescriptorSetSampledImages(long struct)
    • nmaxDescriptorSetStorageImages

      public static int nmaxDescriptorSetStorageImages(long struct)
    • nmaxDescriptorSetInputAttachments

      public static int nmaxDescriptorSetInputAttachments(long struct)
    • nmaxVertexInputAttributes

      public static int nmaxVertexInputAttributes(long struct)
      Unsafe version of maxVertexInputAttributes().
    • nmaxVertexInputBindings

      public static int nmaxVertexInputBindings(long struct)
      Unsafe version of maxVertexInputBindings().
    • nmaxVertexInputAttributeOffset

      public static int nmaxVertexInputAttributeOffset(long struct)
    • nmaxVertexInputBindingStride

      public static int nmaxVertexInputBindingStride(long struct)
    • nmaxVertexOutputComponents

      public static int nmaxVertexOutputComponents(long struct)
      Unsafe version of maxVertexOutputComponents().
    • nmaxTessellationGenerationLevel

      public static int nmaxTessellationGenerationLevel(long struct)
    • nmaxTessellationPatchSize

      public static int nmaxTessellationPatchSize(long struct)
      Unsafe version of maxTessellationPatchSize().
    • nmaxTessellationControlPerVertexInputComponents

      public static int nmaxTessellationControlPerVertexInputComponents(long struct)
    • nmaxTessellationControlPerVertexOutputComponents

      public static int nmaxTessellationControlPerVertexOutputComponents(long struct)
    • nmaxTessellationControlPerPatchOutputComponents

      public static int nmaxTessellationControlPerPatchOutputComponents(long struct)
    • nmaxTessellationControlTotalOutputComponents

      public static int nmaxTessellationControlTotalOutputComponents(long struct)
    • nmaxTessellationEvaluationInputComponents

      public static int nmaxTessellationEvaluationInputComponents(long struct)
    • nmaxTessellationEvaluationOutputComponents

      public static int nmaxTessellationEvaluationOutputComponents(long struct)
    • nmaxGeometryShaderInvocations

      public static int nmaxGeometryShaderInvocations(long struct)
    • nmaxGeometryInputComponents

      public static int nmaxGeometryInputComponents(long struct)
      Unsafe version of maxGeometryInputComponents().
    • nmaxGeometryOutputComponents

      public static int nmaxGeometryOutputComponents(long struct)
    • nmaxGeometryOutputVertices

      public static int nmaxGeometryOutputVertices(long struct)
      Unsafe version of maxGeometryOutputVertices().
    • nmaxGeometryTotalOutputComponents

      public static int nmaxGeometryTotalOutputComponents(long struct)
    • nmaxFragmentInputComponents

      public static int nmaxFragmentInputComponents(long struct)
      Unsafe version of maxFragmentInputComponents().
    • nmaxFragmentOutputAttachments

      public static int nmaxFragmentOutputAttachments(long struct)
    • nmaxFragmentDualSrcAttachments

      public static int nmaxFragmentDualSrcAttachments(long struct)
    • nmaxFragmentCombinedOutputResources

      public static int nmaxFragmentCombinedOutputResources(long struct)
    • nmaxComputeSharedMemorySize

      public static int nmaxComputeSharedMemorySize(long struct)
      Unsafe version of maxComputeSharedMemorySize().
    • nmaxComputeWorkGroupCount

      public static IntBuffer nmaxComputeWorkGroupCount(long struct)
      Unsafe version of maxComputeWorkGroupCount().
    • nmaxComputeWorkGroupCount

      public static int nmaxComputeWorkGroupCount(long struct, int index)
      Unsafe version of maxComputeWorkGroupCount.
    • nmaxComputeWorkGroupInvocations

      public static int nmaxComputeWorkGroupInvocations(long struct)
    • nmaxComputeWorkGroupSize

      public static IntBuffer nmaxComputeWorkGroupSize(long struct)
      Unsafe version of maxComputeWorkGroupSize().
    • nmaxComputeWorkGroupSize

      public static int nmaxComputeWorkGroupSize(long struct, int index)
      Unsafe version of maxComputeWorkGroupSize.
    • nsubPixelPrecisionBits

      public static int nsubPixelPrecisionBits(long struct)
      Unsafe version of subPixelPrecisionBits().
    • nsubTexelPrecisionBits

      public static int nsubTexelPrecisionBits(long struct)
      Unsafe version of subTexelPrecisionBits().
    • nmipmapPrecisionBits

      public static int nmipmapPrecisionBits(long struct)
      Unsafe version of mipmapPrecisionBits().
    • nmaxDrawIndexedIndexValue

      public static int nmaxDrawIndexedIndexValue(long struct)
      Unsafe version of maxDrawIndexedIndexValue().
    • nmaxDrawIndirectCount

      public static int nmaxDrawIndirectCount(long struct)
      Unsafe version of maxDrawIndirectCount().
    • nmaxSamplerLodBias

      public static float nmaxSamplerLodBias(long struct)
      Unsafe version of maxSamplerLodBias().
    • nmaxSamplerAnisotropy

      public static float nmaxSamplerAnisotropy(long struct)
      Unsafe version of maxSamplerAnisotropy().
    • nmaxViewports

      public static int nmaxViewports(long struct)
      Unsafe version of maxViewports().
    • nmaxViewportDimensions

      public static IntBuffer nmaxViewportDimensions(long struct)
      Unsafe version of maxViewportDimensions().
    • nmaxViewportDimensions

      public static int nmaxViewportDimensions(long struct, int index)
      Unsafe version of maxViewportDimensions.
    • nviewportBoundsRange

      public static FloatBuffer nviewportBoundsRange(long struct)
      Unsafe version of viewportBoundsRange().
    • nviewportBoundsRange

      public static float nviewportBoundsRange(long struct, int index)
      Unsafe version of viewportBoundsRange.
    • nviewportSubPixelBits

      public static int nviewportSubPixelBits(long struct)
      Unsafe version of viewportSubPixelBits().
    • nminMemoryMapAlignment

      public static long nminMemoryMapAlignment(long struct)
      Unsafe version of minMemoryMapAlignment().
    • nminTexelBufferOffsetAlignment

      public static long nminTexelBufferOffsetAlignment(long struct)
    • nminUniformBufferOffsetAlignment

      public static long nminUniformBufferOffsetAlignment(long struct)
    • nminStorageBufferOffsetAlignment

      public static long nminStorageBufferOffsetAlignment(long struct)
    • nminTexelOffset

      public static int nminTexelOffset(long struct)
      Unsafe version of minTexelOffset().
    • nmaxTexelOffset

      public static int nmaxTexelOffset(long struct)
      Unsafe version of maxTexelOffset().
    • nminTexelGatherOffset

      public static int nminTexelGatherOffset(long struct)
      Unsafe version of minTexelGatherOffset().
    • nmaxTexelGatherOffset

      public static int nmaxTexelGatherOffset(long struct)
      Unsafe version of maxTexelGatherOffset().
    • nminInterpolationOffset

      public static float nminInterpolationOffset(long struct)
      Unsafe version of minInterpolationOffset().
    • nmaxInterpolationOffset

      public static float nmaxInterpolationOffset(long struct)
      Unsafe version of maxInterpolationOffset().
    • nsubPixelInterpolationOffsetBits

      public static int nsubPixelInterpolationOffsetBits(long struct)
    • nmaxFramebufferWidth

      public static int nmaxFramebufferWidth(long struct)
      Unsafe version of maxFramebufferWidth().
    • nmaxFramebufferHeight

      public static int nmaxFramebufferHeight(long struct)
      Unsafe version of maxFramebufferHeight().
    • nmaxFramebufferLayers

      public static int nmaxFramebufferLayers(long struct)
      Unsafe version of maxFramebufferLayers().
    • nframebufferColorSampleCounts

      public static int nframebufferColorSampleCounts(long struct)
    • nframebufferDepthSampleCounts

      public static int nframebufferDepthSampleCounts(long struct)
    • nframebufferStencilSampleCounts

      public static int nframebufferStencilSampleCounts(long struct)
    • nframebufferNoAttachmentsSampleCounts

      public static int nframebufferNoAttachmentsSampleCounts(long struct)
    • nmaxColorAttachments

      public static int nmaxColorAttachments(long struct)
      Unsafe version of maxColorAttachments().
    • nsampledImageColorSampleCounts

      public static int nsampledImageColorSampleCounts(long struct)
    • nsampledImageIntegerSampleCounts

      public static int nsampledImageIntegerSampleCounts(long struct)
    • nsampledImageDepthSampleCounts

      public static int nsampledImageDepthSampleCounts(long struct)
    • nsampledImageStencilSampleCounts

      public static int nsampledImageStencilSampleCounts(long struct)
    • nstorageImageSampleCounts

      public static int nstorageImageSampleCounts(long struct)
      Unsafe version of storageImageSampleCounts().
    • nmaxSampleMaskWords

      public static int nmaxSampleMaskWords(long struct)
      Unsafe version of maxSampleMaskWords().
    • ntimestampComputeAndGraphics

      public static int ntimestampComputeAndGraphics(long struct)
    • ntimestampPeriod

      public static float ntimestampPeriod(long struct)
      Unsafe version of timestampPeriod().
    • nmaxClipDistances

      public static int nmaxClipDistances(long struct)
      Unsafe version of maxClipDistances().
    • nmaxCullDistances

      public static int nmaxCullDistances(long struct)
      Unsafe version of maxCullDistances().
    • nmaxCombinedClipAndCullDistances

      public static int nmaxCombinedClipAndCullDistances(long struct)
    • ndiscreteQueuePriorities

      public static int ndiscreteQueuePriorities(long struct)
      Unsafe version of discreteQueuePriorities().
    • npointSizeRange

      public static FloatBuffer npointSizeRange(long struct)
      Unsafe version of pointSizeRange().
    • npointSizeRange

      public static float npointSizeRange(long struct, int index)
      Unsafe version of pointSizeRange.
    • nlineWidthRange

      public static FloatBuffer nlineWidthRange(long struct)
      Unsafe version of lineWidthRange().
    • nlineWidthRange

      public static float nlineWidthRange(long struct, int index)
      Unsafe version of lineWidthRange.
    • npointSizeGranularity

      public static float npointSizeGranularity(long struct)
      Unsafe version of pointSizeGranularity().
    • nlineWidthGranularity

      public static float nlineWidthGranularity(long struct)
      Unsafe version of lineWidthGranularity().
    • nstrictLines

      public static int nstrictLines(long struct)
      Unsafe version of strictLines().
    • nstandardSampleLocations

      public static int nstandardSampleLocations(long struct)
      Unsafe version of standardSampleLocations().
    • noptimalBufferCopyOffsetAlignment

      public static long noptimalBufferCopyOffsetAlignment(long struct)
    • noptimalBufferCopyRowPitchAlignment

      public static long noptimalBufferCopyRowPitchAlignment(long struct)
    • nnonCoherentAtomSize

      public static long nnonCoherentAtomSize(long struct)
      Unsafe version of nonCoherentAtomSize().