VK_EXT_legacy_vertex_attributes
Other Extension Metadata
Last Modified Date
2024-02-23
IP Status
No known IP claims.
Contributors
- Mike Blumenkrantz, Valve
- Piers Daniell, NVIDIA
- Spencer Fricke, LunarG
- Alyssa Rosenzweig, Valve
Description
This extension adds support for legacy features of (non-64-bit) vertex attributes as found in OpenGL:
- Vertex attributes loaded from arbitrary buffer alignments
- Vertex attributes using arbitrary strides
- Vertex attributes where the component data type of the binding does not match the component numeric type of the shader input
These features are only usable with dynamic vertex input. Unaligned loads of vertex attributes may incur performance penalties, indicated with a property.
New Structures
- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:
- Extending VkPhysicalDeviceProperties2:
New Enum Constants
VK_EXT_LEGACY_VERTEX_ATTRIBUTES_EXTENSION_NAME
VK_EXT_LEGACY_VERTEX_ATTRIBUTES_SPEC_VERSION
- Extending VkStructureType:
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT
Issues
1.) Should implementations convert float/integer values?
RESOLVED: No. When fetching an integer data type from float values or float data types from integer values, the resulting shader values are implementation-dependent.
Version History
- Revision 1, 2024-02-16 (Mike Blumenkrantz)
- Initial revision