Class VulkanPhysicalDeviceLimits
java.lang.Object
com.io7m.jcoronado.api.VulkanPhysicalDeviceLimits
- All Implemented Interfaces:
VulkanPhysicalDeviceLimitsType
public final class VulkanPhysicalDeviceLimits
extends Object
implements VulkanPhysicalDeviceLimitsType
The limits of a physical device.
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classBuilds instances of typeVulkanPhysicalDeviceLimits. -
Method Summary
Modifier and TypeMethodDescriptionlongbuilder()Creates a builder forVulkanPhysicalDeviceLimits.static VulkanPhysicalDeviceLimitscopyOf(VulkanPhysicalDeviceLimitsType instance) Creates an immutable copy of aVulkanPhysicalDeviceLimitsTypevalue.intbooleanThis instance is equal to all instances ofVulkanPhysicalDeviceLimitsthat have equal attribute values.intintintintinthashCode()Computes a hash code from attributes:bufferImageGranularity,discreteQueuePriorities,framebufferColorSampleCounts,framebufferDepthSampleCounts,framebufferNoAttachmentsSampleCounts,framebufferStencilSampleCounts,lineWidthGranularity,lineWidthRange,maxBoundDescriptorSets,maxClipDistances,maxColorAttachments,maxCombinedClipAndCullDistances,maxComputeSharedMemorySize,maxComputeWorkGroupCount,maxComputeWorkGroupInvocations,maxComputeWorkGroupSize,maxCullDistances,maxDescriptorSetInputAttachments,maxDescriptorSetSampledImages,maxDescriptorSetSamplers,maxDescriptorSetStorageBuffersDynamic,maxDescriptorSetStorageBuffers,maxDescriptorSetStorageImages,maxDescriptorSetUniformBuffersDynamic,maxDescriptorSetUniformBuffers,maxDrawIndexedIndexValue,maxDrawIndirectCount,maxFragmentCombinedOutputResources,maxFragmentDualSrcAttachments,maxFragmentInputComponents,maxFragmentOutputAttachments,maxFramebufferHeight,maxFramebufferLayers,maxFramebufferWidth,maxGeometryInputComponents,maxGeometryOutputComponents,maxGeometryOutputVertices,maxGeometryShaderInvocations,maxGeometryTotalOutputComponents,maxImageArrayLayers,maxImageDimension1D,maxImageDimension2D,maxImageDimension3D,maxImageDimensionCube,maxInterpolationOffset,maxMemoryAllocationCount,maxPerStageDescriptorInputAttachments,maxPerStageDescriptorSampledImages,maxPerStageDescriptorSamplers,maxPerStageDescriptorStorageBuffers,maxPerStageDescriptorStorageImages,maxPerStageDescriptorUniformBuffers,maxPerStageResources,maxPushConstantsSize,maxSampleMaskWords,maxSamplerAllocationCount,maxSamplerAnisotropy,maxSamplerLodBias,maxStorageBufferRange,maxTessellationControlPerPatchOutputComponents,maxTessellationControlPerVertexInputComponents,maxTessellationControlPerVertexOutputComponents,maxTessellationControlTotalOutputComponents,maxTessellationEvaluationInputComponents,maxTessellationEvaluationOutputComponents,maxTessellationGenerationLevel,maxTessellationPatchSize,maxTexelBufferElements,maxTexelGatherOffset,maxTexelOffset,maxUniformBufferRange,maxVertexInputAttributeOffset,maxVertexInputAttributes,maxVertexInputBindings,maxVertexInputBindingStride,maxVertexOutputComponents,maxViewportDimensions,maxViewports,minInterpolationOffset,minMemoryMapAlignment,minStorageBufferOffsetAlignment,minTexelBufferOffsetAlignment,minTexelGatherOffset,minTexelOffset,minUniformBufferOffsetAlignment,mipmapPrecisionBits,nonCoherentAtomSize,optimalBufferCopyOffsetAlignment,optimalBufferCopyRowPitchAlignment,pointSizeGranularity,pointSizeRange,sampledImageColorSampleCounts,sampledImageDepthSampleCounts,sampledImageIntegerSampleCounts,sampledImageStencilSampleCounts,sparseAddressSpaceSize,standardSampleLocations,storageImageSampleCounts,strictLines,subPixelInterpolationOffsetBits,subPixelPrecisionBits,subTexelPrecisionBits,timestampComputeAndGraphics,timestampPeriod,viewportBoundsRange,viewportSubPixelBits.floatintintintintintintintintintintintintintintintintintintintintintintintintintintintintintintintintintintfloatintintintintintintintintintintintfloatfloatintintintintintintintintintintintintintintintintintintintfloatlonglonglongintintlongintlongstatic VulkanPhysicalDeviceLimitsof(long bufferImageGranularity, int discreteQueuePriorities, int framebufferColorSampleCounts, int framebufferDepthSampleCounts, int framebufferNoAttachmentsSampleCounts, int framebufferStencilSampleCounts, float lineWidthGranularity, VulkanLineWidthRange lineWidthRange, int maxBoundDescriptorSets, int maxClipDistances, int maxColorAttachments, int maxCombinedClipAndCullDistances, int maxComputeSharedMemorySize, VulkanComputeWorkGroupCount maxComputeWorkGroupCount, int maxComputeWorkGroupInvocations, VulkanComputeWorkGroupSize maxComputeWorkGroupSize, int maxCullDistances, int maxDescriptorSetInputAttachments, int maxDescriptorSetSampledImages, int maxDescriptorSetSamplers, int maxDescriptorSetStorageBuffersDynamic, int maxDescriptorSetStorageBuffers, int maxDescriptorSetStorageImages, int maxDescriptorSetUniformBuffersDynamic, int maxDescriptorSetUniformBuffers, int maxDrawIndexedIndexValue, int maxDrawIndirectCount, int maxFragmentCombinedOutputResources, int maxFragmentDualSrcAttachments, int maxFragmentInputComponents, int maxFragmentOutputAttachments, int maxFramebufferHeight, int maxFramebufferLayers, int maxFramebufferWidth, int maxGeometryInputComponents, int maxGeometryOutputComponents, int maxGeometryOutputVertices, int maxGeometryShaderInvocations, int maxGeometryTotalOutputComponents, int maxImageArrayLayers, int maxImageDimension1D, int maxImageDimension2D, int maxImageDimension3D, int maxImageDimensionCube, float maxInterpolationOffset, int maxMemoryAllocationCount, int maxPerStageDescriptorInputAttachments, int maxPerStageDescriptorSampledImages, int maxPerStageDescriptorSamplers, int maxPerStageDescriptorStorageBuffers, int maxPerStageDescriptorStorageImages, int maxPerStageDescriptorUniformBuffers, int maxPerStageResources, int maxPushConstantsSize, int maxSampleMaskWords, int maxSamplerAllocationCount, float maxSamplerAnisotropy, float maxSamplerLodBias, int maxStorageBufferRange, int maxTessellationControlPerPatchOutputComponents, int maxTessellationControlPerVertexInputComponents, int maxTessellationControlPerVertexOutputComponents, int maxTessellationControlTotalOutputComponents, int maxTessellationEvaluationInputComponents, int maxTessellationEvaluationOutputComponents, int maxTessellationGenerationLevel, int maxTessellationPatchSize, int maxTexelBufferElements, int maxTexelGatherOffset, int maxTexelOffset, int maxUniformBufferRange, int maxVertexInputAttributeOffset, int maxVertexInputAttributes, int maxVertexInputBindings, int maxVertexInputBindingStride, int maxVertexOutputComponents, VulkanViewportDimensions maxViewportDimensions, int maxViewports, float minInterpolationOffset, long minMemoryMapAlignment, long minStorageBufferOffsetAlignment, long minTexelBufferOffsetAlignment, int minTexelGatherOffset, int minTexelOffset, long minUniformBufferOffsetAlignment, int mipmapPrecisionBits, long nonCoherentAtomSize, long optimalBufferCopyOffsetAlignment, long optimalBufferCopyRowPitchAlignment, float pointSizeGranularity, VulkanPointSizeRange pointSizeRange, int sampledImageColorSampleCounts, int sampledImageDepthSampleCounts, int sampledImageIntegerSampleCounts, int sampledImageStencilSampleCounts, long sparseAddressSpaceSize, boolean standardSampleLocations, int storageImageSampleCounts, boolean strictLines, int subPixelInterpolationOffsetBits, int subPixelPrecisionBits, int subTexelPrecisionBits, boolean timestampComputeAndGraphics, float timestampPeriod, VulkanViewportBoundsRange viewportBoundsRange, int viewportSubPixelBits) Construct a new immutableVulkanPhysicalDeviceLimitsinstance.longlongfloatintintintintlongbooleanintbooleanintintintbooleanfloattoString()Prints the immutable valueVulkanPhysicalDeviceLimitswith attribute values.intwithBufferImageGranularity(long value) Copy the current immutable object by setting a value for thebufferImageGranularityattribute.withDiscreteQueuePriorities(int value) Copy the current immutable object by setting a value for thediscreteQueuePrioritiesattribute.withFramebufferColorSampleCounts(int value) Copy the current immutable object by setting a value for theframebufferColorSampleCountsattribute.withFramebufferDepthSampleCounts(int value) Copy the current immutable object by setting a value for theframebufferDepthSampleCountsattribute.withFramebufferNoAttachmentsSampleCounts(int value) Copy the current immutable object by setting a value for theframebufferNoAttachmentsSampleCountsattribute.withFramebufferStencilSampleCounts(int value) Copy the current immutable object by setting a value for theframebufferStencilSampleCountsattribute.withLineWidthGranularity(float value) Copy the current immutable object by setting a value for thelineWidthGranularityattribute.Copy the current immutable object by setting a value for thelineWidthRangeattribute.withMaxBoundDescriptorSets(int value) Copy the current immutable object by setting a value for themaxBoundDescriptorSetsattribute.withMaxClipDistances(int value) Copy the current immutable object by setting a value for themaxClipDistancesattribute.withMaxColorAttachments(int value) Copy the current immutable object by setting a value for themaxColorAttachmentsattribute.withMaxCombinedClipAndCullDistances(int value) Copy the current immutable object by setting a value for themaxCombinedClipAndCullDistancesattribute.withMaxComputeSharedMemorySize(int value) Copy the current immutable object by setting a value for themaxComputeSharedMemorySizeattribute.Copy the current immutable object by setting a value for themaxComputeWorkGroupCountattribute.withMaxComputeWorkGroupInvocations(int value) Copy the current immutable object by setting a value for themaxComputeWorkGroupInvocationsattribute.Copy the current immutable object by setting a value for themaxComputeWorkGroupSizeattribute.withMaxCullDistances(int value) Copy the current immutable object by setting a value for themaxCullDistancesattribute.withMaxDescriptorSetInputAttachments(int value) Copy the current immutable object by setting a value for themaxDescriptorSetInputAttachmentsattribute.withMaxDescriptorSetSampledImages(int value) Copy the current immutable object by setting a value for themaxDescriptorSetSampledImagesattribute.withMaxDescriptorSetSamplers(int value) Copy the current immutable object by setting a value for themaxDescriptorSetSamplersattribute.withMaxDescriptorSetStorageBuffers(int value) Copy the current immutable object by setting a value for themaxDescriptorSetStorageBuffersattribute.withMaxDescriptorSetStorageBuffersDynamic(int value) Copy the current immutable object by setting a value for themaxDescriptorSetStorageBuffersDynamicattribute.withMaxDescriptorSetStorageImages(int value) Copy the current immutable object by setting a value for themaxDescriptorSetStorageImagesattribute.withMaxDescriptorSetUniformBuffers(int value) Copy the current immutable object by setting a value for themaxDescriptorSetUniformBuffersattribute.withMaxDescriptorSetUniformBuffersDynamic(int value) Copy the current immutable object by setting a value for themaxDescriptorSetUniformBuffersDynamicattribute.withMaxDrawIndexedIndexValue(int value) Copy the current immutable object by setting a value for themaxDrawIndexedIndexValueattribute.withMaxDrawIndirectCount(int value) Copy the current immutable object by setting a value for themaxDrawIndirectCountattribute.withMaxFragmentCombinedOutputResources(int value) Copy the current immutable object by setting a value for themaxFragmentCombinedOutputResourcesattribute.withMaxFragmentDualSrcAttachments(int value) Copy the current immutable object by setting a value for themaxFragmentDualSrcAttachmentsattribute.withMaxFragmentInputComponents(int value) Copy the current immutable object by setting a value for themaxFragmentInputComponentsattribute.withMaxFragmentOutputAttachments(int value) Copy the current immutable object by setting a value for themaxFragmentOutputAttachmentsattribute.withMaxFramebufferHeight(int value) Copy the current immutable object by setting a value for themaxFramebufferHeightattribute.withMaxFramebufferLayers(int value) Copy the current immutable object by setting a value for themaxFramebufferLayersattribute.withMaxFramebufferWidth(int value) Copy the current immutable object by setting a value for themaxFramebufferWidthattribute.withMaxGeometryInputComponents(int value) Copy the current immutable object by setting a value for themaxGeometryInputComponentsattribute.withMaxGeometryOutputComponents(int value) Copy the current immutable object by setting a value for themaxGeometryOutputComponentsattribute.withMaxGeometryOutputVertices(int value) Copy the current immutable object by setting a value for themaxGeometryOutputVerticesattribute.withMaxGeometryShaderInvocations(int value) Copy the current immutable object by setting a value for themaxGeometryShaderInvocationsattribute.withMaxGeometryTotalOutputComponents(int value) Copy the current immutable object by setting a value for themaxGeometryTotalOutputComponentsattribute.withMaxImageArrayLayers(int value) Copy the current immutable object by setting a value for themaxImageArrayLayersattribute.withMaxImageDimension1D(int value) Copy the current immutable object by setting a value for themaxImageDimension1Dattribute.withMaxImageDimension2D(int value) Copy the current immutable object by setting a value for themaxImageDimension2Dattribute.withMaxImageDimension3D(int value) Copy the current immutable object by setting a value for themaxImageDimension3Dattribute.withMaxImageDimensionCube(int value) Copy the current immutable object by setting a value for themaxImageDimensionCubeattribute.withMaxInterpolationOffset(float value) Copy the current immutable object by setting a value for themaxInterpolationOffsetattribute.withMaxMemoryAllocationCount(int value) Copy the current immutable object by setting a value for themaxMemoryAllocationCountattribute.withMaxPerStageDescriptorInputAttachments(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorInputAttachmentsattribute.withMaxPerStageDescriptorSampledImages(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorSampledImagesattribute.withMaxPerStageDescriptorSamplers(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorSamplersattribute.withMaxPerStageDescriptorStorageBuffers(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorStorageBuffersattribute.withMaxPerStageDescriptorStorageImages(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorStorageImagesattribute.withMaxPerStageDescriptorUniformBuffers(int value) Copy the current immutable object by setting a value for themaxPerStageDescriptorUniformBuffersattribute.withMaxPerStageResources(int value) Copy the current immutable object by setting a value for themaxPerStageResourcesattribute.withMaxPushConstantsSize(int value) Copy the current immutable object by setting a value for themaxPushConstantsSizeattribute.withMaxSampleMaskWords(int value) Copy the current immutable object by setting a value for themaxSampleMaskWordsattribute.withMaxSamplerAllocationCount(int value) Copy the current immutable object by setting a value for themaxSamplerAllocationCountattribute.withMaxSamplerAnisotropy(float value) Copy the current immutable object by setting a value for themaxSamplerAnisotropyattribute.withMaxSamplerLodBias(float value) Copy the current immutable object by setting a value for themaxSamplerLodBiasattribute.withMaxStorageBufferRange(int value) Copy the current immutable object by setting a value for themaxStorageBufferRangeattribute.Copy the current immutable object by setting a value for themaxTessellationControlPerPatchOutputComponentsattribute.Copy the current immutable object by setting a value for themaxTessellationControlPerVertexInputComponentsattribute.Copy the current immutable object by setting a value for themaxTessellationControlPerVertexOutputComponentsattribute.Copy the current immutable object by setting a value for themaxTessellationControlTotalOutputComponentsattribute.withMaxTessellationEvaluationInputComponents(int value) Copy the current immutable object by setting a value for themaxTessellationEvaluationInputComponentsattribute.Copy the current immutable object by setting a value for themaxTessellationEvaluationOutputComponentsattribute.withMaxTessellationGenerationLevel(int value) Copy the current immutable object by setting a value for themaxTessellationGenerationLevelattribute.withMaxTessellationPatchSize(int value) Copy the current immutable object by setting a value for themaxTessellationPatchSizeattribute.withMaxTexelBufferElements(int value) Copy the current immutable object by setting a value for themaxTexelBufferElementsattribute.withMaxTexelGatherOffset(int value) Copy the current immutable object by setting a value for themaxTexelGatherOffsetattribute.withMaxTexelOffset(int value) Copy the current immutable object by setting a value for themaxTexelOffsetattribute.withMaxUniformBufferRange(int value) Copy the current immutable object by setting a value for themaxUniformBufferRangeattribute.withMaxVertexInputAttributeOffset(int value) Copy the current immutable object by setting a value for themaxVertexInputAttributeOffsetattribute.withMaxVertexInputAttributes(int value) Copy the current immutable object by setting a value for themaxVertexInputAttributesattribute.withMaxVertexInputBindings(int value) Copy the current immutable object by setting a value for themaxVertexInputBindingsattribute.withMaxVertexInputBindingStride(int value) Copy the current immutable object by setting a value for themaxVertexInputBindingStrideattribute.withMaxVertexOutputComponents(int value) Copy the current immutable object by setting a value for themaxVertexOutputComponentsattribute.Copy the current immutable object by setting a value for themaxViewportDimensionsattribute.withMaxViewports(int value) Copy the current immutable object by setting a value for themaxViewportsattribute.withMinInterpolationOffset(float value) Copy the current immutable object by setting a value for theminInterpolationOffsetattribute.withMinMemoryMapAlignment(long value) Copy the current immutable object by setting a value for theminMemoryMapAlignmentattribute.withMinStorageBufferOffsetAlignment(long value) Copy the current immutable object by setting a value for theminStorageBufferOffsetAlignmentattribute.withMinTexelBufferOffsetAlignment(long value) Copy the current immutable object by setting a value for theminTexelBufferOffsetAlignmentattribute.withMinTexelGatherOffset(int value) Copy the current immutable object by setting a value for theminTexelGatherOffsetattribute.withMinTexelOffset(int value) Copy the current immutable object by setting a value for theminTexelOffsetattribute.withMinUniformBufferOffsetAlignment(long value) Copy the current immutable object by setting a value for theminUniformBufferOffsetAlignmentattribute.withMipmapPrecisionBits(int value) Copy the current immutable object by setting a value for themipmapPrecisionBitsattribute.withNonCoherentAtomSize(long value) Copy the current immutable object by setting a value for thenonCoherentAtomSizeattribute.withOptimalBufferCopyOffsetAlignment(long value) Copy the current immutable object by setting a value for theoptimalBufferCopyOffsetAlignmentattribute.withOptimalBufferCopyRowPitchAlignment(long value) Copy the current immutable object by setting a value for theoptimalBufferCopyRowPitchAlignmentattribute.withPointSizeGranularity(float value) Copy the current immutable object by setting a value for thepointSizeGranularityattribute.Copy the current immutable object by setting a value for thepointSizeRangeattribute.withSampledImageColorSampleCounts(int value) Copy the current immutable object by setting a value for thesampledImageColorSampleCountsattribute.withSampledImageDepthSampleCounts(int value) Copy the current immutable object by setting a value for thesampledImageDepthSampleCountsattribute.withSampledImageIntegerSampleCounts(int value) Copy the current immutable object by setting a value for thesampledImageIntegerSampleCountsattribute.withSampledImageStencilSampleCounts(int value) Copy the current immutable object by setting a value for thesampledImageStencilSampleCountsattribute.withSparseAddressSpaceSize(long value) Copy the current immutable object by setting a value for thesparseAddressSpaceSizeattribute.withStandardSampleLocations(boolean value) Copy the current immutable object by setting a value for thestandardSampleLocationsattribute.withStorageImageSampleCounts(int value) Copy the current immutable object by setting a value for thestorageImageSampleCountsattribute.withStrictLines(boolean value) Copy the current immutable object by setting a value for thestrictLinesattribute.withSubPixelInterpolationOffsetBits(int value) Copy the current immutable object by setting a value for thesubPixelInterpolationOffsetBitsattribute.withSubPixelPrecisionBits(int value) Copy the current immutable object by setting a value for thesubPixelPrecisionBitsattribute.withSubTexelPrecisionBits(int value) Copy the current immutable object by setting a value for thesubTexelPrecisionBitsattribute.withTimestampComputeAndGraphics(boolean value) Copy the current immutable object by setting a value for thetimestampComputeAndGraphicsattribute.withTimestampPeriod(float value) Copy the current immutable object by setting a value for thetimestampPeriodattribute.Copy the current immutable object by setting a value for theviewportBoundsRangeattribute.withViewportSubPixelBits(int value) Copy the current immutable object by setting a value for theviewportSubPixelBitsattribute.
-
Method Details
-
bufferImageGranularity
public long bufferImageGranularity()- Specified by:
bufferImageGranularityin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
discreteQueuePriorities
public int discreteQueuePriorities()- Specified by:
discreteQueuePrioritiesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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. For example, if this value is 2 bits then when linearly filtering between two levels, each level could: contribute: 0%, 33%, 66%, or 100% (this is just an example and the amount of contribution should be covered by different equations in the spec).
-
framebufferColorSampleCounts
public int framebufferColorSampleCounts()- Specified by:
framebufferColorSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the color sample counts that are supported for all framebuffer color attachments with floating- or fixed-point formats. There is no limit that specifies the color sample counts that are supported for all color attachments with integer formats.
-
framebufferDepthSampleCounts
public int framebufferDepthSampleCounts()- Specified by:
framebufferDepthSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the supported depth sample counts for all framebuffer depth/stencil attachments, when the format includes a depth component.
-
framebufferNoAttachmentsSampleCounts
public int framebufferNoAttachmentsSampleCounts()- Specified by:
framebufferNoAttachmentsSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the supported sample counts for a framebuffer with no attachments.
-
framebufferStencilSampleCounts
public int framebufferStencilSampleCounts()- Specified by:
framebufferStencilSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the supported stencil sample counts for all framebuffer depth/stencil attachments, when the format includes a stencil component.
-
lineWidthGranularity
public float lineWidthGranularity()- Specified by:
lineWidthGranularityin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
lineWidthRange
- Specified by:
lineWidthRangein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxBoundDescriptorSets
public int maxBoundDescriptorSets()- Specified by:
maxBoundDescriptorSetsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxClipDistances
public int maxClipDistances()- Specified by:
maxClipDistancesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxColorAttachments
public int maxColorAttachments()- Specified by:
maxColorAttachmentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of color attachments that can be used by a subpass in a render pass. The colorAttachmentCount member of the VkSubpassDescription structure must be less than or equal to this limit.
-
maxCombinedClipAndCullDistances
public int maxCombinedClipAndCullDistances()- Specified by:
maxCombinedClipAndCullDistancesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxComputeWorkGroupCount
- Specified by:
maxComputeWorkGroupCountin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of local workgroups that can be dispatched by a single dispatch 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 dispatch commands must be less than or equal to the corresponding limit.
-
maxComputeWorkGroupInvocations
public int maxComputeWorkGroupInvocations()- Specified by:
maxComputeWorkGroupInvocationsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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 execution mode in shader modules and by the object decorated by the WorkgroupSize decoration must be less than or equal to this limit.
-
maxComputeWorkGroupSize
- Specified by:
maxComputeWorkGroupSizein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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 specified by the LocalSize execution mode and by the object decorated by the WorkgroupSize decoration in shader modules must be less than or equal to the corresponding limit.
-
maxCullDistances
public int maxCullDistances()- Specified by:
maxCullDistancesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxDescriptorSetInputAttachments
public int maxDescriptorSetInputAttachments()- Specified by:
maxDescriptorSetInputAttachmentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of input attachments that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetSampledImages
public int maxDescriptorSetSampledImages()- Specified by:
maxDescriptorSetSampledImagesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of sampled images that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, or VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetSamplers
public int maxDescriptorSetSamplers()- Specified by:
maxDescriptorSetSamplersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of samplers that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_SAMPLER or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetStorageBuffersDynamic
public int maxDescriptorSetStorageBuffersDynamic()- Specified by:
maxDescriptorSetStorageBuffersDynamicin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of dynamic storage buffers that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetStorageBuffers
public int maxDescriptorSetStorageBuffers()- Specified by:
maxDescriptorSetStorageBuffersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of storage buffers that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetStorageImages
public int maxDescriptorSetStorageImages()- Specified by:
maxDescriptorSetStorageImagesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of storage images that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, or VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetUniformBuffersDynamic
public int maxDescriptorSetUniformBuffersDynamic()- Specified by:
maxDescriptorSetUniformBuffersDynamicin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of dynamic uniform buffers that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDescriptorSetUniformBuffers
public int maxDescriptorSetUniformBuffers()- Specified by:
maxDescriptorSetUniformBuffersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of uniform buffers that can be included in descriptor bindings in a pipeline layout across all pipeline shader stages and descriptor set numbers. Descriptors with a type of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER or VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit.
-
maxDrawIndexedIndexValue
public int maxDrawIndexedIndexValue()- Specified by:
maxDrawIndexedIndexValuein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxDrawIndirectCount
public int maxDrawIndirectCount()- Specified by:
maxDrawIndirectCountin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum draw count that is supported for indirect draw calls.
-
maxFragmentCombinedOutputResources
public int maxFragmentCombinedOutputResources()- Specified by:
maxFragmentCombinedOutputResourcesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the total number of storage buffers, storage images, and output buffers which can be used in the fragment shader stage.
-
maxFragmentDualSrcAttachments
public int maxFragmentDualSrcAttachments()- Specified by:
maxFragmentDualSrcAttachmentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxFragmentInputComponents
public int maxFragmentInputComponents()- Specified by:
maxFragmentInputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of input variables which can be provided as inputs to the fragment shader stage.
-
maxFragmentOutputAttachments
public int maxFragmentOutputAttachments()- Specified by:
maxFragmentOutputAttachmentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of output attachments which can be written to by the fragment shader stage.
-
maxFramebufferHeight
public int maxFramebufferHeight()- Specified by:
maxFramebufferHeightin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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()- Specified by:
maxFramebufferLayersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum layer count for a layered framebuffer. The layers member of the VkFramebufferCreateInfo structure must be less than or equal to this limit.
-
maxFramebufferWidth
public int maxFramebufferWidth()- Specified by:
maxFramebufferWidthin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum width for a framebuffer. The width member of the VkFramebufferCreateInfo structure must be less than or equal to this limit.
-
maxGeometryInputComponents
public int maxGeometryInputComponents()- Specified by:
maxGeometryInputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of input variables which can be provided as inputs to the geometry shader stage.
-
maxGeometryOutputComponents
public int maxGeometryOutputComponents()- Specified by:
maxGeometryOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of output variables which can be output from the geometry shader stage.
-
maxGeometryOutputVertices
public int maxGeometryOutputVertices()- Specified by:
maxGeometryOutputVerticesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of vertices which can be emitted by any geometry shader.
-
maxGeometryShaderInvocations
public int maxGeometryShaderInvocations()- Specified by:
maxGeometryShaderInvocationsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxGeometryTotalOutputComponents
public int maxGeometryTotalOutputComponents()- Specified by:
maxGeometryTotalOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum total number of components of output, across all emitted vertices, which can be output from the geometry shader stage.
-
maxImageArrayLayers
public int maxImageArrayLayers()- Specified by:
maxImageArrayLayersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of layers (arrayLayers) for an image.
-
maxImageDimension1D
public int maxImageDimension1D()- Specified by:
maxImageDimension1Din interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum dimension (width) supported for all images created with an imageType of VK_IMAGE_TYPE_1D.
-
maxImageDimension2D
public int maxImageDimension2D()- Specified by:
maxImageDimension2Din interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum dimension (width or height) supported for all images created with an imageType of VK_IMAGE_TYPE_2D and without VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags.
-
maxImageDimension3D
public int maxImageDimension3D()- Specified by:
maxImageDimension3Din interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum dimension (width, height, or depth) supported for all images created with an imageType of VK_IMAGE_TYPE_3D.
-
maxImageDimensionCube
public int maxImageDimensionCube()- Specified by:
maxImageDimensionCubein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum dimension (width or height) supported for all images created with an imageType of VK_IMAGE_TYPE_2D and with VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT set in flags.
-
maxInterpolationOffset
public float maxInterpolationOffset()- Specified by:
maxInterpolationOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum positive offset value for the offset operand of the InterpolateAtOffset extended instruction.
-
maxMemoryAllocationCount
public int maxMemoryAllocationCount()- Specified by:
maxMemoryAllocationCountin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of device memory allocations, as created by vkAllocateMemory, which can simultaneously exist.
-
maxPerStageDescriptorInputAttachments
public int maxPerStageDescriptorInputAttachments()- Specified by:
maxPerStageDescriptorInputAttachmentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of input attachments that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageDescriptorSampledImages
public int maxPerStageDescriptorSampledImages()- Specified by:
maxPerStageDescriptorSampledImagesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of sampled images that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, or VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageDescriptorSamplers
public int maxPerStageDescriptorSamplers()- Specified by:
maxPerStageDescriptorSamplersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of samplers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_SAMPLER or VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageDescriptorStorageBuffers
public int maxPerStageDescriptorStorageBuffers()- Specified by:
maxPerStageDescriptorStorageBuffersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of storage buffers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_STORAGE_BUFFER or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageDescriptorStorageImages
public int maxPerStageDescriptorStorageImages()- Specified by:
maxPerStageDescriptorStorageImagesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of storage images that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, or VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageDescriptorUniformBuffers
public int maxPerStageDescriptorUniformBuffers()- Specified by:
maxPerStageDescriptorUniformBuffersin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of uniform buffers that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER or VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 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.
-
maxPerStageResources
public int maxPerStageResources()- Specified by:
maxPerStageResourcesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of resources that can be accessible to a single shader stage in a pipeline layout. Descriptors with a type of VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, or VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT count against this limit. Only descriptors in descriptor set layouts created without the VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT bit set count against this limit. For the fragment shader stage the framebuffer color attachments also count against this limit.
-
maxPushConstantsSize
public int maxPushConstantsSize()- Specified by:
maxPushConstantsSizein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxSampleMaskWords
public int maxSampleMaskWords()- Specified by:
maxSampleMaskWordsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of array elements of a variable decorated with the SampleMask built-in decoration.
-
maxSamplerAllocationCount
public int maxSamplerAllocationCount()- Specified by:
maxSamplerAllocationCountin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of sampler objects, as created by vkCreateSampler, which can simultaneously exist on a device.
-
maxSamplerAnisotropy
public float maxSamplerAnisotropy()- Specified by:
maxSamplerAnisotropyin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxSamplerLodBias
public float maxSamplerLodBias()- Specified by:
maxSamplerLodBiasin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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].
-
maxStorageBufferRange
public int maxStorageBufferRange()- Specified by:
maxStorageBufferRangein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum value that can be specified in the range member of any VkDescriptorBufferInfo structures passed to a call to vkUpdateDescriptorSets for descriptors of type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER or VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC.
-
maxTessellationControlPerPatchOutputComponents
public int maxTessellationControlPerPatchOutputComponents()- Specified by:
maxTessellationControlPerPatchOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of per-patch output variables which can be output from the tessellation control shader stage.
-
maxTessellationControlPerVertexInputComponents
public int maxTessellationControlPerVertexInputComponents()- Specified by:
maxTessellationControlPerVertexInputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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()- Specified by:
maxTessellationControlPerVertexOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of per-vertex output variables which can be output from the tessellation control shader stage.
-
maxTessellationControlTotalOutputComponents
public int maxTessellationControlTotalOutputComponents()- Specified by:
maxTessellationControlTotalOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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()- Specified by:
maxTessellationEvaluationInputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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()- Specified by:
maxTessellationEvaluationOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of per-vertex output variables which can be output from the tessellation evaluation shader stage.
-
maxTessellationGenerationLevel
public int maxTessellationGenerationLevel()- Specified by:
maxTessellationGenerationLevelin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum tessellation generation level supported by the fixed-function tessellation primitive generator.
-
maxTessellationPatchSize
public int maxTessellationPatchSize()- Specified by:
maxTessellationPatchSizein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxTexelBufferElements
public int maxTexelBufferElements()- Specified by:
maxTexelBufferElementsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of addressable texels for a buffer view created on a buffer which was created with the VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT or VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT set in the usage member of the VkBufferCreateInfo structure.
-
maxTexelGatherOffset
public int maxTexelGatherOffset()- Specified by:
maxTexelGatherOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum offset value for the Offset or ConstOffsets image operands of any of the OpImage*Gather image instructions.
-
maxTexelOffset
public int maxTexelOffset()- Specified by:
maxTexelOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum offset value for the ConstOffset image operand of any of the OpImageSample* or OpImageFetch* image instructions.
-
maxUniformBufferRange
public int maxUniformBufferRange()- Specified by:
maxUniformBufferRangein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum value that can be specified in the range member of any VkDescriptorBufferInfo structures passed to a call to vkUpdateDescriptorSets for descriptors of type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER or VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC.
-
maxVertexInputAttributeOffset
public int maxVertexInputAttributeOffset()- Specified by:
maxVertexInputAttributeOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxVertexInputAttributes
public int maxVertexInputAttributes()- Specified by:
maxVertexInputAttributesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxVertexInputBindings
public int maxVertexInputBindings()- Specified by:
maxVertexInputBindingsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxVertexInputBindingStride
public int maxVertexInputBindingStride()- Specified by:
maxVertexInputBindingStridein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxVertexOutputComponents
public int maxVertexOutputComponents()- Specified by:
maxVertexOutputComponentsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the maximum number of components of output variables which can be output by a vertex shader.
-
maxViewportDimensions
- Specified by:
maxViewportDimensionsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
maxViewports
public int maxViewports()- Specified by:
maxViewportsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
minInterpolationOffset
public float minInterpolationOffset()- Specified by:
minInterpolationOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum negative offset value for the offset operand of the InterpolateAtOffset extended instruction.
-
minMemoryMapAlignment
public long minMemoryMapAlignment()- Specified by:
minMemoryMapAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum required alignment, in bytes, of host visible memory allocations within the host address space. When mapping a memory allocation with vkMapMemory, subtracting offset bytes from the returned pointer will always produce an integer multiple of this limit.
-
minStorageBufferOffsetAlignment
public long minStorageBufferOffsetAlignment()- Specified by:
minStorageBufferOffsetAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum required alignment, in bytes, for the offset member of the VkDescriptorBufferInfo structure for storage buffers. When a descriptor of type VK_DESCRIPTOR_TYPE_STORAGE_BUFFER or VK_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.
-
minTexelBufferOffsetAlignment
public long minTexelBufferOffsetAlignment()- Specified by:
minTexelBufferOffsetAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum required alignment, in bytes, for the offset member of the VkBufferViewCreateInfo structure for texel buffers. When a buffer view is created for a buffer which was created with VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT or VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT set in the usage member of the VkBufferCreateInfo structure, the offset must be an integer multiple of this limit.
-
minTexelGatherOffset
public int minTexelGatherOffset()- Specified by:
minTexelGatherOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum offset value for the Offset or ConstOffsets image operands of any of the OpImage*Gather image instructions.
-
minTexelOffset
public int minTexelOffset()- Specified by:
minTexelOffsetin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum offset value for the ConstOffset image operand of any of the OpImageSample* or OpImageFetch* image instructions.
-
minUniformBufferOffsetAlignment
public long minUniformBufferOffsetAlignment()- Specified by:
minUniformBufferOffsetAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the minimum required alignment, in bytes, for the offset member of the VkDescriptorBufferInfo structure for uniform buffers. When a descriptor of type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER or VK_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.
-
mipmapPrecisionBits
public int mipmapPrecisionBits()- Specified by:
mipmapPrecisionBitsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
nonCoherentAtomSize
public long nonCoherentAtomSize()- Specified by:
nonCoherentAtomSizein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the size and alignment in bytes that bounds concurrent access to host-mapped device memory.
-
optimalBufferCopyOffsetAlignment
public long optimalBufferCopyOffsetAlignment()- Specified by:
optimalBufferCopyOffsetAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the optimal buffer offset alignment in bytes for vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer. The per texel alignment requirements are enforced, but applications should use the optimal alignment for optimal performance and power use.
-
optimalBufferCopyRowPitchAlignment
public long optimalBufferCopyRowPitchAlignment()- Specified by:
optimalBufferCopyRowPitchAlignmentin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the optimal buffer row pitch alignment in bytes for vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer. 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.
-
pointSizeGranularity
public float pointSizeGranularity()- Specified by:
pointSizeGranularityin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
pointSizeRange
- Specified by:
pointSizeRangein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
sampledImageColorSampleCounts
public int sampledImageColorSampleCounts()- Specified by:
sampledImageColorSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with VK_IMAGE_TILING_OPTIMAL, usage containing VK_IMAGE_USAGE_SAMPLED_BIT, and a non-integer color format.
-
sampledImageDepthSampleCounts
public int sampledImageDepthSampleCounts()- Specified by:
sampledImageDepthSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with VK_IMAGE_TILING_OPTIMAL, usage containing VK_IMAGE_USAGE_SAMPLED_BIT, and a depth format.
-
sampledImageIntegerSampleCounts
public int sampledImageIntegerSampleCounts()- Specified by:
sampledImageIntegerSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with VK_IMAGE_TILING_OPTIMAL, usage containing VK_IMAGE_USAGE_SAMPLED_BIT, and an integer color format.
-
sampledImageStencilSampleCounts
public int sampledImageStencilSampleCounts()- Specified by:
sampledImageStencilSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the sample supported for all 2D images created with VK_IMAGE_TILING_OPTIMAL, usage containing VK_IMAGE_USAGE_SAMPLED_BIT, and a stencil format.
-
sparseAddressSpaceSize
public long sparseAddressSpaceSize()- Specified by:
sparseAddressSpaceSizein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the total amount of address space available, in bytes, for sparse memory resources. This is an upper bound on the sum of the size of all sparse resources, regardless of whether any memory is bound to them.
-
standardSampleLocations
public boolean standardSampleLocations()- Specified by:
standardSampleLocationsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- specifies whether rasterization uses the standard sample locations as documented in Multisampling. If set to VK_TRUE, the implementation uses the documented sample locations. If set to VK_FALSE, the implementation may use different sample locations.
-
storageImageSampleCounts
public int storageImageSampleCounts()- Specified by:
storageImageSampleCountsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- a bitmask1 of VkSampleCountFlagBits indicating the sample counts supported for all 2D images created with VK_IMAGE_TILING_OPTIMAL, and usage containing VK_IMAGE_USAGE_STORAGE_BIT.
-
strictLines
public boolean strictLines()- Specified by:
strictLinesin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- specifies whether lines are rasterized according to the preferred method of rasterization. If set to VK_FALSE, lines may be rasterized under a relaxed set of rules. If set to VK_TRUE, lines are rasterized as per the strict definition.
-
subPixelInterpolationOffsetBits
public int subPixelInterpolationOffsetBits()- Specified by:
subPixelInterpolationOffsetBitsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the number of subpixel fractional bits that the x and y offsets to the InterpolateAtOffset extended instruction may be rounded to as fixed-point values.
-
subPixelPrecisionBits
public int subPixelPrecisionBits()- Specified by:
subPixelPrecisionBitsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the number of bits of subpixel precision in framebuffer coordinates xf and yf.
-
subTexelPrecisionBits
public int subTexelPrecisionBits()- Specified by:
subTexelPrecisionBitsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
timestampComputeAndGraphics
public boolean timestampComputeAndGraphics()- Specified by:
timestampComputeAndGraphicsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- specifies support for timestamps on all graphics and compute queues. If this limit is set to VK_TRUE, all queues that advertise the VK_QUEUE_GRAPHICS_BIT or VK_QUEUE_COMPUTE_BIT in the VkQueueFamilyProperties::queueFlags support VkQueueFamilyProperties::timestampValidBits of at least 36.
-
timestampPeriod
public float timestampPeriod()- Specified by:
timestampPeriodin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- the number of nanoseconds required for a timestamp query to be incremented by 1.
-
viewportBoundsRange
- Specified by:
viewportBoundsRangein interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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]). 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()- Specified by:
viewportSubPixelBitsin interfaceVulkanPhysicalDeviceLimitsType- Returns:
- 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.
-
withBufferImageGranularity
Copy the current immutable object by setting a value for thebufferImageGranularityattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for bufferImageGranularity- Returns:
- A modified copy of the
thisobject
-
withDiscreteQueuePriorities
Copy the current immutable object by setting a value for thediscreteQueuePrioritiesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for discreteQueuePriorities- Returns:
- A modified copy of the
thisobject
-
withFramebufferColorSampleCounts
Copy the current immutable object by setting a value for theframebufferColorSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for framebufferColorSampleCounts- Returns:
- A modified copy of the
thisobject
-
withFramebufferDepthSampleCounts
Copy the current immutable object by setting a value for theframebufferDepthSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for framebufferDepthSampleCounts- Returns:
- A modified copy of the
thisobject
-
withFramebufferNoAttachmentsSampleCounts
Copy the current immutable object by setting a value for theframebufferNoAttachmentsSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for framebufferNoAttachmentsSampleCounts- Returns:
- A modified copy of the
thisobject
-
withFramebufferStencilSampleCounts
Copy the current immutable object by setting a value for theframebufferStencilSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for framebufferStencilSampleCounts- Returns:
- A modified copy of the
thisobject
-
withLineWidthGranularity
Copy the current immutable object by setting a value for thelineWidthGranularityattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for lineWidthGranularity- Returns:
- A modified copy of the
thisobject
-
withLineWidthRange
Copy the current immutable object by setting a value for thelineWidthRangeattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for lineWidthRange- Returns:
- A modified copy of the
thisobject
-
withMaxBoundDescriptorSets
Copy the current immutable object by setting a value for themaxBoundDescriptorSetsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxBoundDescriptorSets- Returns:
- A modified copy of the
thisobject
-
withMaxClipDistances
Copy the current immutable object by setting a value for themaxClipDistancesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxClipDistances- Returns:
- A modified copy of the
thisobject
-
withMaxColorAttachments
Copy the current immutable object by setting a value for themaxColorAttachmentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxColorAttachments- Returns:
- A modified copy of the
thisobject
-
withMaxCombinedClipAndCullDistances
Copy the current immutable object by setting a value for themaxCombinedClipAndCullDistancesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxCombinedClipAndCullDistances- Returns:
- A modified copy of the
thisobject
-
withMaxComputeWorkGroupCount
public final VulkanPhysicalDeviceLimits withMaxComputeWorkGroupCount(VulkanComputeWorkGroupCount value) Copy the current immutable object by setting a value for themaxComputeWorkGroupCountattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxComputeWorkGroupCount- Returns:
- A modified copy of the
thisobject
-
withMaxComputeWorkGroupInvocations
Copy the current immutable object by setting a value for themaxComputeWorkGroupInvocationsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxComputeWorkGroupInvocations- Returns:
- A modified copy of the
thisobject
-
withMaxComputeWorkGroupSize
public final VulkanPhysicalDeviceLimits withMaxComputeWorkGroupSize(VulkanComputeWorkGroupSize value) Copy the current immutable object by setting a value for themaxComputeWorkGroupSizeattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxComputeWorkGroupSize- Returns:
- A modified copy of the
thisobject
-
withMaxCullDistances
Copy the current immutable object by setting a value for themaxCullDistancesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxCullDistances- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetInputAttachments
Copy the current immutable object by setting a value for themaxDescriptorSetInputAttachmentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetInputAttachments- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetSampledImages
Copy the current immutable object by setting a value for themaxDescriptorSetSampledImagesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetSampledImages- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetSamplers
Copy the current immutable object by setting a value for themaxDescriptorSetSamplersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetSamplers- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetStorageBuffersDynamic
Copy the current immutable object by setting a value for themaxDescriptorSetStorageBuffersDynamicattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetStorageBuffersDynamic- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetStorageBuffers
Copy the current immutable object by setting a value for themaxDescriptorSetStorageBuffersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetStorageBuffers- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetStorageImages
Copy the current immutable object by setting a value for themaxDescriptorSetStorageImagesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetStorageImages- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetUniformBuffersDynamic
Copy the current immutable object by setting a value for themaxDescriptorSetUniformBuffersDynamicattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetUniformBuffersDynamic- Returns:
- A modified copy of the
thisobject
-
withMaxDescriptorSetUniformBuffers
Copy the current immutable object by setting a value for themaxDescriptorSetUniformBuffersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDescriptorSetUniformBuffers- Returns:
- A modified copy of the
thisobject
-
withMaxDrawIndexedIndexValue
Copy the current immutable object by setting a value for themaxDrawIndexedIndexValueattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDrawIndexedIndexValue- Returns:
- A modified copy of the
thisobject
-
withMaxDrawIndirectCount
Copy the current immutable object by setting a value for themaxDrawIndirectCountattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxDrawIndirectCount- Returns:
- A modified copy of the
thisobject
-
withMaxFragmentCombinedOutputResources
Copy the current immutable object by setting a value for themaxFragmentCombinedOutputResourcesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFragmentCombinedOutputResources- Returns:
- A modified copy of the
thisobject
-
withMaxFragmentDualSrcAttachments
Copy the current immutable object by setting a value for themaxFragmentDualSrcAttachmentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFragmentDualSrcAttachments- Returns:
- A modified copy of the
thisobject
-
withMaxFragmentInputComponents
Copy the current immutable object by setting a value for themaxFragmentInputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFragmentInputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxFragmentOutputAttachments
Copy the current immutable object by setting a value for themaxFragmentOutputAttachmentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFragmentOutputAttachments- Returns:
- A modified copy of the
thisobject
-
withMaxFramebufferHeight
Copy the current immutable object by setting a value for themaxFramebufferHeightattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFramebufferHeight- Returns:
- A modified copy of the
thisobject
-
withMaxFramebufferLayers
Copy the current immutable object by setting a value for themaxFramebufferLayersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFramebufferLayers- Returns:
- A modified copy of the
thisobject
-
withMaxFramebufferWidth
Copy the current immutable object by setting a value for themaxFramebufferWidthattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxFramebufferWidth- Returns:
- A modified copy of the
thisobject
-
withMaxGeometryInputComponents
Copy the current immutable object by setting a value for themaxGeometryInputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxGeometryInputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxGeometryOutputComponents
Copy the current immutable object by setting a value for themaxGeometryOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxGeometryOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxGeometryOutputVertices
Copy the current immutable object by setting a value for themaxGeometryOutputVerticesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxGeometryOutputVertices- Returns:
- A modified copy of the
thisobject
-
withMaxGeometryShaderInvocations
Copy the current immutable object by setting a value for themaxGeometryShaderInvocationsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxGeometryShaderInvocations- Returns:
- A modified copy of the
thisobject
-
withMaxGeometryTotalOutputComponents
Copy the current immutable object by setting a value for themaxGeometryTotalOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxGeometryTotalOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxImageArrayLayers
Copy the current immutable object by setting a value for themaxImageArrayLayersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxImageArrayLayers- Returns:
- A modified copy of the
thisobject
-
withMaxImageDimension1D
Copy the current immutable object by setting a value for themaxImageDimension1Dattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxImageDimension1D- Returns:
- A modified copy of the
thisobject
-
withMaxImageDimension2D
Copy the current immutable object by setting a value for themaxImageDimension2Dattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxImageDimension2D- Returns:
- A modified copy of the
thisobject
-
withMaxImageDimension3D
Copy the current immutable object by setting a value for themaxImageDimension3Dattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxImageDimension3D- Returns:
- A modified copy of the
thisobject
-
withMaxImageDimensionCube
Copy the current immutable object by setting a value for themaxImageDimensionCubeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxImageDimensionCube- Returns:
- A modified copy of the
thisobject
-
withMaxInterpolationOffset
Copy the current immutable object by setting a value for themaxInterpolationOffsetattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxInterpolationOffset- Returns:
- A modified copy of the
thisobject
-
withMaxMemoryAllocationCount
Copy the current immutable object by setting a value for themaxMemoryAllocationCountattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxMemoryAllocationCount- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorInputAttachments
Copy the current immutable object by setting a value for themaxPerStageDescriptorInputAttachmentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorInputAttachments- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorSampledImages
Copy the current immutable object by setting a value for themaxPerStageDescriptorSampledImagesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorSampledImages- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorSamplers
Copy the current immutable object by setting a value for themaxPerStageDescriptorSamplersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorSamplers- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorStorageBuffers
Copy the current immutable object by setting a value for themaxPerStageDescriptorStorageBuffersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorStorageBuffers- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorStorageImages
Copy the current immutable object by setting a value for themaxPerStageDescriptorStorageImagesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorStorageImages- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageDescriptorUniformBuffers
Copy the current immutable object by setting a value for themaxPerStageDescriptorUniformBuffersattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageDescriptorUniformBuffers- Returns:
- A modified copy of the
thisobject
-
withMaxPerStageResources
Copy the current immutable object by setting a value for themaxPerStageResourcesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPerStageResources- Returns:
- A modified copy of the
thisobject
-
withMaxPushConstantsSize
Copy the current immutable object by setting a value for themaxPushConstantsSizeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxPushConstantsSize- Returns:
- A modified copy of the
thisobject
-
withMaxSampleMaskWords
Copy the current immutable object by setting a value for themaxSampleMaskWordsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxSampleMaskWords- Returns:
- A modified copy of the
thisobject
-
withMaxSamplerAllocationCount
Copy the current immutable object by setting a value for themaxSamplerAllocationCountattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxSamplerAllocationCount- Returns:
- A modified copy of the
thisobject
-
withMaxSamplerAnisotropy
Copy the current immutable object by setting a value for themaxSamplerAnisotropyattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxSamplerAnisotropy- Returns:
- A modified copy of the
thisobject
-
withMaxSamplerLodBias
Copy the current immutable object by setting a value for themaxSamplerLodBiasattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxSamplerLodBias- Returns:
- A modified copy of the
thisobject
-
withMaxStorageBufferRange
Copy the current immutable object by setting a value for themaxStorageBufferRangeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxStorageBufferRange- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationControlPerPatchOutputComponents
public final VulkanPhysicalDeviceLimits withMaxTessellationControlPerPatchOutputComponents(int value) Copy the current immutable object by setting a value for themaxTessellationControlPerPatchOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationControlPerPatchOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationControlPerVertexInputComponents
public final VulkanPhysicalDeviceLimits withMaxTessellationControlPerVertexInputComponents(int value) Copy the current immutable object by setting a value for themaxTessellationControlPerVertexInputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationControlPerVertexInputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationControlPerVertexOutputComponents
public final VulkanPhysicalDeviceLimits withMaxTessellationControlPerVertexOutputComponents(int value) Copy the current immutable object by setting a value for themaxTessellationControlPerVertexOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationControlPerVertexOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationControlTotalOutputComponents
Copy the current immutable object by setting a value for themaxTessellationControlTotalOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationControlTotalOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationEvaluationInputComponents
Copy the current immutable object by setting a value for themaxTessellationEvaluationInputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationEvaluationInputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationEvaluationOutputComponents
Copy the current immutable object by setting a value for themaxTessellationEvaluationOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationEvaluationOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationGenerationLevel
Copy the current immutable object by setting a value for themaxTessellationGenerationLevelattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationGenerationLevel- Returns:
- A modified copy of the
thisobject
-
withMaxTessellationPatchSize
Copy the current immutable object by setting a value for themaxTessellationPatchSizeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTessellationPatchSize- Returns:
- A modified copy of the
thisobject
-
withMaxTexelBufferElements
Copy the current immutable object by setting a value for themaxTexelBufferElementsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTexelBufferElements- Returns:
- A modified copy of the
thisobject
-
withMaxTexelGatherOffset
Copy the current immutable object by setting a value for themaxTexelGatherOffsetattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTexelGatherOffset- Returns:
- A modified copy of the
thisobject
-
withMaxTexelOffset
Copy the current immutable object by setting a value for themaxTexelOffsetattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxTexelOffset- Returns:
- A modified copy of the
thisobject
-
withMaxUniformBufferRange
Copy the current immutable object by setting a value for themaxUniformBufferRangeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxUniformBufferRange- Returns:
- A modified copy of the
thisobject
-
withMaxVertexInputAttributeOffset
Copy the current immutable object by setting a value for themaxVertexInputAttributeOffsetattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxVertexInputAttributeOffset- Returns:
- A modified copy of the
thisobject
-
withMaxVertexInputAttributes
Copy the current immutable object by setting a value for themaxVertexInputAttributesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxVertexInputAttributes- Returns:
- A modified copy of the
thisobject
-
withMaxVertexInputBindings
Copy the current immutable object by setting a value for themaxVertexInputBindingsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxVertexInputBindings- Returns:
- A modified copy of the
thisobject
-
withMaxVertexInputBindingStride
Copy the current immutable object by setting a value for themaxVertexInputBindingStrideattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxVertexInputBindingStride- Returns:
- A modified copy of the
thisobject
-
withMaxVertexOutputComponents
Copy the current immutable object by setting a value for themaxVertexOutputComponentsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxVertexOutputComponents- Returns:
- A modified copy of the
thisobject
-
withMaxViewportDimensions
Copy the current immutable object by setting a value for themaxViewportDimensionsattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxViewportDimensions- Returns:
- A modified copy of the
thisobject
-
withMaxViewports
Copy the current immutable object by setting a value for themaxViewportsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for maxViewports- Returns:
- A modified copy of the
thisobject
-
withMinInterpolationOffset
Copy the current immutable object by setting a value for theminInterpolationOffsetattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minInterpolationOffset- Returns:
- A modified copy of the
thisobject
-
withMinMemoryMapAlignment
Copy the current immutable object by setting a value for theminMemoryMapAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minMemoryMapAlignment- Returns:
- A modified copy of the
thisobject
-
withMinStorageBufferOffsetAlignment
Copy the current immutable object by setting a value for theminStorageBufferOffsetAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minStorageBufferOffsetAlignment- Returns:
- A modified copy of the
thisobject
-
withMinTexelBufferOffsetAlignment
Copy the current immutable object by setting a value for theminTexelBufferOffsetAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minTexelBufferOffsetAlignment- Returns:
- A modified copy of the
thisobject
-
withMinTexelGatherOffset
Copy the current immutable object by setting a value for theminTexelGatherOffsetattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minTexelGatherOffset- Returns:
- A modified copy of the
thisobject
-
withMinTexelOffset
Copy the current immutable object by setting a value for theminTexelOffsetattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minTexelOffset- Returns:
- A modified copy of the
thisobject
-
withMinUniformBufferOffsetAlignment
Copy the current immutable object by setting a value for theminUniformBufferOffsetAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for minUniformBufferOffsetAlignment- Returns:
- A modified copy of the
thisobject
-
withMipmapPrecisionBits
Copy the current immutable object by setting a value for themipmapPrecisionBitsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for mipmapPrecisionBits- Returns:
- A modified copy of the
thisobject
-
withNonCoherentAtomSize
Copy the current immutable object by setting a value for thenonCoherentAtomSizeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for nonCoherentAtomSize- Returns:
- A modified copy of the
thisobject
-
withOptimalBufferCopyOffsetAlignment
Copy the current immutable object by setting a value for theoptimalBufferCopyOffsetAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for optimalBufferCopyOffsetAlignment- Returns:
- A modified copy of the
thisobject
-
withOptimalBufferCopyRowPitchAlignment
Copy the current immutable object by setting a value for theoptimalBufferCopyRowPitchAlignmentattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for optimalBufferCopyRowPitchAlignment- Returns:
- A modified copy of the
thisobject
-
withPointSizeGranularity
Copy the current immutable object by setting a value for thepointSizeGranularityattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for pointSizeGranularity- Returns:
- A modified copy of the
thisobject
-
withPointSizeRange
Copy the current immutable object by setting a value for thepointSizeRangeattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for pointSizeRange- Returns:
- A modified copy of the
thisobject
-
withSampledImageColorSampleCounts
Copy the current immutable object by setting a value for thesampledImageColorSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sampledImageColorSampleCounts- Returns:
- A modified copy of the
thisobject
-
withSampledImageDepthSampleCounts
Copy the current immutable object by setting a value for thesampledImageDepthSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sampledImageDepthSampleCounts- Returns:
- A modified copy of the
thisobject
-
withSampledImageIntegerSampleCounts
Copy the current immutable object by setting a value for thesampledImageIntegerSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sampledImageIntegerSampleCounts- Returns:
- A modified copy of the
thisobject
-
withSampledImageStencilSampleCounts
Copy the current immutable object by setting a value for thesampledImageStencilSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sampledImageStencilSampleCounts- Returns:
- A modified copy of the
thisobject
-
withSparseAddressSpaceSize
Copy the current immutable object by setting a value for thesparseAddressSpaceSizeattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for sparseAddressSpaceSize- Returns:
- A modified copy of the
thisobject
-
withStandardSampleLocations
Copy the current immutable object by setting a value for thestandardSampleLocationsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for standardSampleLocations- Returns:
- A modified copy of the
thisobject
-
withStorageImageSampleCounts
Copy the current immutable object by setting a value for thestorageImageSampleCountsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for storageImageSampleCounts- Returns:
- A modified copy of the
thisobject
-
withStrictLines
Copy the current immutable object by setting a value for thestrictLinesattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for strictLines- Returns:
- A modified copy of the
thisobject
-
withSubPixelInterpolationOffsetBits
Copy the current immutable object by setting a value for thesubPixelInterpolationOffsetBitsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for subPixelInterpolationOffsetBits- Returns:
- A modified copy of the
thisobject
-
withSubPixelPrecisionBits
Copy the current immutable object by setting a value for thesubPixelPrecisionBitsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for subPixelPrecisionBits- Returns:
- A modified copy of the
thisobject
-
withSubTexelPrecisionBits
Copy the current immutable object by setting a value for thesubTexelPrecisionBitsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for subTexelPrecisionBits- Returns:
- A modified copy of the
thisobject
-
withTimestampComputeAndGraphics
Copy the current immutable object by setting a value for thetimestampComputeAndGraphicsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for timestampComputeAndGraphics- Returns:
- A modified copy of the
thisobject
-
withTimestampPeriod
Copy the current immutable object by setting a value for thetimestampPeriodattribute. A value strict bits equality used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for timestampPeriod- Returns:
- A modified copy of the
thisobject
-
withViewportBoundsRange
Copy the current immutable object by setting a value for theviewportBoundsRangeattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for viewportBoundsRange- Returns:
- A modified copy of the
thisobject
-
withViewportSubPixelBits
Copy the current immutable object by setting a value for theviewportSubPixelBitsattribute. A value equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for viewportSubPixelBits- Returns:
- A modified copy of the
thisobject
-
equals
-
hashCode
public int hashCode()Computes a hash code from attributes:bufferImageGranularity,discreteQueuePriorities,framebufferColorSampleCounts,framebufferDepthSampleCounts,framebufferNoAttachmentsSampleCounts,framebufferStencilSampleCounts,lineWidthGranularity,lineWidthRange,maxBoundDescriptorSets,maxClipDistances,maxColorAttachments,maxCombinedClipAndCullDistances,maxComputeSharedMemorySize,maxComputeWorkGroupCount,maxComputeWorkGroupInvocations,maxComputeWorkGroupSize,maxCullDistances,maxDescriptorSetInputAttachments,maxDescriptorSetSampledImages,maxDescriptorSetSamplers,maxDescriptorSetStorageBuffersDynamic,maxDescriptorSetStorageBuffers,maxDescriptorSetStorageImages,maxDescriptorSetUniformBuffersDynamic,maxDescriptorSetUniformBuffers,maxDrawIndexedIndexValue,maxDrawIndirectCount,maxFragmentCombinedOutputResources,maxFragmentDualSrcAttachments,maxFragmentInputComponents,maxFragmentOutputAttachments,maxFramebufferHeight,maxFramebufferLayers,maxFramebufferWidth,maxGeometryInputComponents,maxGeometryOutputComponents,maxGeometryOutputVertices,maxGeometryShaderInvocations,maxGeometryTotalOutputComponents,maxImageArrayLayers,maxImageDimension1D,maxImageDimension2D,maxImageDimension3D,maxImageDimensionCube,maxInterpolationOffset,maxMemoryAllocationCount,maxPerStageDescriptorInputAttachments,maxPerStageDescriptorSampledImages,maxPerStageDescriptorSamplers,maxPerStageDescriptorStorageBuffers,maxPerStageDescriptorStorageImages,maxPerStageDescriptorUniformBuffers,maxPerStageResources,maxPushConstantsSize,maxSampleMaskWords,maxSamplerAllocationCount,maxSamplerAnisotropy,maxSamplerLodBias,maxStorageBufferRange,maxTessellationControlPerPatchOutputComponents,maxTessellationControlPerVertexInputComponents,maxTessellationControlPerVertexOutputComponents,maxTessellationControlTotalOutputComponents,maxTessellationEvaluationInputComponents,maxTessellationEvaluationOutputComponents,maxTessellationGenerationLevel,maxTessellationPatchSize,maxTexelBufferElements,maxTexelGatherOffset,maxTexelOffset,maxUniformBufferRange,maxVertexInputAttributeOffset,maxVertexInputAttributes,maxVertexInputBindings,maxVertexInputBindingStride,maxVertexOutputComponents,maxViewportDimensions,maxViewports,minInterpolationOffset,minMemoryMapAlignment,minStorageBufferOffsetAlignment,minTexelBufferOffsetAlignment,minTexelGatherOffset,minTexelOffset,minUniformBufferOffsetAlignment,mipmapPrecisionBits,nonCoherentAtomSize,optimalBufferCopyOffsetAlignment,optimalBufferCopyRowPitchAlignment,pointSizeGranularity,pointSizeRange,sampledImageColorSampleCounts,sampledImageDepthSampleCounts,sampledImageIntegerSampleCounts,sampledImageStencilSampleCounts,sparseAddressSpaceSize,standardSampleLocations,storageImageSampleCounts,strictLines,subPixelInterpolationOffsetBits,subPixelPrecisionBits,subTexelPrecisionBits,timestampComputeAndGraphics,timestampPeriod,viewportBoundsRange,viewportSubPixelBits. -
toString
-
of
public static VulkanPhysicalDeviceLimits of(long bufferImageGranularity, int discreteQueuePriorities, int framebufferColorSampleCounts, int framebufferDepthSampleCounts, int framebufferNoAttachmentsSampleCounts, int framebufferStencilSampleCounts, float lineWidthGranularity, VulkanLineWidthRange lineWidthRange, int maxBoundDescriptorSets, int maxClipDistances, int maxColorAttachments, int maxCombinedClipAndCullDistances, int maxComputeSharedMemorySize, VulkanComputeWorkGroupCount maxComputeWorkGroupCount, int maxComputeWorkGroupInvocations, VulkanComputeWorkGroupSize maxComputeWorkGroupSize, int maxCullDistances, int maxDescriptorSetInputAttachments, int maxDescriptorSetSampledImages, int maxDescriptorSetSamplers, int maxDescriptorSetStorageBuffersDynamic, int maxDescriptorSetStorageBuffers, int maxDescriptorSetStorageImages, int maxDescriptorSetUniformBuffersDynamic, int maxDescriptorSetUniformBuffers, int maxDrawIndexedIndexValue, int maxDrawIndirectCount, int maxFragmentCombinedOutputResources, int maxFragmentDualSrcAttachments, int maxFragmentInputComponents, int maxFragmentOutputAttachments, int maxFramebufferHeight, int maxFramebufferLayers, int maxFramebufferWidth, int maxGeometryInputComponents, int maxGeometryOutputComponents, int maxGeometryOutputVertices, int maxGeometryShaderInvocations, int maxGeometryTotalOutputComponents, int maxImageArrayLayers, int maxImageDimension1D, int maxImageDimension2D, int maxImageDimension3D, int maxImageDimensionCube, float maxInterpolationOffset, int maxMemoryAllocationCount, int maxPerStageDescriptorInputAttachments, int maxPerStageDescriptorSampledImages, int maxPerStageDescriptorSamplers, int maxPerStageDescriptorStorageBuffers, int maxPerStageDescriptorStorageImages, int maxPerStageDescriptorUniformBuffers, int maxPerStageResources, int maxPushConstantsSize, int maxSampleMaskWords, int maxSamplerAllocationCount, float maxSamplerAnisotropy, float maxSamplerLodBias, int maxStorageBufferRange, int maxTessellationControlPerPatchOutputComponents, int maxTessellationControlPerVertexInputComponents, int maxTessellationControlPerVertexOutputComponents, int maxTessellationControlTotalOutputComponents, int maxTessellationEvaluationInputComponents, int maxTessellationEvaluationOutputComponents, int maxTessellationGenerationLevel, int maxTessellationPatchSize, int maxTexelBufferElements, int maxTexelGatherOffset, int maxTexelOffset, int maxUniformBufferRange, int maxVertexInputAttributeOffset, int maxVertexInputAttributes, int maxVertexInputBindings, int maxVertexInputBindingStride, int maxVertexOutputComponents, VulkanViewportDimensions maxViewportDimensions, int maxViewports, float minInterpolationOffset, long minMemoryMapAlignment, long minStorageBufferOffsetAlignment, long minTexelBufferOffsetAlignment, int minTexelGatherOffset, int minTexelOffset, long minUniformBufferOffsetAlignment, int mipmapPrecisionBits, long nonCoherentAtomSize, long optimalBufferCopyOffsetAlignment, long optimalBufferCopyRowPitchAlignment, float pointSizeGranularity, VulkanPointSizeRange pointSizeRange, int sampledImageColorSampleCounts, int sampledImageDepthSampleCounts, int sampledImageIntegerSampleCounts, int sampledImageStencilSampleCounts, long sparseAddressSpaceSize, boolean standardSampleLocations, int storageImageSampleCounts, boolean strictLines, int subPixelInterpolationOffsetBits, int subPixelPrecisionBits, int subTexelPrecisionBits, boolean timestampComputeAndGraphics, float timestampPeriod, VulkanViewportBoundsRange viewportBoundsRange, int viewportSubPixelBits) Construct a new immutableVulkanPhysicalDeviceLimitsinstance.- Parameters:
bufferImageGranularity- The value for thebufferImageGranularityattributediscreteQueuePriorities- The value for thediscreteQueuePrioritiesattributeframebufferColorSampleCounts- The value for theframebufferColorSampleCountsattributeframebufferDepthSampleCounts- The value for theframebufferDepthSampleCountsattributeframebufferNoAttachmentsSampleCounts- The value for theframebufferNoAttachmentsSampleCountsattributeframebufferStencilSampleCounts- The value for theframebufferStencilSampleCountsattributelineWidthGranularity- The value for thelineWidthGranularityattributelineWidthRange- The value for thelineWidthRangeattributemaxBoundDescriptorSets- The value for themaxBoundDescriptorSetsattributemaxClipDistances- The value for themaxClipDistancesattributemaxColorAttachments- The value for themaxColorAttachmentsattributemaxCombinedClipAndCullDistances- The value for themaxCombinedClipAndCullDistancesattributemaxComputeSharedMemorySize- The value for themaxComputeSharedMemorySizeattributemaxComputeWorkGroupCount- The value for themaxComputeWorkGroupCountattributemaxComputeWorkGroupInvocations- The value for themaxComputeWorkGroupInvocationsattributemaxComputeWorkGroupSize- The value for themaxComputeWorkGroupSizeattributemaxCullDistances- The value for themaxCullDistancesattributemaxDescriptorSetInputAttachments- The value for themaxDescriptorSetInputAttachmentsattributemaxDescriptorSetSampledImages- The value for themaxDescriptorSetSampledImagesattributemaxDescriptorSetSamplers- The value for themaxDescriptorSetSamplersattributemaxDescriptorSetStorageBuffersDynamic- The value for themaxDescriptorSetStorageBuffersDynamicattributemaxDescriptorSetStorageBuffers- The value for themaxDescriptorSetStorageBuffersattributemaxDescriptorSetStorageImages- The value for themaxDescriptorSetStorageImagesattributemaxDescriptorSetUniformBuffersDynamic- The value for themaxDescriptorSetUniformBuffersDynamicattributemaxDescriptorSetUniformBuffers- The value for themaxDescriptorSetUniformBuffersattributemaxDrawIndexedIndexValue- The value for themaxDrawIndexedIndexValueattributemaxDrawIndirectCount- The value for themaxDrawIndirectCountattributemaxFragmentCombinedOutputResources- The value for themaxFragmentCombinedOutputResourcesattributemaxFragmentDualSrcAttachments- The value for themaxFragmentDualSrcAttachmentsattributemaxFragmentInputComponents- The value for themaxFragmentInputComponentsattributemaxFragmentOutputAttachments- The value for themaxFragmentOutputAttachmentsattributemaxFramebufferHeight- The value for themaxFramebufferHeightattributemaxFramebufferLayers- The value for themaxFramebufferLayersattributemaxFramebufferWidth- The value for themaxFramebufferWidthattributemaxGeometryInputComponents- The value for themaxGeometryInputComponentsattributemaxGeometryOutputComponents- The value for themaxGeometryOutputComponentsattributemaxGeometryOutputVertices- The value for themaxGeometryOutputVerticesattributemaxGeometryShaderInvocations- The value for themaxGeometryShaderInvocationsattributemaxGeometryTotalOutputComponents- The value for themaxGeometryTotalOutputComponentsattributemaxImageArrayLayers- The value for themaxImageArrayLayersattributemaxImageDimension1D- The value for themaxImageDimension1DattributemaxImageDimension2D- The value for themaxImageDimension2DattributemaxImageDimension3D- The value for themaxImageDimension3DattributemaxImageDimensionCube- The value for themaxImageDimensionCubeattributemaxInterpolationOffset- The value for themaxInterpolationOffsetattributemaxMemoryAllocationCount- The value for themaxMemoryAllocationCountattributemaxPerStageDescriptorInputAttachments- The value for themaxPerStageDescriptorInputAttachmentsattributemaxPerStageDescriptorSampledImages- The value for themaxPerStageDescriptorSampledImagesattributemaxPerStageDescriptorSamplers- The value for themaxPerStageDescriptorSamplersattributemaxPerStageDescriptorStorageBuffers- The value for themaxPerStageDescriptorStorageBuffersattributemaxPerStageDescriptorStorageImages- The value for themaxPerStageDescriptorStorageImagesattributemaxPerStageDescriptorUniformBuffers- The value for themaxPerStageDescriptorUniformBuffersattributemaxPerStageResources- The value for themaxPerStageResourcesattributemaxPushConstantsSize- The value for themaxPushConstantsSizeattributemaxSampleMaskWords- The value for themaxSampleMaskWordsattributemaxSamplerAllocationCount- The value for themaxSamplerAllocationCountattributemaxSamplerAnisotropy- The value for themaxSamplerAnisotropyattributemaxSamplerLodBias- The value for themaxSamplerLodBiasattributemaxStorageBufferRange- The value for themaxStorageBufferRangeattributemaxTessellationControlPerPatchOutputComponents- The value for themaxTessellationControlPerPatchOutputComponentsattributemaxTessellationControlPerVertexInputComponents- The value for themaxTessellationControlPerVertexInputComponentsattributemaxTessellationControlPerVertexOutputComponents- The value for themaxTessellationControlPerVertexOutputComponentsattributemaxTessellationControlTotalOutputComponents- The value for themaxTessellationControlTotalOutputComponentsattributemaxTessellationEvaluationInputComponents- The value for themaxTessellationEvaluationInputComponentsattributemaxTessellationEvaluationOutputComponents- The value for themaxTessellationEvaluationOutputComponentsattributemaxTessellationGenerationLevel- The value for themaxTessellationGenerationLevelattributemaxTessellationPatchSize- The value for themaxTessellationPatchSizeattributemaxTexelBufferElements- The value for themaxTexelBufferElementsattributemaxTexelGatherOffset- The value for themaxTexelGatherOffsetattributemaxTexelOffset- The value for themaxTexelOffsetattributemaxUniformBufferRange- The value for themaxUniformBufferRangeattributemaxVertexInputAttributeOffset- The value for themaxVertexInputAttributeOffsetattributemaxVertexInputAttributes- The value for themaxVertexInputAttributesattributemaxVertexInputBindings- The value for themaxVertexInputBindingsattributemaxVertexInputBindingStride- The value for themaxVertexInputBindingStrideattributemaxVertexOutputComponents- The value for themaxVertexOutputComponentsattributemaxViewportDimensions- The value for themaxViewportDimensionsattributemaxViewports- The value for themaxViewportsattributeminInterpolationOffset- The value for theminInterpolationOffsetattributeminMemoryMapAlignment- The value for theminMemoryMapAlignmentattributeminStorageBufferOffsetAlignment- The value for theminStorageBufferOffsetAlignmentattributeminTexelBufferOffsetAlignment- The value for theminTexelBufferOffsetAlignmentattributeminTexelGatherOffset- The value for theminTexelGatherOffsetattributeminTexelOffset- The value for theminTexelOffsetattributeminUniformBufferOffsetAlignment- The value for theminUniformBufferOffsetAlignmentattributemipmapPrecisionBits- The value for themipmapPrecisionBitsattributenonCoherentAtomSize- The value for thenonCoherentAtomSizeattributeoptimalBufferCopyOffsetAlignment- The value for theoptimalBufferCopyOffsetAlignmentattributeoptimalBufferCopyRowPitchAlignment- The value for theoptimalBufferCopyRowPitchAlignmentattributepointSizeGranularity- The value for thepointSizeGranularityattributepointSizeRange- The value for thepointSizeRangeattributesampledImageColorSampleCounts- The value for thesampledImageColorSampleCountsattributesampledImageDepthSampleCounts- The value for thesampledImageDepthSampleCountsattributesampledImageIntegerSampleCounts- The value for thesampledImageIntegerSampleCountsattributesampledImageStencilSampleCounts- The value for thesampledImageStencilSampleCountsattributesparseAddressSpaceSize- The value for thesparseAddressSpaceSizeattributestandardSampleLocations- The value for thestandardSampleLocationsattributestorageImageSampleCounts- The value for thestorageImageSampleCountsattributestrictLines- The value for thestrictLinesattributesubPixelInterpolationOffsetBits- The value for thesubPixelInterpolationOffsetBitsattributesubPixelPrecisionBits- The value for thesubPixelPrecisionBitsattributesubTexelPrecisionBits- The value for thesubTexelPrecisionBitsattributetimestampComputeAndGraphics- The value for thetimestampComputeAndGraphicsattributetimestampPeriod- The value for thetimestampPeriodattributeviewportBoundsRange- The value for theviewportBoundsRangeattributeviewportSubPixelBits- The value for theviewportSubPixelBitsattribute- Returns:
- An immutable VulkanPhysicalDeviceLimits instance
-
copyOf
Creates an immutable copy of aVulkanPhysicalDeviceLimitsTypevalue. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Parameters:
instance- The instance to copy- Returns:
- A copied immutable VulkanPhysicalDeviceLimits instance
-
builder
Creates a builder forVulkanPhysicalDeviceLimits.VulkanPhysicalDeviceLimits.builder() .setBufferImageGranularity(long) // requiredbufferImageGranularity.setDiscreteQueuePriorities(int) // requireddiscreteQueuePriorities.setFramebufferColorSampleCounts(int) // requiredframebufferColorSampleCounts.setFramebufferDepthSampleCounts(int) // requiredframebufferDepthSampleCounts.setFramebufferNoAttachmentsSampleCounts(int) // requiredframebufferNoAttachmentsSampleCounts.setFramebufferStencilSampleCounts(int) // requiredframebufferStencilSampleCounts.setLineWidthGranularity(float) // requiredlineWidthGranularity.setLineWidthRange(com.io7m.jcoronado.api.VulkanLineWidthRange) // requiredlineWidthRange.setMaxBoundDescriptorSets(int) // requiredmaxBoundDescriptorSets.setMaxClipDistances(int) // requiredmaxClipDistances.setMaxColorAttachments(int) // requiredmaxColorAttachments.setMaxCombinedClipAndCullDistances(int) // requiredmaxCombinedClipAndCullDistances.setMaxComputeSharedMemorySize(int) // requiredmaxComputeSharedMemorySize.setMaxComputeWorkGroupCount(com.io7m.jcoronado.api.VulkanComputeWorkGroupCount) // requiredmaxComputeWorkGroupCount.setMaxComputeWorkGroupInvocations(int) // requiredmaxComputeWorkGroupInvocations.setMaxComputeWorkGroupSize(com.io7m.jcoronado.api.VulkanComputeWorkGroupSize) // requiredmaxComputeWorkGroupSize.setMaxCullDistances(int) // requiredmaxCullDistances.setMaxDescriptorSetInputAttachments(int) // requiredmaxDescriptorSetInputAttachments.setMaxDescriptorSetSampledImages(int) // requiredmaxDescriptorSetSampledImages.setMaxDescriptorSetSamplers(int) // requiredmaxDescriptorSetSamplers.setMaxDescriptorSetStorageBuffersDynamic(int) // requiredmaxDescriptorSetStorageBuffersDynamic.setMaxDescriptorSetStorageBuffers(int) // requiredmaxDescriptorSetStorageBuffers.setMaxDescriptorSetStorageImages(int) // requiredmaxDescriptorSetStorageImages.setMaxDescriptorSetUniformBuffersDynamic(int) // requiredmaxDescriptorSetUniformBuffersDynamic.setMaxDescriptorSetUniformBuffers(int) // requiredmaxDescriptorSetUniformBuffers.setMaxDrawIndexedIndexValue(int) // requiredmaxDrawIndexedIndexValue.setMaxDrawIndirectCount(int) // requiredmaxDrawIndirectCount.setMaxFragmentCombinedOutputResources(int) // requiredmaxFragmentCombinedOutputResources.setMaxFragmentDualSrcAttachments(int) // requiredmaxFragmentDualSrcAttachments.setMaxFragmentInputComponents(int) // requiredmaxFragmentInputComponents.setMaxFragmentOutputAttachments(int) // requiredmaxFragmentOutputAttachments.setMaxFramebufferHeight(int) // requiredmaxFramebufferHeight.setMaxFramebufferLayers(int) // requiredmaxFramebufferLayers.setMaxFramebufferWidth(int) // requiredmaxFramebufferWidth.setMaxGeometryInputComponents(int) // requiredmaxGeometryInputComponents.setMaxGeometryOutputComponents(int) // requiredmaxGeometryOutputComponents.setMaxGeometryOutputVertices(int) // requiredmaxGeometryOutputVertices.setMaxGeometryShaderInvocations(int) // requiredmaxGeometryShaderInvocations.setMaxGeometryTotalOutputComponents(int) // requiredmaxGeometryTotalOutputComponents.setMaxImageArrayLayers(int) // requiredmaxImageArrayLayers.setMaxImageDimension1D(int) // requiredmaxImageDimension1D.setMaxImageDimension2D(int) // requiredmaxImageDimension2D.setMaxImageDimension3D(int) // requiredmaxImageDimension3D.setMaxImageDimensionCube(int) // requiredmaxImageDimensionCube.setMaxInterpolationOffset(float) // requiredmaxInterpolationOffset.setMaxMemoryAllocationCount(int) // requiredmaxMemoryAllocationCount.setMaxPerStageDescriptorInputAttachments(int) // requiredmaxPerStageDescriptorInputAttachments.setMaxPerStageDescriptorSampledImages(int) // requiredmaxPerStageDescriptorSampledImages.setMaxPerStageDescriptorSamplers(int) // requiredmaxPerStageDescriptorSamplers.setMaxPerStageDescriptorStorageBuffers(int) // requiredmaxPerStageDescriptorStorageBuffers.setMaxPerStageDescriptorStorageImages(int) // requiredmaxPerStageDescriptorStorageImages.setMaxPerStageDescriptorUniformBuffers(int) // requiredmaxPerStageDescriptorUniformBuffers.setMaxPerStageResources(int) // requiredmaxPerStageResources.setMaxPushConstantsSize(int) // requiredmaxPushConstantsSize.setMaxSampleMaskWords(int) // requiredmaxSampleMaskWords.setMaxSamplerAllocationCount(int) // requiredmaxSamplerAllocationCount.setMaxSamplerAnisotropy(float) // requiredmaxSamplerAnisotropy.setMaxSamplerLodBias(float) // requiredmaxSamplerLodBias.setMaxStorageBufferRange(int) // requiredmaxStorageBufferRange.setMaxTessellationControlPerPatchOutputComponents(int) // requiredmaxTessellationControlPerPatchOutputComponents.setMaxTessellationControlPerVertexInputComponents(int) // requiredmaxTessellationControlPerVertexInputComponents.setMaxTessellationControlPerVertexOutputComponents(int) // requiredmaxTessellationControlPerVertexOutputComponents.setMaxTessellationControlTotalOutputComponents(int) // requiredmaxTessellationControlTotalOutputComponents.setMaxTessellationEvaluationInputComponents(int) // requiredmaxTessellationEvaluationInputComponents.setMaxTessellationEvaluationOutputComponents(int) // requiredmaxTessellationEvaluationOutputComponents.setMaxTessellationGenerationLevel(int) // requiredmaxTessellationGenerationLevel.setMaxTessellationPatchSize(int) // requiredmaxTessellationPatchSize.setMaxTexelBufferElements(int) // requiredmaxTexelBufferElements.setMaxTexelGatherOffset(int) // requiredmaxTexelGatherOffset.setMaxTexelOffset(int) // requiredmaxTexelOffset.setMaxUniformBufferRange(int) // requiredmaxUniformBufferRange.setMaxVertexInputAttributeOffset(int) // requiredmaxVertexInputAttributeOffset.setMaxVertexInputAttributes(int) // requiredmaxVertexInputAttributes.setMaxVertexInputBindings(int) // requiredmaxVertexInputBindings.setMaxVertexInputBindingStride(int) // requiredmaxVertexInputBindingStride.setMaxVertexOutputComponents(int) // requiredmaxVertexOutputComponents.setMaxViewportDimensions(com.io7m.jcoronado.api.VulkanViewportDimensions) // requiredmaxViewportDimensions.setMaxViewports(int) // requiredmaxViewports.setMinInterpolationOffset(float) // requiredminInterpolationOffset.setMinMemoryMapAlignment(long) // requiredminMemoryMapAlignment.setMinStorageBufferOffsetAlignment(long) // requiredminStorageBufferOffsetAlignment.setMinTexelBufferOffsetAlignment(long) // requiredminTexelBufferOffsetAlignment.setMinTexelGatherOffset(int) // requiredminTexelGatherOffset.setMinTexelOffset(int) // requiredminTexelOffset.setMinUniformBufferOffsetAlignment(long) // requiredminUniformBufferOffsetAlignment.setMipmapPrecisionBits(int) // requiredmipmapPrecisionBits.setNonCoherentAtomSize(long) // requirednonCoherentAtomSize.setOptimalBufferCopyOffsetAlignment(long) // requiredoptimalBufferCopyOffsetAlignment.setOptimalBufferCopyRowPitchAlignment(long) // requiredoptimalBufferCopyRowPitchAlignment.setPointSizeGranularity(float) // requiredpointSizeGranularity.setPointSizeRange(com.io7m.jcoronado.api.VulkanPointSizeRange) // requiredpointSizeRange.setSampledImageColorSampleCounts(int) // requiredsampledImageColorSampleCounts.setSampledImageDepthSampleCounts(int) // requiredsampledImageDepthSampleCounts.setSampledImageIntegerSampleCounts(int) // requiredsampledImageIntegerSampleCounts.setSampledImageStencilSampleCounts(int) // requiredsampledImageStencilSampleCounts.setSparseAddressSpaceSize(long) // requiredsparseAddressSpaceSize.setStandardSampleLocations(boolean) // requiredstandardSampleLocations.setStorageImageSampleCounts(int) // requiredstorageImageSampleCounts.setStrictLines(boolean) // requiredstrictLines.setSubPixelInterpolationOffsetBits(int) // requiredsubPixelInterpolationOffsetBits.setSubPixelPrecisionBits(int) // requiredsubPixelPrecisionBits.setSubTexelPrecisionBits(int) // requiredsubTexelPrecisionBits.setTimestampComputeAndGraphics(boolean) // requiredtimestampComputeAndGraphics.setTimestampPeriod(float) // requiredtimestampPeriod.setViewportBoundsRange(com.io7m.jcoronado.api.VulkanViewportBoundsRange) // requiredviewportBoundsRange.setViewportSubPixelBits(int) // requiredviewportSubPixelBits.build();- Returns:
- A new VulkanPhysicalDeviceLimits builder
-