Structures

VkPhysicalDeviceTileShadingFeaturesQCOM

Structure describing tile shading features that can be supported by an implementation

The VkPhysicalDeviceTileShadingFeaturesQCOM structure is defined as:

typedef struct VkPhysicalDeviceTileShadingFeaturesQCOM {
    VkStructureType sType;
    void* pNext;
    VkBool32 tileShading;
    VkBool32 tileShadingFragmentStage;
    VkBool32 tileShadingColorAttachments;
    VkBool32 tileShadingDepthAttachments;
    VkBool32 tileShadingStencilAttachments;
    VkBool32 tileShadingInputAttachments;
    VkBool32 tileShadingSampledAttachments;
    VkBool32 tileShadingPerTileDraw;
    VkBool32 tileShadingPerTileDispatch;
    VkBool32 tileShadingDispatchTile;
    VkBool32 tileShadingApron;
    VkBool32 tileShadingAnisotropicApron;
    VkBool32 tileShadingAtomicOps;
    VkBool32 tileShadingImageProcessing;
} VkPhysicalDeviceTileShadingFeaturesQCOM;

This structure describes the following features:

  • tileShading indicates that the implementation supports tile shading render pass instances.
  • tileShadingFragmentStage indicates that the implementation supports tile shading in the fragment stage.
  • tileShadingColorAttachments indicates that the implementation supports access to color attachments in a tile shader.
  • tileShadingDepthAttachments indicates that the implementation supports access to depth aspect of depth stencil attachments.
  • tileShadingStencilAttachments indicates that the implementation supports access to stencil aspect of depth stencil attachments.
  • tileShadingInputAttachments indicates that the implementation supports access to input attachments.
  • tileShadingSampledAttachments indicates that the implementation supports access to sampling of tile attachments.
  • tileShadingPerTileDraw indicates that the implementation supports the recording of vkCmdDraw* commands when per-tile execution model is enabled.
  • tileShadingPerTileDispatch indicates that the implementation supports the recording of vkCmdDispatch* commands within those regions of a command buffer where the per-tile execution model is enabled.
  • tileShadingDispatchTile indicates that the implementation supports the recording of vkCmdDispatchTileQCOM commands.
  • tileShadingApron indicates that the implementation supports VkRenderPassTileShadingCreateInfoQCOM::apronSize value other than (0,0). See Tiling Aprons for more information.
  • tileShadingAnisotropicApron indicates that the implementation supports VkRenderPassTileShadingCreateInfoQCOM::apronSize set to a value where apronSize::width differs from apronSize::height.
  • tileShadingAtomicOps indicates that the implementation supports atomic operations on tile attachment variables.
  • tileShadingImageProcessing indicates that the implementation supports image processing operations with tile attachments.

If the VkPhysicalDeviceTileShadingFeaturesQCOM 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. If the application wishes to use a VkDevice with any features described by VkPhysicalDeviceTileShadingFeaturesQCOM, it must add an instance of the structure, with the desired feature members set to VK_TRUE, to the pNext chain of VkDeviceCreateInfo when creating the VkDevice.

Valid Usage (Implicit)

VUID-VkPhysicalDeviceTileShadingFeaturesQCOM-sType-sType

sType must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_SHADING_FEATURES_QCOM