Structures
VkPhysicalDeviceVulkan14Properties
Structure specifying physical device properties for functionality promoted to Vulkan 1.4
The VkPhysicalDeviceVulkan14Properties
structure is defined as:
typedef struct VkPhysicalDeviceVulkan14Properties {
VkStructureType sType;
void* pNext;
uint32_t lineSubPixelPrecisionBits;
uint32_t maxVertexAttribDivisor;
VkBool32 supportsNonZeroFirstInstance;
uint32_t maxPushDescriptors;
VkBool32 dynamicRenderingLocalReadDepthStencilAttachments;
VkBool32 dynamicRenderingLocalReadMultisampledAttachments;
VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting;
VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting;
VkBool32 depthStencilSwizzleOneSupport;
VkBool32 polygonModePointSize;
VkBool32 nonStrictSinglePixelWideLinesUseParallelogram;
VkBool32 nonStrictWideLinesUseParallelogram;
VkBool32 blockTexelViewCompatibleMultipleLayers;
uint32_t maxCombinedImageSamplerDescriptorCount;
VkBool32 fragmentShadingRateClampCombinerInputs;
VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers;
VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers;
VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs;
VkPipelineRobustnessImageBehavior defaultRobustnessImages;
uint32_t copySrcLayoutCount;
VkImageLayout* pCopySrcLayouts;
uint32_t copyDstLayoutCount;
VkImageLayout* pCopyDstLayouts;
uint8_t optimalTilingLayoutUUID[VK_UUID_SIZE];
VkBool32 identicalMemoryTypeRequirements;
} VkPhysicalDeviceVulkan14Properties;
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.lineSubPixelPrecisionBits
is the number of bits of subpixel precision in framebuffer coordinates xf and yf when rasterizing line segments.maxVertexAttribDivisor
is the maximum value of the number of instances that will repeat the value of vertex attribute data when instanced rendering is enabled.supportsNonZeroFirstInstance
specifies whether a non-zero value for thefirstInstance
parameter of drawing commands is supported when VkVertexInputBindingDivisorDescription::divisor
is not1
.-
maxPushDescriptors
is the maximum number of descriptors that can be used in a descriptor set layout created withVK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT
set. dynamicRenderingLocalReadDepthStencilAttachments
isVK_TRUE
if the implementation supports local reads of depth/stencil attachments,VK_FALSE
otherwise.dynamicRenderingLocalReadMultisampledAttachments
isVK_TRUE
if the implementation supports local reads of multisampled attachments,VK_FALSE
otherwise.earlyFragmentMultisampleCoverageAfterSampleCounting
is a boolean value indicating whether the fragment shading and multisample coverage operations are performed after sample counting for fragment shaders withEarlyFragmentTests
execution mode.earlyFragmentSampleMaskTestBeforeSampleCounting
is a boolean value indicating whether the sample mask test operation is performed before sample counting for fragment shaders using theEarlyFragmentTests
execution mode.depthStencilSwizzleOneSupport
is a boolean indicating that depth/stencil texturing operations withVK_COMPONENT_SWIZZLE_ONE
have defined behavior.polygonModePointSize
is a boolean value indicating whether the point size of the final rasterization of polygons withVK_POLYGON_MODE_POINT
is controlled byPointSize
.nonStrictSinglePixelWideLinesUseParallelogram
is a boolean value indicating whether non-strict lines with a width of 1.0 are rasterized as parallelograms or using Bresenham’s algorithm.nonStrictWideLinesUseParallelogram
is a boolean value indicating whether non-strict lines with a width greater than 1.0 are rasterized as parallelograms or using Bresenham’s algorithm.blockTexelViewCompatibleMultipleLayers
is a boolean value indicating that an implementation supports creating image views withVK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
where thelayerCount
member ofsubresourceRange
is greater than1
.maxCombinedImageSamplerDescriptorCount
is the maximum number of combined image sampler descriptors that the implementation uses to access any of the formats that require a sampler Y′CBCR conversion supported by the implementation.fragmentShadingRateClampCombinerInputs
is a boolean value indicating that an implementation clamps the inputs to combiner operations.defaultRobustnessStorageBuffers
describes the behavior of out of bounds accesses made to storage buffers when no robustness features are enableddefaultRobustnessUniformBuffers
describes the behavior of out of bounds accesses made to uniform buffers when no robustness features are enableddefaultRobustnessVertexInputs
describes the behavior of out of bounds accesses made to vertex input attributes when no robustness features are enableddefaultRobustnessImages
describes the behavior of out of bounds accesses made to images when no robustness features are enabledcopySrcLayoutCount
is an integer related to the number of image layouts for host copies from images available or queried, as described below.pCopySrcLayouts
is a pointer to an array of VkImageLayout in which supported image layouts for use with host copy operations from images are returned.copyDstLayoutCount
is an integer related to the number of image layouts for host copies to images available or queried, as described below.pCopyDstLayouts
is a pointer to an array of VkImageLayout in which supported image layouts for use with host copy operations to images are returned.optimalTilingLayoutUUID
is an array ofVK_UUID_SIZE
uint8_t
values representing a universally unique identifier for the implementation’s swizzling layout of images created withVK_IMAGE_TILING_OPTIMAL
.identicalMemoryTypeRequirements
indicates that specifying theVK_IMAGE_USAGE_HOST_TRANSFER_BIT
flag in VkImageCreateInfo::usage
does not affect the memory type requirements of the image.
If the VkPhysicalDeviceVulkan14Properties
structure is included in the pNext
chain of the
VkPhysicalDeviceProperties2 structure passed to
vkGetPhysicalDeviceProperties2, it is filled in with each
corresponding implementation-dependent property.
These properties correspond to Vulkan 1.4 functionality.
Valid Usage (Implicit)
VUID-VkPhysicalDeviceVulkan14Properties-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES