Update for Vulkan-Docs 1.2.145
This commit is contained in:
parent
f315245756
commit
8188e3fbbc
File diff suppressed because it is too large
Load Diff
@ -43,7 +43,7 @@ extern "C" {
|
||||
#define VK_API_VERSION_1_0 VK_MAKE_VERSION(1, 0, 0)// Patch version should always be set to 0
|
||||
|
||||
// Version of this file
|
||||
#define VK_HEADER_VERSION 144
|
||||
#define VK_HEADER_VERSION 145
|
||||
|
||||
// Complete version of this file
|
||||
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_VERSION(1, 2, VK_HEADER_VERSION)
|
||||
@ -554,6 +554,7 @@ typedef enum VkStructureType {
|
||||
VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT = 1000259001,
|
||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT = 1000259002,
|
||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT = 1000265000,
|
||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT = 1000267000,
|
||||
VK_STRUCTURE_TYPE_DEFERRED_OPERATION_INFO_KHR = 1000268000,
|
||||
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR = 1000269000,
|
||||
VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR = 1000269001,
|
||||
@ -1259,6 +1260,18 @@ typedef enum VkDynamicState {
|
||||
VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006,
|
||||
VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001,
|
||||
VK_DYNAMIC_STATE_LINE_STIPPLE_EXT = 1000259000,
|
||||
VK_DYNAMIC_STATE_CULL_MODE_EXT = 1000267000,
|
||||
VK_DYNAMIC_STATE_FRONT_FACE_EXT = 1000267001,
|
||||
VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT = 1000267002,
|
||||
VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT = 1000267003,
|
||||
VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT = 1000267004,
|
||||
VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT = 1000267005,
|
||||
VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT = 1000267006,
|
||||
VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT = 1000267007,
|
||||
VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT = 1000267008,
|
||||
VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT = 1000267009,
|
||||
VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT = 1000267010,
|
||||
VK_DYNAMIC_STATE_STENCIL_OP_EXT = 1000267011,
|
||||
VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
|
||||
} VkDynamicState;
|
||||
|
||||
@ -10416,6 +10429,90 @@ typedef struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT {
|
||||
|
||||
|
||||
|
||||
#define VK_EXT_extended_dynamic_state 1
|
||||
#define VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION 1
|
||||
#define VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME "VK_EXT_extended_dynamic_state"
|
||||
typedef struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT {
|
||||
VkStructureType sType;
|
||||
void* pNext;
|
||||
VkBool32 extendedDynamicState;
|
||||
} VkPhysicalDeviceExtendedDynamicStateFeaturesEXT;
|
||||
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetCullModeEXT)(VkCommandBuffer commandBuffer, VkCullModeFlags cullMode);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetFrontFaceEXT)(VkCommandBuffer commandBuffer, VkFrontFace frontFace);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetPrimitiveTopologyEXT)(VkCommandBuffer commandBuffer, VkPrimitiveTopology primitiveTopology);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWithCountEXT)(VkCommandBuffer commandBuffer, uint32_t viewportCount, const VkViewport* pViewports);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetScissorWithCountEXT)(VkCommandBuffer commandBuffer, uint32_t scissorCount, const VkRect2D* pScissors);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdBindVertexBuffers2EXT)(VkCommandBuffer commandBuffer, uint32_t firstBinding, uint32_t bindingCount, const VkBuffer* pBuffers, const VkDeviceSize* pOffsets, const VkDeviceSize* pSizes, const VkDeviceSize* pStrides);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthTestEnable);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthWriteEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthWriteEnable);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthCompareOpEXT)(VkCommandBuffer commandBuffer, VkCompareOp depthCompareOp);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetDepthBoundsTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthBoundsTestEnable);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilTestEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 stencilTestEnable);
|
||||
typedef void (VKAPI_PTR *PFN_vkCmdSetStencilOpEXT)(VkCommandBuffer commandBuffer, VkStencilFaceFlags faceMask, VkStencilOp failOp, VkStencilOp passOp, VkStencilOp depthFailOp, VkCompareOp compareOp);
|
||||
|
||||
#ifndef VK_NO_PROTOTYPES
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetCullModeEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkCullModeFlags cullMode);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetFrontFaceEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkFrontFace frontFace);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetPrimitiveTopologyEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkPrimitiveTopology primitiveTopology);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWithCountEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
uint32_t viewportCount,
|
||||
const VkViewport* pViewports);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetScissorWithCountEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
uint32_t scissorCount,
|
||||
const VkRect2D* pScissors);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdBindVertexBuffers2EXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
uint32_t firstBinding,
|
||||
uint32_t bindingCount,
|
||||
const VkBuffer* pBuffers,
|
||||
const VkDeviceSize* pOffsets,
|
||||
const VkDeviceSize* pSizes,
|
||||
const VkDeviceSize* pStrides);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthTestEnableEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBool32 depthTestEnable);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthWriteEnableEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBool32 depthWriteEnable);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthCompareOpEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkCompareOp depthCompareOp);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthBoundsTestEnableEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBool32 depthBoundsTestEnable);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilTestEnableEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkBool32 stencilTestEnable);
|
||||
|
||||
VKAPI_ATTR void VKAPI_CALL vkCmdSetStencilOpEXT(
|
||||
VkCommandBuffer commandBuffer,
|
||||
VkStencilFaceFlags faceMask,
|
||||
VkStencilOp failOp,
|
||||
VkStencilOp passOp,
|
||||
VkStencilOp depthFailOp,
|
||||
VkCompareOp compareOp);
|
||||
#endif
|
||||
|
||||
|
||||
#define VK_EXT_shader_demote_to_helper_invocation 1
|
||||
#define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION 1
|
||||
#define VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME "VK_EXT_shader_demote_to_helper_invocation"
|
||||
|
@ -358,7 +358,7 @@ def makeGenOpts(args):
|
||||
versions = featuresPat,
|
||||
emitversions = featuresPat,
|
||||
defaultExtensions = defaultExtensions,
|
||||
addExtensions = None,
|
||||
addExtensions = addExtensionsPat,
|
||||
removeExtensions = removeExtensionsPat,
|
||||
emitExtensions = emitExtensionsPat,
|
||||
prefixText = prefixStrings + vkPrefixStrings,
|
||||
|
@ -464,7 +464,6 @@ class Registry:
|
||||
# name - if it exists.
|
||||
for (name, alias, cmd) in cmdAlias:
|
||||
if alias in self.cmddict:
|
||||
# @ pdb.set_trace()
|
||||
aliasInfo = self.cmddict[alias]
|
||||
cmdElem = copy.deepcopy(aliasInfo.elem)
|
||||
cmdElem.find('proto/name').text = name
|
||||
@ -488,24 +487,13 @@ class Registry:
|
||||
self.addElementInfo(feature, featureInfo, 'feature', self.apidict)
|
||||
|
||||
# Add additional enums defined only in <feature> tags
|
||||
# to the corresponding core type.
|
||||
# to the corresponding enumerated type.
|
||||
# When seen here, the <enum> element, processed to contain the
|
||||
# numeric enum value, is added to the corresponding <enums>
|
||||
# element, as well as adding to the enum dictionary. It is
|
||||
# *removed* from the <require> element it is introduced in.
|
||||
# Not doing this will cause spurious genEnum()
|
||||
# calls to be made in output generation, and it's easier
|
||||
# to handle here than in genEnum().
|
||||
#
|
||||
# In lxml.etree, an Element can have only one parent, so the
|
||||
# append() operation also removes the element. But in Python's
|
||||
# ElementTree package, an Element can have multiple parents. So
|
||||
# it must be explicitly removed from the <require> tag, leading
|
||||
# to the nested loop traversal of <require>/<enum> elements
|
||||
# below.
|
||||
#
|
||||
# This code also adds a 'version' attribute containing the
|
||||
# api version.
|
||||
# element, as well as adding to the enum dictionary. It is no
|
||||
# longer removed from the <require> element it is introduced in.
|
||||
# Instead, generateRequiredInterface ignores <enum> elements
|
||||
# that extend enumerated types.
|
||||
#
|
||||
# For <enum> tags which are actually just constants, if there's
|
||||
# no 'extends' tag but there is a 'value' or 'bitpos' tag, just
|
||||
@ -526,17 +514,7 @@ class Registry:
|
||||
# self.gen.logMsg('diag', 'Matching group',
|
||||
# groupName, 'found, adding element...')
|
||||
gi = self.groupdict[groupName]
|
||||
gi.elem.append(enum)
|
||||
|
||||
if self.genOpts.reparentEnums:
|
||||
# Remove element from parent <require> tag
|
||||
# This is already done by lxml.etree, so
|
||||
# allow for it to fail.
|
||||
try:
|
||||
elem.remove(enum)
|
||||
except ValueError:
|
||||
# Must be lxml.etree
|
||||
pass
|
||||
gi.elem.append(copy.deepcopy(enum))
|
||||
else:
|
||||
self.gen.logMsg('warn', 'NO matching group',
|
||||
groupName, 'for enum', enum.get('name'), 'found.')
|
||||
@ -583,17 +561,7 @@ class Registry:
|
||||
# self.gen.logMsg('diag', 'Matching group',
|
||||
# groupName, 'found, adding element...')
|
||||
gi = self.groupdict[groupName]
|
||||
gi.elem.append(enum)
|
||||
|
||||
if self.genOpts.reparentEnums:
|
||||
# Remove element from parent <require> tag
|
||||
# This is already done by lxml.etree, so
|
||||
# allow for it to fail.
|
||||
try:
|
||||
elem.remove(enum)
|
||||
except ValueError:
|
||||
# Must be lxml.etree
|
||||
pass
|
||||
gi.elem.append(copy.deepcopy(enum))
|
||||
else:
|
||||
self.gen.logMsg('warn', 'NO matching group',
|
||||
groupName, 'for enum', enum.get('name'), 'found.')
|
||||
@ -668,7 +636,7 @@ class Registry:
|
||||
if typeinfo is not None:
|
||||
if required:
|
||||
# Tag type dependencies in 'alias' and 'required' attributes as
|
||||
# required. This DOES NOT un-tag dependencies in a <remove>
|
||||
# required. This does not un-tag dependencies in a <remove>
|
||||
# tag. See comments in markRequired() below for the reason.
|
||||
for attrib_name in ['requires', 'alias']:
|
||||
depname = typeinfo.elem.get(attrib_name)
|
||||
@ -716,9 +684,37 @@ class Registry:
|
||||
|
||||
- enumname - name of enum
|
||||
- required - boolean (to tag features as required or not)"""
|
||||
|
||||
self.gen.logMsg('diag', 'tagging enum:', enumname, '-> required =', required)
|
||||
enum = self.lookupElementInfo(enumname, self.enumdict)
|
||||
if enum is not None:
|
||||
# If the enum is part of a group, and is being removed, then
|
||||
# look it up in that <group> tag and remove it there, so that it
|
||||
# isn't visible to generators (which traverse the <group> tag
|
||||
# elements themselves).
|
||||
# This isn't the most robust way of doing this, since a removed
|
||||
# enum that's later required again will no longer have a group
|
||||
# element, but it makes the change non-intrusive on generator
|
||||
# code.
|
||||
if required is False:
|
||||
groupName = enum.elem.get('extends')
|
||||
if groupName is not None:
|
||||
# Look up the Info with matching groupName
|
||||
if groupName in self.groupdict:
|
||||
gi = self.groupdict[groupName]
|
||||
gienum = gi.elem.find("enum[@name='" + enumname + "']")
|
||||
if gienum is not None:
|
||||
# Remove copy of this enum from the group
|
||||
gi.elem.remove(gienum)
|
||||
else:
|
||||
self.gen.logMsg('warn', 'Cannot remove enum',
|
||||
enumname, 'not found in group',
|
||||
groupName)
|
||||
else:
|
||||
self.gen.logMsg('warn', 'Cannot remove enum',
|
||||
enumname, 'from nonexistent group',
|
||||
groupName)
|
||||
|
||||
enum.required = required
|
||||
# Tag enum dependencies in 'alias' attribute as required
|
||||
depname = enum.elem.get('alias')
|
||||
@ -946,9 +942,6 @@ class Registry:
|
||||
- fname - name of feature (`<type>`/`<enum>`/`<command>`)
|
||||
- ftype - type of feature, 'type' | 'enum' | 'command'
|
||||
- dictionary - of *Info objects - self.{type|enum|cmd}dict"""
|
||||
# @ # Break to debugger on matching name pattern
|
||||
# @ if self.breakPat and re.match(self.breakPat, fname):
|
||||
# @ pdb.set_trace()
|
||||
|
||||
self.gen.logMsg('diag', 'generateFeature: generating', ftype, fname)
|
||||
f = self.lookupElementInfo(fname, dictionary)
|
||||
@ -1124,7 +1117,12 @@ class Registry:
|
||||
for t in features.findall('type'):
|
||||
self.generateFeature(t.get('name'), 'type', self.typedict)
|
||||
for e in features.findall('enum'):
|
||||
self.generateFeature(e.get('name'), 'enum', self.enumdict)
|
||||
# If this is an enum extending an enumerated type, don't
|
||||
# generate it - this has already been done in reg.parseTree,
|
||||
# by copying this element into the enumerated type.
|
||||
enumextends = e.get('extends')
|
||||
if not enumextends:
|
||||
self.generateFeature(e.get('name'), 'enum', self.enumdict)
|
||||
for c in features.findall('command'):
|
||||
self.generateFeature(c.get('name'), 'command', self.cmddict)
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
169
registry/vk.xml
169
registry/vk.xml
@ -131,7 +131,7 @@ server.
|
||||
<type category="define">// Vulkan 1.2 version number
|
||||
#define <name>VK_API_VERSION_1_2</name> <type>VK_MAKE_VERSION</type>(1, 2, 0)// Patch version should always be set to 0</type>
|
||||
<type category="define">// Version of this file
|
||||
#define <name>VK_HEADER_VERSION</name> 144</type>
|
||||
#define <name>VK_HEADER_VERSION</name> 145</type>
|
||||
<type category="define" requires="VK_HEADER_VERSION">// Complete version of this file
|
||||
#define <name>VK_HEADER_VERSION_COMPLETE</name> <type>VK_MAKE_VERSION</type>(1, 2, VK_HEADER_VERSION)</type>
|
||||
|
||||
@ -4770,6 +4770,11 @@ typedef void <name>CAMetalLayer</name>;
|
||||
<member optional="true"><type>uint32_t</type> <name>libraryCount</name></member>
|
||||
<member len="libraryCount">const <type>VkPipeline</type>* <name>pLibraries</name></member>
|
||||
</type>
|
||||
<type category="struct" name="VkPhysicalDeviceExtendedDynamicStateFeaturesEXT" structextends="VkPhysicalDeviceFeatures2,VkDeviceCreateInfo">
|
||||
<member values="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"><type>VkStructureType</type> <name>sType</name></member>
|
||||
<member noautovalidity="true"><type>void</type>* <name>pNext</name></member>
|
||||
<member><type>VkBool32</type> <name>extendedDynamicState</name></member>
|
||||
</type>
|
||||
<type category="struct" name="VkRenderPassTransformBeginInfoQCOM" structextends="VkRenderPassBeginInfo">
|
||||
<member values="VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"><type>VkStructureType</type> <name>sType</name></member>
|
||||
<member><type>void</type>* <name>pNext</name><comment>Pointer to next structure</comment></member>
|
||||
@ -8701,6 +8706,77 @@ typedef void <name>CAMetalLayer</name>;
|
||||
<param><type>VkDevice</type> <name>device</name></param>
|
||||
<param><type>VkDeferredOperationKHR</type> <name>operation</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetCullModeEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param optional="true"><type>VkCullModeFlags</type> <name>cullMode</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetFrontFaceEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkFrontFace</type> <name>frontFace</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetPrimitiveTopologyEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkPrimitiveTopology</type> <name>primitiveTopology</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetViewportWithCountEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>viewportCount</name></param>
|
||||
<param len="viewportCount">const <type>VkViewport</type>* <name>pViewports</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetScissorWithCountEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>scissorCount</name></param>
|
||||
<param len="scissorCount">const <type>VkRect2D</type>* <name>pScissors</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdBindVertexBuffers2EXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>uint32_t</type> <name>firstBinding</name></param>
|
||||
<param><type>uint32_t</type> <name>bindingCount</name></param>
|
||||
<param len="bindingCount">const <type>VkBuffer</type>* <name>pBuffers</name></param>
|
||||
<param len="bindingCount">const <type>VkDeviceSize</type>* <name>pOffsets</name></param>
|
||||
<param optional="true" len="bindingCount">const <type>VkDeviceSize</type>* <name>pSizes</name></param>
|
||||
<param optional="true" len="bindingCount">const <type>VkDeviceSize</type>* <name>pStrides</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetDepthTestEnableEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkBool32</type> <name>depthTestEnable</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetDepthWriteEnableEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkBool32</type> <name>depthWriteEnable</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetDepthCompareOpEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkCompareOp</type> <name>depthCompareOp</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetDepthBoundsTestEnableEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkBool32</type> <name>depthBoundsTestEnable</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetStencilTestEnableEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkBool32</type> <name>stencilTestEnable</name></param>
|
||||
</command>
|
||||
<command queues="graphics" renderpass="both" cmdbufferlevel="primary,secondary">
|
||||
<proto><type>void</type> <name>vkCmdSetStencilOpEXT</name></proto>
|
||||
<param externsync="true"><type>VkCommandBuffer</type> <name>commandBuffer</name></param>
|
||||
<param><type>VkStencilFaceFlags</type> <name>faceMask</name></param>
|
||||
<param><type>VkStencilOp</type> <name>failOp</name></param>
|
||||
<param><type>VkStencilOp</type> <name>passOp</name></param>
|
||||
<param><type>VkStencilOp</type> <name>depthFailOp</name></param>
|
||||
<param><type>VkCompareOp</type> <name>compareOp</name></param>
|
||||
</command>
|
||||
<command successcodes="VK_SUCCESS" errorcodes="VK_ERROR_OUT_OF_HOST_MEMORY">
|
||||
<proto><type>VkResult</type> <name>vkCreatePrivateDataSlotEXT</name></proto>
|
||||
<param><type>VkDevice</type> <name>device</name></param>
|
||||
@ -13060,12 +13136,38 @@ typedef void <name>CAMetalLayer</name>;
|
||||
<enum value=""VK_EXT_extension_267"" name="VK_EXT_extension_267"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_KHR_extension_268" number="268" type="device" author="KHR" contact="Piers Daniell @pdaniell-nv" supported="disabled">
|
||||
<extension name="VK_EXT_extended_dynamic_state" number="268" type="device" requires="VK_KHR_get_physical_device_properties2" author="EXT" contact="Piers Daniell @pdaniell-nv" supported="vulkan">
|
||||
<require>
|
||||
<enum value="0" name="VK_EXT_EXTENSION_268_SPEC_VERSION"/>
|
||||
<enum value=""VK_KHR_extension_268"" name="VK_EXT_extension_268"/>
|
||||
</require>
|
||||
</extension>
|
||||
<enum value="1" name="VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION"/>
|
||||
<enum value=""VK_EXT_extended_dynamic_state"" name="VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME"/>
|
||||
<enum offset="0" extends="VkStructureType" name="VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"/>
|
||||
<enum offset="0" extends="VkDynamicState" name="VK_DYNAMIC_STATE_CULL_MODE_EXT"/>
|
||||
<enum offset="1" extends="VkDynamicState" name="VK_DYNAMIC_STATE_FRONT_FACE_EXT"/>
|
||||
<enum offset="2" extends="VkDynamicState" name="VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT"/>
|
||||
<enum offset="3" extends="VkDynamicState" name="VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT"/>
|
||||
<enum offset="4" extends="VkDynamicState" name="VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT"/>
|
||||
<enum offset="5" extends="VkDynamicState" name="VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT"/>
|
||||
<enum offset="6" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT"/>
|
||||
<enum offset="7" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT"/>
|
||||
<enum offset="8" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT"/>
|
||||
<enum offset="9" extends="VkDynamicState" name="VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT"/>
|
||||
<enum offset="10" extends="VkDynamicState" name="VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT"/>
|
||||
<enum offset="11" extends="VkDynamicState" name="VK_DYNAMIC_STATE_STENCIL_OP_EXT"/>
|
||||
<type name="VkPhysicalDeviceExtendedDynamicStateFeaturesEXT"/>
|
||||
<command name="vkCmdSetCullModeEXT"/>
|
||||
<command name="vkCmdSetFrontFaceEXT"/>
|
||||
<command name="vkCmdSetPrimitiveTopologyEXT"/>
|
||||
<command name="vkCmdSetViewportWithCountEXT"/>
|
||||
<command name="vkCmdSetScissorWithCountEXT"/>
|
||||
<command name="vkCmdBindVertexBuffers2EXT"/>
|
||||
<command name="vkCmdSetDepthTestEnableEXT"/>
|
||||
<command name="vkCmdSetDepthWriteEnableEXT"/>
|
||||
<command name="vkCmdSetDepthCompareOpEXT"/>
|
||||
<command name="vkCmdSetDepthBoundsTestEnableEXT"/>
|
||||
<command name="vkCmdSetStencilTestEnableEXT"/>
|
||||
<command name="vkCmdSetStencilOpEXT"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_KHR_deferred_host_operations" number="269" type="device" author="KHR" contact="Josh Barczak @jbarczak" platform="provisional" supported="vulkan" provisional="true">
|
||||
<require>
|
||||
<enum value="3" name="VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION"/>
|
||||
@ -13282,8 +13384,43 @@ typedef void <name>CAMetalLayer</name>;
|
||||
</extension>
|
||||
<extension name="VK_EXT_extension_289" number="289" author="EXT" contact="Jan-Harald Fredriksen @janharaldfredriksen-arm" supported="disabled">
|
||||
<require>
|
||||
<comment>
|
||||
These enums are present only to inform downstream
|
||||
consumers like KTX2. There is no actual Vulkan extension
|
||||
corresponding to the enums.
|
||||
</comment>
|
||||
<enum value="0" name="VK_EXT_EXTENSION_289_SPEC_VERSION"/>
|
||||
<enum value=""VK_EXT_extension_289"" name="VK_EXT_EXTENSION_289_EXTENSION_NAME"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="0" name="VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="1" name="VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="2" name="VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="3" name="VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="4" name="VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="5" name="VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="6" name="VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="7" name="VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="8" name="VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="9" name="VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="10" name="VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="11" name="VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="12" name="VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="13" name="VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="14" name="VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="15" name="VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="16" name="VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="17" name="VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="18" name="VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="19" name="VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="20" name="VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="21" name="VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="22" name="VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="23" name="VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="24" name="VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="25" name="VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="26" name="VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="27" name="VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="28" name="VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT"/>
|
||||
<enum extends="VkFormat" extnumber="289" offset="29" name="VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_GOOGLE_user_type" number="290" type="device" author="GOOGLE" contact="Kaye Mason @chaleur" supported="vulkan">
|
||||
@ -13665,7 +13802,25 @@ typedef void <name>CAMetalLayer</name>;
|
||||
<extension name="VK_NV_extension_346" number="346" author="NV" contact="Jeff Juliano @jjuliano" supported="disabled">
|
||||
<require>
|
||||
<enum value="0" name="VK_NV_EXTENSION_346_SPEC_VERSION"/>
|
||||
<enum value=""VK_NV_extension_346"" name="VK_NV_EXTENSION_346_EXTENSION_NAME"/>
|
||||
<enum value=""VK_NV_extension_346"" name="VK_NV_EXTENSION_346_EXTENSION_NAME"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_EXT_extension_347" number="347" author="EXT" contact="Nicolas Caramelli @caramelli" supported="disabled">
|
||||
<require>
|
||||
<enum value="0" name="VK_EXT_EXTENSION_347_SPEC_VERSION"/>
|
||||
<enum value=""VK_EXT_extension_347"" name="VK_EXT_EXTENSION_347_EXTENSION_NAME"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_KHR_extension_348" number="348" author="KHR" contact="Daniel Koch @dgkoch" supported="disabled">
|
||||
<require>
|
||||
<enum value="0" name="VK_KHR_EXTENSION_348_SPEC_VERSION"/>
|
||||
<enum value=""VK_KHR_extension_348"" name="VK_KHR_EXTENSION_348_EXTENSION_NAME"/>
|
||||
</require>
|
||||
</extension>
|
||||
<extension name="VK_KHR_extension_349" number="349" author="KHR" contact="Daniel Koch @dgkoch" supported="disabled">
|
||||
<require>
|
||||
<enum value="0" name="VK_KHR_EXTENSION_349_SPEC_VERSION"/>
|
||||
<enum value=""VK_KHR_extension_349"" name="VK_KHR_EXTENSION_349_EXTENSION_NAME"/>
|
||||
</require>
|
||||
</extension>
|
||||
</extensions>
|
||||
|
Loading…
x
Reference in New Issue
Block a user