vulkan: Update from version 0.193.0 to 0.194.0
Change-Id: I6a4508a61414375112bae3ffd16b0490ce3e4294
(cherry picked from commit 83c7f0486d495e9e7ab6f901ddeed931fff9ebad)
diff --git a/vulkan/api/vulkan.api b/vulkan/api/vulkan.api
index bd3049c..418318a 100644
--- a/vulkan/api/vulkan.api
+++ b/vulkan/api/vulkan.api
@@ -27,7 +27,7 @@
// API version (major.minor.patch)
define VERSION_MAJOR 0
-define VERSION_MINOR 193
+define VERSION_MINOR 194
define VERSION_PATCH 0
// API limits
@@ -170,8 +170,8 @@
}
enum VkImageTiling {
- VK_IMAGE_TILING_LINEAR = 0x00000000,
- VK_IMAGE_TILING_OPTIMAL = 0x00000001,
+ VK_IMAGE_TILING_OPTIMAL = 0x00000000,
+ VK_IMAGE_TILING_LINEAR = 0x00000001,
}
enum VkImageViewType {
@@ -190,12 +190,13 @@
}
enum VkChannelSwizzle {
- VK_CHANNEL_SWIZZLE_ZERO = 0x00000000,
- VK_CHANNEL_SWIZZLE_ONE = 0x00000001,
- VK_CHANNEL_SWIZZLE_R = 0x00000002,
- VK_CHANNEL_SWIZZLE_G = 0x00000003,
- VK_CHANNEL_SWIZZLE_B = 0x00000004,
- VK_CHANNEL_SWIZZLE_A = 0x00000005,
+ VK_CHANNEL_SWIZZLE_IDENTITY = 0x00000000,
+ VK_CHANNEL_SWIZZLE_ZERO = 0x00000001,
+ VK_CHANNEL_SWIZZLE_ONE = 0x00000002,
+ VK_CHANNEL_SWIZZLE_R = 0x00000003,
+ VK_CHANNEL_SWIZZLE_G = 0x00000004,
+ VK_CHANNEL_SWIZZLE_B = 0x00000005,
+ VK_CHANNEL_SWIZZLE_A = 0x00000006,
}
enum VkDescriptorType {
@@ -228,8 +229,8 @@
}
enum VkPipelineBindPoint {
- VK_PIPELINE_BIND_POINT_COMPUTE = 0x00000000,
- VK_PIPELINE_BIND_POINT_GRAPHICS = 0x00000001,
+ VK_PIPELINE_BIND_POINT_GRAPHICS = 0x00000000,
+ VK_PIPELINE_BIND_POINT_COMPUTE = 0x00000001,
}
enum VkPrimitiveTopology {
@@ -268,11 +269,11 @@
}
enum VkSamplerAddressMode {
- VK_SAMPLER_ADDRESS_MODE_WRAP = 0x00000000,
- VK_SAMPLER_ADDRESS_MODE_MIRROR = 0x00000001,
- VK_SAMPLER_ADDRESS_MODE_CLAMP = 0x00000002,
- VK_SAMPLER_ADDRESS_MODE_MIRROR_ONCE = 0x00000003,
- VK_SAMPLER_ADDRESS_MODE_CLAMP_BORDER = 0x00000004,
+ VK_SAMPLER_ADDRESS_MODE_REPEAT = 0x00000000,
+ VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 0x00000001,
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 0x00000002,
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 0x00000003,
+ VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 0x00000004,
}
enum VkCompareOp {
@@ -287,16 +288,9 @@
}
enum VkFillMode {
- VK_FILL_MODE_POINTS = 0x00000000,
+ VK_FILL_MODE_SOLID = 0x00000000,
VK_FILL_MODE_WIREFRAME = 0x00000001,
- VK_FILL_MODE_SOLID = 0x00000002,
-}
-
-enum VkCullMode {
- VK_CULL_MODE_NONE = 0x00000000,
- VK_CULL_MODE_FRONT = 0x00000001,
- VK_CULL_MODE_BACK = 0x00000002,
- VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,
+ VK_FILL_MODE_POINTS = 0x00000002,
}
enum VkFrontFace {
@@ -570,57 +564,54 @@
/// Structure type enumerant
enum VkStructureType {
VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,
- VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 1,
- VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO = 2,
- VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 3,
- VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 4,
- VK_STRUCTURE_TYPE_SHADER_CREATE_INFO = 5,
- VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 6,
- VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 7,
- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 8,
- VK_STRUCTURE_TYPE_CMD_BUFFER_ALLOC_INFO = 9,
+ VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,
+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,
+ VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,
+ VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
+ VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO = 5,
+ VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
+ VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
+ VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
+ VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
- VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 11,
- VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 12,
- VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 13,
- VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 14,
- VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 15,
- VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 16,
- VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 17,
- VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 18,
- VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 19,
- VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO = 20,
- VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 21,
- VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 22,
- VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 23,
- VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 24,
- VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 25,
- VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 26,
- VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 27,
- VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO = 28,
- VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 29,
- VK_STRUCTURE_TYPE_MEMORY_BARRIER = 30,
- VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 31,
- VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 32,
- VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,
- VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 34,
- VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 35,
- VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 36,
- VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 37,
- VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 38,
- VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 39,
- VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION = 40,
- VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION = 41,
- VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY = 42,
+ VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,
+ VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,
+ VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
+ VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
+ VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
+ VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
+ VK_STRUCTURE_TYPE_SHADER_CREATE_INFO = 17,
+ VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 18,
+ VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 19,
+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 20,
+ VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 21,
+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 22,
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 23,
+ VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO = 24,
+ VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 25,
+ VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 26,
+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 27,
+ VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 28,
+ VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 29,
+ VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 30,
+ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 31,
+ VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 32,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 33,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 34,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOC_INFO = 35,
+ VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 36,
+ VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 37,
+ VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 38,
+ VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 39,
+ VK_STRUCTURE_TYPE_CMD_POOL_CREATE_INFO = 40,
+ VK_STRUCTURE_TYPE_CMD_BUFFER_ALLOC_INFO = 41,
+ VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO = 42,
VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,
- VK_STRUCTURE_TYPE_CMD_POOL_CREATE_INFO = 44,
- VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 45,
- VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 46,
- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOC_INFO = 47,
- VK_STRUCTURE_TYPE_SUBMIT_INFO = 48,
- VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO = 49,
- VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO = 50,
- VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 51,
+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,
+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,
+ VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,
+ VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO = 47,
+ VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO = 48,
//@extension("VK_EXT_KHR_swapchain")
VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR = 0xc0000801,
@@ -802,6 +793,7 @@
VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
+ VK_SHADER_STAGE_ALL_GRAPHICS = 0x0000001F,
VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
}
@@ -1040,6 +1032,7 @@
VK_STENCIL_FACE_NONE = 0x00000000, /// No faces
VK_STENCIL_FACE_FRONT_BIT = 0x00000001, /// Front face
VK_STENCIL_FACE_BACK_BIT = 0x00000002, /// Back face
+ VK_STENCIL_FRONT_AND_BACK = 0x00000003,
}
/// Instance creation flags
@@ -1153,6 +1146,15 @@
VK_DEPENDENCY_BY_REGION_BIT = 0x00000001,
}
+/// Cull mode flags
+type VkFlags VkCullModeFlags
+bitfield VkCullModeFlagBits {
+ VK_CULL_MODE_NONE = 0x00000000,
+ VK_CULL_MODE_FRONT_BIT = 0x00000001,
+ VK_CULL_MODE_BACK_BIT = 0x00000002,
+ VK_CULL_MODE_FRONT_AND_BACK = 0x00000003,
+}
+
@extension("VK_EXT_KHR_swapchain")
type VkFlags VkSurfaceTransformFlagsKHR
@extension("VK_EXT_KHR_swapchain")
@@ -1777,7 +1779,7 @@
VkBool32 depthClampEnable
VkBool32 rasterizerDiscardEnable
VkFillMode fillMode /// optional (GL45)
- VkCullMode cullMode
+ VkCullModeFlags cullMode
VkFrontFace frontFace
VkBool32 depthBiasEnable
f32 depthBiasConstantFactor
@@ -1981,8 +1983,6 @@
}
class VkAttachmentDescription {
- VkStructureType sType /// Must be VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION
- const void* pNext /// Pointer to next structure
VkAttachmentDescriptionFlags flags
VkFormat format
u32 samples
@@ -2000,8 +2000,6 @@
}
class VkSubpassDescription {
- VkStructureType sType /// Must be VK_STRUCTURE_SUBPASS_DESCRIPTION
- const void* pNext /// Pointer to next structure
VkSubpassDescriptionFlags flags
VkPipelineBindPoint pipelineBindPoint /// Must be VK_PIPELINE_BIND_POINT_GRAPHICS for now
u32 inputAttachmentCount
@@ -2009,14 +2007,12 @@
u32 colorAttachmentCount
const VkAttachmentReference* pColorAttachments
const VkAttachmentReference* pResolveAttachments
- VkAttachmentReference depthStencilAttachment
+ const VkAttachmentReference* pDepthStencilAttachment
u32 preserveAttachmentCount
const VkAttachmentReference* pPreserveAttachments
}
class VkSubpassDependency {
- VkStructureType sType /// Must be VK_STRUCTURE_SUBPASS_DEPENDENCY
- const void* pNext /// Pointer to next structure
u32 srcSubpass
u32 destSubpass
VkPipelineStageFlags srcStageMask
@@ -2202,7 +2198,8 @@
u32 maxColorAttachments /// max num of framebuffer color attachments
u32 maxSampledImageColorSamples /// max num of color samples for a non-integer sampled image
- u32 maxSampledImageDepthSamples /// max num of depth/stencil samples for a sampled image
+ u32 maxSampledImageDepthSamples /// max num of depth samples for a sampled image
+ u32 maxSampledImageStencilSamples /// max num of stencil samples for a sampled image
u32 maxSampledImageIntegerSamples /// max num of samples supported for an integer image
u32 maxStorageImageSamples /// max num of samples for a storage image
u32 maxSampleMaskWords /// max num of sample mask words
diff --git a/vulkan/include/vulkan/vulkan.h b/vulkan/include/vulkan/vulkan.h
index 8442325..af0ccdf 100644
--- a/vulkan/include/vulkan/vulkan.h
+++ b/vulkan/include/vulkan/vulkan.h
@@ -41,7 +41,7 @@
((major << 22) | (minor << 12) | patch)
// Vulkan API version supported by this file
-#define VK_API_VERSION VK_MAKE_VERSION(0, 193, 0)
+#define VK_API_VERSION VK_MAKE_VERSION(0, 194, 0)
#define VK_NULL_HANDLE 0
@@ -132,60 +132,57 @@
typedef enum {
VK_STRUCTURE_TYPE_APPLICATION_INFO = 0,
- VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 1,
- VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO = 2,
- VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 3,
- VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 4,
- VK_STRUCTURE_TYPE_SHADER_CREATE_INFO = 5,
- VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 6,
- VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 7,
- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 8,
- VK_STRUCTURE_TYPE_CMD_BUFFER_ALLOC_INFO = 9,
+ VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1,
+ VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2,
+ VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO = 3,
+ VK_STRUCTURE_TYPE_SUBMIT_INFO = 4,
+ VK_STRUCTURE_TYPE_MEMORY_ALLOC_INFO = 5,
+ VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 6,
+ VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 7,
+ VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 8,
+ VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 9,
VK_STRUCTURE_TYPE_EVENT_CREATE_INFO = 10,
- VK_STRUCTURE_TYPE_FENCE_CREATE_INFO = 11,
- VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO = 12,
- VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 13,
- VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 14,
- VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 15,
- VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 16,
- VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 17,
- VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 18,
- VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 19,
- VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO = 20,
- VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 21,
- VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 22,
- VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 23,
- VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 24,
- VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 25,
- VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 26,
- VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 27,
- VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO = 28,
- VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 29,
- VK_STRUCTURE_TYPE_MEMORY_BARRIER = 30,
- VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 31,
- VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 32,
- VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 33,
- VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 34,
- VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 35,
- VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 36,
- VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 37,
- VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE = 38,
- VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 39,
- VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION = 40,
- VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION = 41,
- VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY = 42,
+ VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO = 11,
+ VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO = 12,
+ VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO = 13,
+ VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO = 14,
+ VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO = 15,
+ VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO = 16,
+ VK_STRUCTURE_TYPE_SHADER_CREATE_INFO = 17,
+ VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO = 18,
+ VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO = 19,
+ VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO = 20,
+ VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO = 21,
+ VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO = 22,
+ VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO = 23,
+ VK_STRUCTURE_TYPE_PIPELINE_RASTER_STATE_CREATE_INFO = 24,
+ VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO = 25,
+ VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO = 26,
+ VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO = 27,
+ VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 28,
+ VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO = 29,
+ VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO = 30,
+ VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO = 31,
+ VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO = 32,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO = 33,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO = 34,
+ VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOC_INFO = 35,
+ VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET = 36,
+ VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET = 37,
+ VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO = 38,
+ VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO = 39,
+ VK_STRUCTURE_TYPE_CMD_POOL_CREATE_INFO = 40,
+ VK_STRUCTURE_TYPE_CMD_BUFFER_ALLOC_INFO = 41,
+ VK_STRUCTURE_TYPE_CMD_BUFFER_BEGIN_INFO = 42,
VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO = 43,
- VK_STRUCTURE_TYPE_CMD_POOL_CREATE_INFO = 44,
- VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 45,
- VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO = 46,
- VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOC_INFO = 47,
- VK_STRUCTURE_TYPE_SUBMIT_INFO = 48,
- VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO = 49,
- VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO = 50,
- VK_STRUCTURE_TYPE_BIND_SPARSE_INFO = 51,
+ VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER = 44,
+ VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER = 45,
+ VK_STRUCTURE_TYPE_MEMORY_BARRIER = 46,
+ VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO = 47,
+ VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO = 48,
VK_STRUCTURE_TYPE_BEGIN_RANGE = VK_STRUCTURE_TYPE_APPLICATION_INFO,
- VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO,
- VK_STRUCTURE_TYPE_NUM = (VK_STRUCTURE_TYPE_BIND_SPARSE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
+ VK_STRUCTURE_TYPE_END_RANGE = VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO,
+ VK_STRUCTURE_TYPE_NUM = (VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1),
VK_STRUCTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkStructureType;
@@ -401,11 +398,11 @@
} VkImageType;
typedef enum {
- VK_IMAGE_TILING_LINEAR = 0,
- VK_IMAGE_TILING_OPTIMAL = 1,
- VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_LINEAR,
- VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_OPTIMAL,
- VK_IMAGE_TILING_NUM = (VK_IMAGE_TILING_OPTIMAL - VK_IMAGE_TILING_LINEAR + 1),
+ VK_IMAGE_TILING_OPTIMAL = 0,
+ VK_IMAGE_TILING_LINEAR = 1,
+ VK_IMAGE_TILING_BEGIN_RANGE = VK_IMAGE_TILING_OPTIMAL,
+ VK_IMAGE_TILING_END_RANGE = VK_IMAGE_TILING_LINEAR,
+ VK_IMAGE_TILING_NUM = (VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1),
VK_IMAGE_TILING_MAX_ENUM = 0x7FFFFFFF
} VkImageTiling;
@@ -471,15 +468,16 @@
} VkImageViewType;
typedef enum {
- VK_CHANNEL_SWIZZLE_ZERO = 0,
- VK_CHANNEL_SWIZZLE_ONE = 1,
- VK_CHANNEL_SWIZZLE_R = 2,
- VK_CHANNEL_SWIZZLE_G = 3,
- VK_CHANNEL_SWIZZLE_B = 4,
- VK_CHANNEL_SWIZZLE_A = 5,
- VK_CHANNEL_SWIZZLE_BEGIN_RANGE = VK_CHANNEL_SWIZZLE_ZERO,
+ VK_CHANNEL_SWIZZLE_IDENTITY = 0,
+ VK_CHANNEL_SWIZZLE_ZERO = 1,
+ VK_CHANNEL_SWIZZLE_ONE = 2,
+ VK_CHANNEL_SWIZZLE_R = 3,
+ VK_CHANNEL_SWIZZLE_G = 4,
+ VK_CHANNEL_SWIZZLE_B = 5,
+ VK_CHANNEL_SWIZZLE_A = 6,
+ VK_CHANNEL_SWIZZLE_BEGIN_RANGE = VK_CHANNEL_SWIZZLE_IDENTITY,
VK_CHANNEL_SWIZZLE_END_RANGE = VK_CHANNEL_SWIZZLE_A,
- VK_CHANNEL_SWIZZLE_NUM = (VK_CHANNEL_SWIZZLE_A - VK_CHANNEL_SWIZZLE_ZERO + 1),
+ VK_CHANNEL_SWIZZLE_NUM = (VK_CHANNEL_SWIZZLE_A - VK_CHANNEL_SWIZZLE_IDENTITY + 1),
VK_CHANNEL_SWIZZLE_MAX_ENUM = 0x7FFFFFFF
} VkChannelSwizzle;
@@ -511,27 +509,16 @@
} VkPrimitiveTopology;
typedef enum {
- VK_FILL_MODE_POINTS = 0,
+ VK_FILL_MODE_SOLID = 0,
VK_FILL_MODE_WIREFRAME = 1,
- VK_FILL_MODE_SOLID = 2,
- VK_FILL_MODE_BEGIN_RANGE = VK_FILL_MODE_POINTS,
- VK_FILL_MODE_END_RANGE = VK_FILL_MODE_SOLID,
- VK_FILL_MODE_NUM = (VK_FILL_MODE_SOLID - VK_FILL_MODE_POINTS + 1),
+ VK_FILL_MODE_POINTS = 2,
+ VK_FILL_MODE_BEGIN_RANGE = VK_FILL_MODE_SOLID,
+ VK_FILL_MODE_END_RANGE = VK_FILL_MODE_POINTS,
+ VK_FILL_MODE_NUM = (VK_FILL_MODE_POINTS - VK_FILL_MODE_SOLID + 1),
VK_FILL_MODE_MAX_ENUM = 0x7FFFFFFF
} VkFillMode;
typedef enum {
- VK_CULL_MODE_NONE = 0,
- VK_CULL_MODE_FRONT = 1,
- VK_CULL_MODE_BACK = 2,
- VK_CULL_MODE_FRONT_AND_BACK = 3,
- VK_CULL_MODE_BEGIN_RANGE = VK_CULL_MODE_NONE,
- VK_CULL_MODE_END_RANGE = VK_CULL_MODE_FRONT_AND_BACK,
- VK_CULL_MODE_NUM = (VK_CULL_MODE_FRONT_AND_BACK - VK_CULL_MODE_NONE + 1),
- VK_CULL_MODE_MAX_ENUM = 0x7FFFFFFF
-} VkCullMode;
-
-typedef enum {
VK_FRONT_FACE_CCW = 0,
VK_FRONT_FACE_CW = 1,
VK_FRONT_FACE_BEGIN_RANGE = VK_FRONT_FACE_CCW,
@@ -667,14 +654,14 @@
} VkSamplerMipmapMode;
typedef enum {
- VK_SAMPLER_ADDRESS_MODE_WRAP = 0,
- VK_SAMPLER_ADDRESS_MODE_MIRROR = 1,
- VK_SAMPLER_ADDRESS_MODE_CLAMP = 2,
- VK_SAMPLER_ADDRESS_MODE_MIRROR_ONCE = 3,
- VK_SAMPLER_ADDRESS_MODE_CLAMP_BORDER = 4,
- VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_WRAP,
- VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_CLAMP_BORDER,
- VK_SAMPLER_ADDRESS_MODE_NUM = (VK_SAMPLER_ADDRESS_MODE_CLAMP_BORDER - VK_SAMPLER_ADDRESS_MODE_WRAP + 1),
+ VK_SAMPLER_ADDRESS_MODE_REPEAT = 0,
+ VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1,
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2,
+ VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3,
+ VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE = 4,
+ VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE = VK_SAMPLER_ADDRESS_MODE_REPEAT,
+ VK_SAMPLER_ADDRESS_MODE_END_RANGE = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE,
+ VK_SAMPLER_ADDRESS_MODE_NUM = (VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1),
VK_SAMPLER_ADDRESS_MODE_MAX_ENUM = 0x7FFFFFFF
} VkSamplerAddressMode;
@@ -729,11 +716,11 @@
} VkAttachmentStoreOp;
typedef enum {
- VK_PIPELINE_BIND_POINT_COMPUTE = 0,
- VK_PIPELINE_BIND_POINT_GRAPHICS = 1,
- VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,
- VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,
- VK_PIPELINE_BIND_POINT_NUM = (VK_PIPELINE_BIND_POINT_GRAPHICS - VK_PIPELINE_BIND_POINT_COMPUTE + 1),
+ VK_PIPELINE_BIND_POINT_GRAPHICS = 0,
+ VK_PIPELINE_BIND_POINT_COMPUTE = 1,
+ VK_PIPELINE_BIND_POINT_BEGIN_RANGE = VK_PIPELINE_BIND_POINT_GRAPHICS,
+ VK_PIPELINE_BIND_POINT_END_RANGE = VK_PIPELINE_BIND_POINT_COMPUTE,
+ VK_PIPELINE_BIND_POINT_NUM = (VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1),
VK_PIPELINE_BIND_POINT_MAX_ENUM = 0x7FFFFFFF
} VkPipelineBindPoint;
@@ -922,6 +909,7 @@
VK_SHADER_STAGE_GEOMETRY_BIT = 0x00000008,
VK_SHADER_STAGE_FRAGMENT_BIT = 0x00000010,
VK_SHADER_STAGE_COMPUTE_BIT = 0x00000020,
+ VK_SHADER_STAGE_ALL_GRAPHICS = 0x1F,
VK_SHADER_STAGE_ALL = 0x7FFFFFFF,
} VkShaderStageFlagBits;
typedef VkFlags VkPipelineCacheCreateFlags;
@@ -938,6 +926,14 @@
typedef VkFlags VkPipelineTesselationStateCreateFlags;
typedef VkFlags VkPipelineViewportStateCreateFlags;
typedef VkFlags VkPipelineRasterStateCreateFlags;
+
+typedef enum {
+ VK_CULL_MODE_NONE = 0,
+ VK_CULL_MODE_FRONT_BIT = 0x00000001,
+ VK_CULL_MODE_BACK_BIT = 0x00000002,
+ VK_CULL_MODE_FRONT_AND_BACK = 0x3,
+} VkCullModeFlagBits;
+typedef VkFlags VkCullModeFlags;
typedef VkFlags VkPipelineMultisampleStateCreateFlags;
typedef VkFlags VkPipelineDepthStencilStateCreateFlags;
typedef VkFlags VkPipelineColorBlendStateCreateFlags;
@@ -1044,6 +1040,7 @@
VK_STENCIL_FACE_NONE = 0,
VK_STENCIL_FACE_FRONT_BIT = 0x00000001,
VK_STENCIL_FACE_BACK_BIT = 0x00000002,
+ VK_STENCIL_FRONT_AND_BACK = 0x3,
} VkStencilFaceFlagBits;
typedef VkFlags VkStencilFaceFlags;
@@ -1270,6 +1267,7 @@
uint32_t maxColorAttachments;
uint32_t maxSampledImageColorSamples;
uint32_t maxSampledImageDepthSamples;
+ uint32_t maxSampledImageStencilSamples;
uint32_t maxSampledImageIntegerSamples;
uint32_t maxStorageImageSamples;
uint32_t maxSampleMaskWords;
@@ -1698,7 +1696,7 @@
VkBool32 depthClampEnable;
VkBool32 rasterizerDiscardEnable;
VkFillMode fillMode;
- VkCullMode cullMode;
+ VkCullModeFlags cullMode;
VkFrontFace frontFace;
VkBool32 depthBiasEnable;
float depthBiasConstantFactor;
@@ -1929,8 +1927,6 @@
} VkFramebufferCreateInfo;
typedef struct {
- VkStructureType sType;
- const void* pNext;
VkAttachmentDescriptionFlags flags;
VkFormat format;
uint32_t samples;
@@ -1948,8 +1944,6 @@
} VkAttachmentReference;
typedef struct {
- VkStructureType sType;
- const void* pNext;
VkSubpassDescriptionFlags flags;
VkPipelineBindPoint pipelineBindPoint;
uint32_t inputAttachmentCount;
@@ -1957,14 +1951,12 @@
uint32_t colorAttachmentCount;
const VkAttachmentReference* pColorAttachments;
const VkAttachmentReference* pResolveAttachments;
- VkAttachmentReference depthStencilAttachment;
+ const VkAttachmentReference* pDepthStencilAttachment;
uint32_t preserveAttachmentCount;
const VkAttachmentReference* pPreserveAttachments;
} VkSubpassDescription;
typedef struct {
- VkStructureType sType;
- const void* pNext;
uint32_t srcSubpass;
uint32_t destSubpass;
VkPipelineStageFlags srcStageMask;