| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Vulkan.Extensions.VK_ARM_format_pack
Description
Name
VK_ARM_format_pack - device extension
VK_ARM_format_pack
- Name String
VK_ARM_format_pack
- Extension Type
- Device extension
- Registered Extension Number
- 610
- Revision
- 1
- Ratification Status
- Not ratified
- Extension and Version Dependencies
- VK_KHR_get_physical_device_properties2 or Vulkan Version 1.1
- Contact
Other Extension Metadata
- Last Modified Date
- 2025-03-24
- Interactions and External Dependencies; Contributors
- Jan-Harald Fredriksen, Arm
- Lisa Wu, Arm
- Oivind Boge, Arm
Description
This extension adds support for additional 1-, 2- and 4-component formats with 10, 12, or 14 bits of components in 16-bit containers.
New Structures
New Enum Constants
ARM_FORMAT_PACK_SPEC_VERSIONExtending
Format:FORMAT_G14X2_B14X2R14X2_2PLANE_420_UNORM_3PACK16_ARMFORMAT_G14X2_B14X2R14X2_2PLANE_422_UNORM_3PACK16_ARMFORMAT_R10X6G10X6B10X6A10X6_UINT_4PACK16_ARMFORMAT_R10X6G10X6_UINT_2PACK16_ARMFORMAT_R10X6_UINT_PACK16_ARMFORMAT_R12X4G12X4B12X4A12X4_UINT_4PACK16_ARMFORMAT_R12X4G12X4_UINT_2PACK16_ARMFORMAT_R12X4_UINT_PACK16_ARMFORMAT_R14X2G14X2B14X2A14X2_UINT_4PACK16_ARMFORMAT_R14X2G14X2B14X2A14X2_UNORM_4PACK16_ARMFORMAT_R14X2G14X2_UINT_2PACK16_ARMFORMAT_R14X2G14X2_UNORM_2PACK16_ARMFORMAT_R14X2_UINT_PACK16_ARMFORMAT_R14X2_UNORM_PACK16_ARM
Extending
StructureType:
What do we call this extension?
RESOLVED
Many existing extension have the format in the name, but in this case we want to expose multiple formats.
We will describe this set of formats as a “pack”.
Compatibility classes
- RESOLVED
- Should these additional formats be in the same compatibility class as any other formats? For single-plane formats, we put formats with the same number of bits (but different types) in the same class. Each multi-plane or subsampled format gets its own compatibility class. This is consistent with how existing formats are handled.
Format feature requirements
- RESOLVED
- The format feature queries could be used to determine what is supported on any given implementation, but it may be useful to establish a baseline requirement in the specification. For that purpose, we require a set of format features - sufficient to enable texture operations - to be supported for the added unsigned integer single-plane formats. Other formats and format features are optional.
Version History
Revision 1, 2025-03-24
- Initial revision
See Also
No cross-references are available
Document Notes
For more information, see the Vulkan Specification.
This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.
Synopsis
- data PhysicalDeviceFormatPackFeaturesARM = PhysicalDeviceFormatPackFeaturesARM {
- formatPack :: Bool
- type ARM_FORMAT_PACK_SPEC_VERSION = 1
- pattern ARM_FORMAT_PACK_SPEC_VERSION :: Integral a => a
- type ARM_FORMAT_PACK_EXTENSION_NAME = "VK_ARM_format_pack"
- pattern ARM_FORMAT_PACK_EXTENSION_NAME :: (Eq a, IsString a) => a
Documentation
data PhysicalDeviceFormatPackFeaturesARM Source #
VkPhysicalDeviceFormatPackFeaturesARM - Structure describing whether the additional formats feature is supported by an implementation
Members
This structure describes the following feature:
Description
If the PhysicalDeviceFormatPackFeaturesARM structure is included in
the pNext chain of the
PhysicalDeviceFeatures2
structure passed to
getPhysicalDeviceFeatures2,
it is filled in to indicate whether each corresponding feature is
supported. If the application wishes to use a
Device with any features described by
PhysicalDeviceFormatPackFeaturesARM, it must add an instance of the
structure, with the desired feature members set to
TRUE, to the pNext chain of
DeviceCreateInfo when creating the
Device.
Valid Usage (Implicit)
See Also
Constructors
| PhysicalDeviceFormatPackFeaturesARM | |
Fields
| |
Instances
type ARM_FORMAT_PACK_SPEC_VERSION = 1 Source #
pattern ARM_FORMAT_PACK_SPEC_VERSION :: Integral a => a Source #
type ARM_FORMAT_PACK_EXTENSION_NAME = "VK_ARM_format_pack" Source #
pattern ARM_FORMAT_PACK_EXTENSION_NAME :: (Eq a, IsString a) => a Source #