Structures

VkPhysicalDevicePortabilitySubsetFeaturesKHR

Structure describing the features that may not be supported by an implementation of the Vulkan 1.0 Portability Subset

The VkPhysicalDevicePortabilitySubsetFeaturesKHR structure is defined as:

typedef struct VkPhysicalDevicePortabilitySubsetFeaturesKHR {
    VkStructureType sType;
    void* pNext;
    VkBool32 constantAlphaColorBlendFactors;
    VkBool32 events;
    VkBool32 imageViewFormatReinterpretation;
    VkBool32 imageViewFormatSwizzle;
    VkBool32 imageView2DOn3DImage;
    VkBool32 multisampleArrayImage;
    VkBool32 mutableComparisonSamplers;
    VkBool32 pointPolygons;
    VkBool32 samplerMipLodBias;
    VkBool32 separateStencilMaskRef;
    VkBool32 shaderSampleRateInterpolationFunctions;
    VkBool32 tessellationIsolines;
    VkBool32 tessellationPointMode;
    VkBool32 triangleFans;
    VkBool32 vertexAttributeAccessBeyondStride;
} VkPhysicalDevicePortabilitySubsetFeaturesKHR;

This structure describes the following features:

  • sType is a VkStructureType value identifying this structure.
  • pNext is NULL or a pointer to a structure extending this structure.
  • constantAlphaColorBlendFactors indicates whether this implementation supports constant alpha Blend Factors used as source or destination color Blending.
  • events indicates whether this implementation supports synchronization using Events.
  • imageViewFormatReinterpretation indicates whether this implementation supports a VkImageView being created with a texel format containing a different number of components, or a different number of bits in each component, than the texel format of the underlying VkImage.
  • imageViewFormatSwizzle indicates whether this implementation supports remapping format components using VkImageViewCreateInfo::components.
  • imageView2DOn3DImage indicates whether this implementation supports a VkImage being created with the VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT flag set, permitting a 2D or 2D array image view to be created on a 3D VkImage.
  • multisampleArrayImage indicates whether this implementation supports a VkImage being created as a 2D array with multiple samples per texel.
  • mutableComparisonSamplers indicates whether this implementation allows descriptors with comparison samplers to be updated.
  • pointPolygons indicates whether this implementation supports Rasterization using a point
    Polygon Mode.
  • samplerMipLodBias indicates whether this implementation supports setting a mipmap LOD bias value when creating a sampler.
  • separateStencilMaskRef indicates whether this implementation supports separate front and back Stencil Test reference values.
  • shaderSampleRateInterpolationFunctions indicates whether this implementation supports fragment shaders which use the InterpolationFunction capability and the extended instructions InterpolateAtCentroid, InterpolateAtOffset, and InterpolateAtSample from the GLSL.std.450 extended instruction set. This member is only meaningful if the sampleRateShading feature is supported.
  • tessellationIsolines indicates whether this implementation supports isoline output from the Tessellation stage of a graphics pipeline. This member is only meaningful if tessellationShader are supported.
  • tessellationPointMode indicates whether this implementation supports point output from the Tessellation stage of a graphics pipeline. This member is only meaningful if tessellationShader are supported.
  • triangleFans indicates whether this implementation supports Triangle Fans primitive topology.
  • vertexAttributeAccessBeyondStride indicates whether this implementation supports accessing a vertex input attribute beyond the stride of the corresponding vertex input binding.

If the VkPhysicalDevicePortabilitySubsetFeaturesKHR structure is included in the pNext chain of the VkPhysicalDeviceFeatures2 structure passed to vkGetPhysicalDeviceFeatures2, it is filled in to indicate whether each corresponding feature is supported. VkPhysicalDevicePortabilitySubsetFeaturesKHR can also be used in the pNext chain of VkDeviceCreateInfo to selectively enable these features.

Valid Usage (Implicit)

VUID-VkPhysicalDevicePortabilitySubsetFeaturesKHR-sType-sType

sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR