vulkan-3.26.1: Bindings to the Vulkan graphics API.
Safe HaskellSafe-Inferred
LanguageHaskell2010

Vulkan.Extensions.VK_KHR_16bit_storage

Description

Name

VK_KHR_16bit_storage - device extension

VK_KHR_16bit_storage

Name String
VK_KHR_16bit_storage
Extension Type
Device extension
Registered Extension Number
84
Revision
1
Ratification Status
Ratified
Extension and Version Dependencies
VK_KHR_get_physical_device_properties2 and VK_KHR_storage_buffer_storage_class
Deprecation State
Contact

Other Extension Metadata

Last Modified Date
2017-09-05
IP Status
No known IP claims.
Interactions and External Dependencies
Contributors
  • Alexander Galazin, ARM
  • Jan-Harald Fredriksen, ARM
  • Joerg Wagner, ARM
  • Neil Henning, Codeplay
  • Jeff Bolz, Nvidia
  • Daniel Koch, Nvidia
  • David Neto, Google
  • John Kessenich, Google

Description

The VK_KHR_16bit_storage extension allows use of 16-bit types in shader input and output interfaces, and push constant blocks. This extension introduces several new optional features which map to SPIR-V capabilities and allow access to 16-bit data in Block-decorated objects in the Uniform and the StorageBuffer storage classes, and objects in the PushConstant storage class. This extension allows 16-bit variables to be declared and used as user-defined shader inputs and outputs but does not change location assignment and component assignment rules.

Promotion to Vulkan 1.1

All functionality in this extension is included in core Vulkan 1.1, with the KHR suffix omitted. However, if Vulkan 1.1 is supported and this extension is not, the storageBuffer16BitAccess capability is optional. The original type, enum and command names are still available as aliases of the core functionality.

New Structures

New Enum Constants

New SPIR-V Capabilities

Version History

  • Revision 1, 2017-03-23 (Alexander Galazin)

    • Initial draft

See Also

PhysicalDevice16BitStorageFeaturesKHR

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.

Documentation

pattern KHR_16BIT_STORAGE_SPEC_VERSION :: forall a. Integral a => a Source #

type KHR_16BIT_STORAGE_EXTENSION_NAME = "VK_KHR_16bit_storage" Source #

pattern KHR_16BIT_STORAGE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #