| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Graphics.Vulkan.Extensions.VK_EXT_sample_locations
- pattern VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: VkDynamicState
- pattern VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: VkStructureType
- pattern VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: VkStructureType
- pattern VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: VkStructureType
- pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: VkStructureType
- pattern VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: VkStructureType
- pattern VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: VkImageCreateFlagBits
- pattern VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION :: Integral a => a
- pattern VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME :: (Eq a, IsString a) => a
- vkCmdSetSampleLocationsEXT :: ("commandBuffer" ::: VkCommandBuffer) -> ("pSampleLocationsInfo" ::: Ptr VkSampleLocationsInfoEXT) -> IO ()
- vkGetPhysicalDeviceMultisamplePropertiesEXT :: ("physicalDevice" ::: VkPhysicalDevice) -> ("samples" ::: VkSampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr VkMultisamplePropertiesEXT) -> IO ()
- data VkSampleLocationEXT = VkSampleLocationEXT {}
- data VkSampleLocationsInfoEXT = VkSampleLocationsInfoEXT {}
- data VkAttachmentSampleLocationsEXT = VkAttachmentSampleLocationsEXT {}
- data VkSubpassSampleLocationsEXT = VkSubpassSampleLocationsEXT {}
- data VkRenderPassSampleLocationsBeginInfoEXT = VkRenderPassSampleLocationsBeginInfoEXT {}
- data VkPipelineSampleLocationsStateCreateInfoEXT = VkPipelineSampleLocationsStateCreateInfoEXT {}
- data VkPhysicalDeviceSampleLocationsPropertiesEXT = VkPhysicalDeviceSampleLocationsPropertiesEXT {}
- data VkMultisamplePropertiesEXT = VkMultisamplePropertiesEXT {}
Documentation
pattern VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: VkDynamicState Source #
VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT specifies that the
sampleLocationsInfo state in
VkPipelineSampleLocationsStateCreateInfoEXT will be ignored and must
be set dynamically with vkCmdSetSampleLocationsEXT before any draw or
clear commands. Enabling custom sample locations is still indicated by
the sampleLocationsEnable member of
VkPipelineSampleLocationsStateCreateInfoEXT.
pattern VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: VkStructureType Source #
pattern VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: VkStructureType Source #
pattern VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION :: Integral a => a Source #
pattern VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME :: (Eq a, IsString a) => a Source #
vkCmdSetSampleLocationsEXT :: ("commandBuffer" ::: VkCommandBuffer) -> ("pSampleLocationsInfo" ::: Ptr VkSampleLocationsInfoEXT) -> IO () Source #
vkCmdSetSampleLocationsEXT - Set the dynamic sample locations state
Parameters
commandBufferis the command buffer into which the command will be recorded.
pSampleLocationsInfois the sample locations state to set.
Description
Valid Usage
- The bound graphics pipeline must have been created with the
VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXTdynamic state enabled
- The
sampleLocationsPerPixelmember ofpSampleLocationsInfomust equal therasterizationSamplesmember of theVkPipelineMultisampleStateCreateInfostructure the bound graphics pipeline has been created with - If
VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocationsisVK_FALSEthen the current render pass must have been begun by specifying aVkRenderPassSampleLocationsBeginInfoEXTstructure whosepPostSubpassSampleLocationsmember contains an element with asubpassIndexmatching the current subpass index and thesampleLocationsInfomember of that element must match the sample locations state pointed to bypSampleLocationsInfo
Valid Usage (Implicit)
commandBuffermust be a validVkCommandBufferhandle
pSampleLocationsInfomust be a valid pointer to a validVkSampleLocationsInfoEXTstructurecommandBuffermust be in the recording state- The
VkCommandPoolthatcommandBufferwas allocated from must support graphics operations
Host Synchronization
- Host access to
commandBuffermust be externally synchronized
- Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized
Command Properties
+-----------------+-----------------+-----------------+-----------------+ | <#VkCommandBuff | <#vkCmdBeginRen | <#VkQueueFlagBi | <#synchronizati | | erLevel Command | derPass Render | ts Supported Qu | on-pipeline-sta | | Buffer Levels> | Pass Scope> | eue Types> | ges-types Pipel | | | | | ine Type> | +=================+=================+=================+=================+ | Primary | Both | Graphics | | | Secondary | | | | +-----------------+-----------------+-----------------+-----------------+
See Also
vkGetPhysicalDeviceMultisamplePropertiesEXT :: ("physicalDevice" ::: VkPhysicalDevice) -> ("samples" ::: VkSampleCountFlagBits) -> ("pMultisampleProperties" ::: Ptr VkMultisamplePropertiesEXT) -> IO () Source #
vkGetPhysicalDeviceMultisamplePropertiesEXT - Report sample count specific multisampling capabilities of a physical device
Parameters
physicalDeviceis the physical device from which to query the additional multisampling capabilities.
samplesis the sample count to query the capabilities for.pMultisamplePropertiesis a pointer to a structure of typeVkMultisamplePropertiesEXT, in which information about the additional multisampling capabilities specific to the sample count is returned.
Description
Valid Usage (Implicit)
physicalDevicemust be a validVkPhysicalDevicehandle
samplesmust be a validVkSampleCountFlagBitsvaluepMultisamplePropertiesmust be a valid pointer to aVkMultisamplePropertiesEXTstructure
See Also
VkMultisamplePropertiesEXT,
VkPhysicalDevice,
VkSampleCountFlagBits
data VkSampleLocationEXT Source #
VkSampleLocationEXT - Structure specifying the coordinates of a sample location
Description
The domain space of the sample location coordinates has an upper-left origin within the pixel in framebuffer space.
The values specified in a VkSampleLocationEXT structure are always
clamped to the implementation-dependent sample location coordinate range
[sampleLocationCoordinateRange[0],sampleLocationCoordinateRange[1]]
that can be queried by chaining the
VkPhysicalDeviceSampleLocationsPropertiesEXT structure to the pNext
chain of
VkPhysicalDeviceProperties2.
See Also
Constructors
| VkSampleLocationEXT | |
data VkSampleLocationsInfoEXT Source #
VkSampleLocationsInfoEXT - Structure specifying a set of sample locations
Description
This structure can be used either to specify the sample locations to
be used for rendering or to specify the set of sample locations an image
subresource has been last rendered with for the purposes of layout
transitions of depth/stencil images created with
VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT.
The sample locations in pSampleLocations specify
sampleLocationsPerPixel number of sample locations for each pixel in
the grid of the size specified in sampleLocationGridSize. The sample
location for sample i at the pixel grid location (x,y) is taken from
pSampleLocations[(x + y * sampleLocationGridSize.width) *
sampleLocationsPerPixel + i].
Valid Usage
sampleLocationsPerPixelmust be a bit value that is set inVkPhysicalDeviceSampleLocationsPropertiesEXT::sampleLocationSampleCounts
sampleLocationsCountmust equalsampleLocationsPerPixel×sampleLocationGridSize.width×sampleLocationGridSize.height
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT
sampleLocationsPerPixelmust be a validVkSampleCountFlagBitsvaluepSampleLocationsmust be a valid pointer to an array ofsampleLocationsCountVkSampleLocationEXTstructuressampleLocationsCountmust be greater than0
See Also
VkAttachmentSampleLocationsEXT,
VkExtent2D,
VkPipelineSampleLocationsStateCreateInfoEXT,
VkSampleCountFlagBits,
VkSampleLocationEXT, VkStructureType,
VkSubpassSampleLocationsEXT, vkCmdSetSampleLocationsEXT
Constructors
| VkSampleLocationsInfoEXT | |
Fields
| |
data VkAttachmentSampleLocationsEXT Source #
VkAttachmentSampleLocationsEXT - Structure specifying the sample locations state to use in the initial layout transition of attachments
Description
If the image referenced by the framebuffer attachment at index
attachmentIndex was not created with
VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT then the
values specified in sampleLocationsInfo are ignored.
Valid Usage
attachmentIndexmust be less than theattachmentCountspecified inVkRenderPassCreateInfothe render pass specified byVkRenderPassBeginInfo::renderPasswas created with
Valid Usage (Implicit)
sampleLocationsInfomust be a validVkSampleLocationsInfoEXTstructure
See Also
VkRenderPassSampleLocationsBeginInfoEXT, VkSampleLocationsInfoEXT
Constructors
| VkAttachmentSampleLocationsEXT | |
Fields
| |
data VkSubpassSampleLocationsEXT Source #
VkSubpassSampleLocationsEXT - Structure specifying the sample locations state to use for layout transitions of attachments performed after a given subpass
Description
If the image referenced by the depth/stencil attachment used in the
subpass identified by subpassIndex was not created with
VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT or if the
subpass does not use a depth/stencil attachment, and
VkPhysicalDeviceSampleLocationsPropertiesEXT::variableSampleLocations
is VK_TRUE then the values specified in sampleLocationsInfo are
ignored.
Valid Usage
subpassIndexmust be less than thesubpassCountspecified inVkRenderPassCreateInfothe render pass specified byVkRenderPassBeginInfo::renderPasswas created with
Valid Usage (Implicit)
sampleLocationsInfomust be a validVkSampleLocationsInfoEXTstructure
See Also
VkRenderPassSampleLocationsBeginInfoEXT, VkSampleLocationsInfoEXT
Constructors
| VkSubpassSampleLocationsEXT | |
Fields
| |
data VkRenderPassSampleLocationsBeginInfoEXT Source #
VkRenderPassSampleLocationsBeginInfoEXT - Structure specifying sample locations to use for the layout transition of custom sample locations compatible depth/stencil attachments
Description
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT
- If
attachmentInitialSampleLocationsCountis not0,pAttachmentInitialSampleLocationsmust be a valid pointer to an array ofattachmentInitialSampleLocationsCountvalidVkAttachmentSampleLocationsEXTstructures - If
postSubpassSampleLocationsCountis not0,pPostSubpassSampleLocationsmust be a valid pointer to an array ofpostSubpassSampleLocationsCountvalidVkSubpassSampleLocationsEXTstructures
See Also
VkAttachmentSampleLocationsEXT,
VkStructureType,
VkSubpassSampleLocationsEXT
Constructors
| VkRenderPassSampleLocationsBeginInfoEXT | |
Fields
| |
data VkPipelineSampleLocationsStateCreateInfoEXT Source #
VkPipelineSampleLocationsStateCreateInfoEXT - Structure specifying sample locations for a pipeline
Description
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT
sampleLocationsInfomust be a validVkSampleLocationsInfoEXTstructure
See Also
VkBool32, VkSampleLocationsInfoEXT,
VkStructureType
Constructors
| VkPipelineSampleLocationsStateCreateInfoEXT | |
Fields
| |
data VkPhysicalDeviceSampleLocationsPropertiesEXT Source #
VkPhysicalDeviceSampleLocationsPropertiesEXT - Structure describing sample location limits that can be supported by an implementation
Members
The members of the VkPhysicalDeviceSampleLocationsPropertiesEXT
structure describe the following implementation-dependent limits:
Description
sampleLocationSampleCountsis a bitmask ofVkSampleCountFlagBitsindicating the sample counts supporting custom sample locations.
maxSampleLocationGridSizeis the maximum size of the pixel grid in which sample locations can vary that is supported for all sample counts insampleLocationSampleCounts.sampleLocationCoordinateRange[2] is the range of supported sample location coordinates.sampleLocationSubPixelBitsis the number of bits of subpixel precision for sample locations.variableSampleLocationsspecifies whether the sample locations used by all pipelines that will be bound to a command buffer during a subpass must match. If set toVK_TRUE, the implementation supports variable sample locations in a subpass. If set toVK_FALSE, then the sample locations must stay constant in each subpass.
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT
If the VkPhysicalDeviceSampleLocationsPropertiesEXT structure is
included in the pNext chain of
VkPhysicalDeviceProperties2,
it is filled with the implementation-dependent limits.
See Also
VkBool32, VkExtent2D,
VkSampleCountFlags,
VkStructureType
Constructors
| VkPhysicalDeviceSampleLocationsPropertiesEXT | |
data VkMultisamplePropertiesEXT Source #
VkMultisamplePropertiesEXT - Structure returning information about sample count specific additional multisampling capabilities
Description
Valid Usage (Implicit)
sTypemust beVK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT
pNextmust beNULL
See Also
VkExtent2D,
VkStructureType,
vkGetPhysicalDeviceMultisamplePropertiesEXT
Constructors
| VkMultisamplePropertiesEXT | |
Fields
| |