docs: remove old obsolete documents
diff --git a/docs/XGL_Programming_Guild_and_API_Reference.pdf b/docs/XGL_Programming_Guild_and_API_Reference.pdf
deleted file mode 100644
index bc9533d..0000000
--- a/docs/XGL_Programming_Guild_and_API_Reference.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/vk_ds.dot b/docs/vk_ds.dot
deleted file mode 100644
index d587629..0000000
--- a/docs/vk_ds.dot
+++ /dev/null
@@ -1,180 +0,0 @@
-digraph g {
-graph [
-rankdir = "LR"
-];
-node [
-fontsize = "16"
-shape = "plaintext"
-];
-edge [
-];
-subgraph clusterDSCreate1
-{
-label="vkCreateDescriptorSet()"
-"_VK_DESCRIPTOR_SET_CREATE_INFO1" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR><TR><TD PORT="f3">uint32_t</TD><TD PORT="f4">slots=14</TD></TR></TABLE>>
-];
-}
-subgraph clusterDSCreate2
-{
-label="vkCreateDescriptorSet()"
-"_VK_DESCRIPTOR_SET_CREATE_INFO2" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR><TR><TD PORT="f3">uint32_t</TD><TD PORT="f4">slots=20</TD></TR></TABLE>>
-];
-}
-subgraph clusterSamplerCreate
-{
-label="vkCreateSampler - multiple calls return unique VkSampler handles"
-"_VK_SAMPLER_CREATE_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkSamplerCreateInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO</TD></TR><TR><TD PORT="f3">const void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkTexFilter</TD><TD PORT="f6">magFilter</TD></TR><TR><TD PORT="f7">VkTexFilter</TD><TD PORT="f8">minFilter</TD></TR><TR><TD PORT="f9">VkTexMipmapMode</TD><TD PORT="f10">mipMode</TD></TR><TR><TD PORT="f11">VkTexAddress</TD><TD PORT="f12">addressU</TD></TR><TR><TD PORT="f13">VkTexAddress</TD><TD PORT="f14">addressV</TD></TR><TR><TD PORT="f15">VkTexAddress</TD><TD PORT="f16">addressW</TD></TR><TR><TD PORT="f17">float</TD><TD PORT="f18">mipLodBias</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">maxAnisotropy</TD></TR><TR><TD PORT="f21">VkCompareOp</TD><TD PORT="f22">compareFunc</TD></TR><TR><TD PORT="f23">float</TD><TD PORT="f24">minLod</TD></TR><TR><TD PORT="f25">float</TD><TD PORT="f26">maxLod</TD></TR><TR><TD PORT="f27">VkBorderColor</TD><TD PORT="f28">borderColorType</TD></TR></TABLE>>
-];
-"SAMPLER_ELLIPSES" [
-label = "..."
-];
-"_VK_SAMPLER_CREATE_INFO_19" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkSamplerCreateInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO</TD></TR><TR><TD PORT="f3">const void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkTexFilter</TD><TD PORT="f6">magFilter</TD></TR><TR><TD PORT="f7">VkTexFilter</TD><TD PORT="f8">minFilter</TD></TR><TR><TD PORT="f9">VkTexMipmapMode</TD><TD PORT="f10">mipMode</TD></TR><TR><TD PORT="f11">VkTexAddress</TD><TD PORT="f12">addressU</TD></TR><TR><TD PORT="f13">VkTexAddress</TD><TD PORT="f14">addressV</TD></TR><TR><TD PORT="f15">VkTexAddress</TD><TD PORT="f16">addressW</TD></TR><TR><TD PORT="f17">float</TD><TD PORT="f18">mipLodBias</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">maxAnisotropy</TD></TR><TR><TD PORT="f21">VkCompareOp</TD><TD PORT="f22">compareFunc</TD></TR><TR><TD PORT="f23">float</TD><TD PORT="f24">minLod</TD></TR><TR><TD PORT="f25">float</TD><TD PORT="f26">maxLod</TD></TR><TR><TD PORT="f27">VkBorderColor</TD><TD PORT="f28">borderColorType</TD></TR></TABLE>>
-];
-}
-subgraph clusterSamplerAttach
-{
-label="vkAttachSamplerDescriptors\npSamplers array of VK_SAMPLERS"
-"SAMPLER_ARRAY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="pSamp">pSamplers</TD></TR><TR><TD PORT="f0">VK_SAMPLER0</TD></TR><TR><TD PORT="f1">VK_SAMPLER1</TD></TR><TR><TD PORT="f2">VK_SAMPLER2</TD></TR><TR><TD PORT="f3">VK_SAMPLER3</TD></TR><TR><TD PORT="f4">VK_SAMPLER4</TD></TR><TR><TD PORT="f5">VK_SAMPLER5</TD></TR><TR><TD PORT="f6">VK_SAMPLER6</TD></TR><TR><TD PORT="f7">VK_SAMPLER7</TD></TR><TR><TD PORT="f8">VK_SAMPLER8</TD></TR><TR><TD PORT="f9">VK_SAMPLER9</TD></TR><TR><TD PORT="f10">VK_SAMPLER10</TD></TR><TR><TD PORT="f11">VK_SAMPLER11</TD></TR><TR><TD PORT="f12">VK_SAMPLER12</TD></TR><TR><TD PORT="f13">VK_SAMPLER13</TD></TR><TR><TD PORT="f14">VK_SAMPLER14</TD></TR><TR><TD PORT="f15">VK_SAMPLER15</TD></TR><TR><TD PORT="f16">VK_SAMPLER16</TD></TR><TR><TD PORT="f17">VK_SAMPLER17</TD></TR><TR><TD PORT="f18">VK_SAMPLER18</TD></TR><TR><TD PORT="f19">VK_SAMPLER19</TD></TR></TABLE>>
-];
-}
-"DS1_MEMORY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="ds1">DS1 Memory</TD></TR><TR><TD PORT="f0">slot0</TD></TR><TR><TD PORT="f1">slot1</TD></TR><TR><TD PORT="f2">slots2</TD></TR><TR><TD PORT="f3">slots3</TD></TR><TR><TD PORT="f4">slots4</TD></TR><TR><TD PORT="f5">slots5</TD></TR><TR><TD PORT="f6">slots6</TD></TR><TR><TD PORT="f7">slots7</TD></TR><TR><TD PORT="f8">slots8</TD></TR><TR><TD PORT="f9">slots9</TD></TR><TR><TD PORT="f10">slots10</TD></TR><TR><TD PORT="f11">slots11</TD></TR><TR><TD PORT="f12">slots12</TD></TR><TR><TD PORT="f13">slot13</TD></TR></TABLE>>
-];
-"DS2_MEMORY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="ds2">DS2 Memory</TD></TR><TR><TD PORT="f0">slot0</TD></TR><TR><TD PORT="f1">slot1</TD></TR><TR><TD PORT="f2">slots2</TD></TR><TR><TD PORT="f3">slots3</TD></TR><TR><TD PORT="f4">slots4</TD></TR><TR><TD PORT="f5">slots5</TD></TR><TR><TD PORT="f6">slots6</TD></TR><TR><TD PORT="f7">slots7</TD></TR><TR><TD PORT="f8">slots8</TD></TR><TR><TD PORT="f9">slots9</TD></TR><TR><TD PORT="f10">slots10</TD></TR><TR><TD PORT="f11">slots11</TD></TR><TR><TD PORT="f12">slots12</TD></TR><TR><TD PORT="f13">slot13</TD></TR><TR><TD PORT="f14">slots14</TD></TR><TR><TD PORT="f15">slots15</TD></TR><TR><TD PORT="f16">slots16</TD></TR><TR><TD PORT="f17">slots17</TD></TR><TR><TD PORT="f18">slots18</TD></TR><TR><TD PORT="f19">slots19</TD></TR></TABLE>>
-];
-subgraph clusterMemoryView
-{
-label="vkAttachMemoryViewDescriptors - pMemViews array of VK_MEMORY_VIEW_ATTACH_INFO structs"
-"_VK_MEMORY_VIEW_ATTACH_INFO_3" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkDeviceMemory</TD><TD PORT="f6">mem</TD></TR><TR><TD PORT="f7">VkDeviceSize</TD><TD PORT="f8">offset</TD></TR><TR><TD PORT="f9">VkDeviceSize</TD><TD PORT="f10">range</TD></TR><TR><TD PORT="f11">VkDeviceSize</TD><TD PORT="f12">stride</TD></TR><TR><TD PORT="f13">VkFormat</TD><TD PORT="f14">format</TD></TR><TR><TD PORT="f15">VK_MEMORY_STATE</TD><TD PORT="f16">state</TD></TR></TABLE>>
-];
-"MEM_VIEW_ELLIPSES" [
-label = "..."
-];
-"_VK_MEMORY_VIEW_ATTACH_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkDeviceMemory</TD><TD PORT="f6">mem</TD></TR><TR><TD PORT="f7">VkDeviceSize</TD><TD PORT="f8">offset</TD></TR><TR><TD PORT="f9">VkDeviceSize</TD><TD PORT="f10">range</TD></TR><TR><TD PORT="f11">VkDeviceSize</TD><TD PORT="f12">stride</TD></TR><TR><TD PORT="f13">VkFormat</TD><TD PORT="f14">format</TD></TR><TR><TD PORT="f15">VK_MEMORY_STATE</TD><TD PORT="f16">state</TD></TR></TABLE>>
-];
-}
-subgraph clusterImageView
-{
-label="vkAttachImageViewDescriptors - pImageViews array of VkImageViewAttachInfo structs"
-"_VK_IMAGE_VIEW_ATTACH_INFO_9" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkImageViewAttachInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkImageView</TD><TD PORT="f6">view</TD></TR><TR><TD PORT="f7">VK_IMAGE_STATE</TD><TD PORT="f8">state</TD></TR></TABLE>>
-];
-"IMG_VIEW_ELLIPSES" [
-label = "..."
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkImageViewAttachInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkImageView</TD><TD PORT="f6">view</TD></TR><TR><TD PORT="f7">VK_IMAGE_STATE</TD><TD PORT="f8">state</TD></TR></TABLE>>
-];
-}
-"VS_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=2</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR></TABLE>>
-];
-"FS0_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=6</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_UNUSED</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_UNUSED</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR><TR><TD PORT="f12">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f13">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f11">2</TD></TR><TR><TD PORT="f14">uint32_t</TD><TD PORT="f15">shaderEntityIndex</TD></TR><TR><TD PORT="f17">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f18">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f16">3</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">shaderEntityIndex</TD></TR><TR><TD PORT="f22">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f23">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f21">4</TD></TR><TR><TD PORT="f24">uint32_t</TD><TD PORT="f25">shaderEntityIndex</TD></TR><TR><TD PORT="f27">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f28">VK_SLOT_SHADER_UAV</TD><TD ROWSPAN="2" PORT="f26">5</TD></TR><TR><TD PORT="f29">uint32_t</TD><TD PORT="f30">shaderEntityIndex</TD></TR></TABLE>>
-];
-"FS1_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=10</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR><TR><TD PORT="f12">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f13">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f11">2</TD></TR><TR><TD PORT="f14">uint32_t</TD><TD PORT="f15">shaderEntityIndex</TD></TR><TR><TD PORT="f17">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f18">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f16">3</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">shaderEntityIndex</TD></TR><TR><TD PORT="f22">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f23">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f21">4</TD></TR><TR><TD PORT="f24">uint32_t</TD><TD PORT="f25">shaderEntityIndex</TD></TR><TR><TD PORT="f27">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f28">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f26">5</TD></TR><TR><TD PORT="f29">uint32_t</TD><TD PORT="f30">shaderEntityIndex</TD></TR><TR><TD PORT="f32">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f33">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f31">6</TD></TR><TR><TD PORT="f34">uint32_t</TD><TD PORT="f35">shaderEntityIndex</TD></TR><TR><TD PORT="f37">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f38">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f36">7</TD></TR><TR><TD PORT="f39">uint32_t</TD><TD PORT="f40">shaderEntityIndex</TD></TR><TR><TD PORT="f42">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f43">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f41">8</TD></TR><TR><TD PORT="f44">uint32_t</TD><TD PORT="f45">shaderEntityIndex</TD></TR><TR><TD PORT="f47">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f48">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f46">9</TD></TR><TR><TD PORT="f49">uint32_t</TD><TD PORT="f50">shaderEntityIndex</TD></TR></TABLE>>
-];
-/*
-"_VK_DESCRIPTOR_SET_CREATE_INFO1":f2 -> "_VK_DESCRIPTOR_SET_CREATE_INFO2":f0 [
-id = 0
-];
-*/
-"_VK_DESCRIPTOR_SET_CREATE_INFO1":f4 -> "DS1_MEMORY":ds1 [
-id = 1
-];
-"_VK_DESCRIPTOR_SET_CREATE_INFO2":f4 -> "DS2_MEMORY":ds2 [
-id = 2
-];
-/*
-"_VK_SAMPLER_CREATE_INFO_0":f4 -> "_ELLIPSE0" [
-id = 3
-];
-"_ELLIPSE0" -> "_VK_SAMPLER_CREATE_INFO_19":f0 [
-id = 3
-];
-*/
-"_VK_SAMPLER_CREATE_INFO_0" -> "SAMPLER_ARRAY":f0 [
-id = 4
-];
-"_VK_SAMPLER_CREATE_INFO_19" -> "SAMPLER_ARRAY":f19 [
-id = 5
-];
-"SAMPLER_ARRAY":f0 -> "DS2_MEMORY":f0 [
-id = 6
-];
-"SAMPLER_ARRAY":f19 -> "DS2_MEMORY":f19 [
-id = 7
-];
-/*
-"_VK_MEMORY_VIEW_ATTACH_INFO_0":f4 -> "_ELLIPSE1" [
-id = 6
-];
-"_ELLIPSE1" -> "_VK_MEMORY_VIEW_ATTACH_INFO_3":f0 [
-id = 7
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0":f4 -> "_ELLIPSE2" [
-id = 8
-];
-"_ELLIPSE2" -> "_VK_IMAGE_VIEW_ATTACH_INFO_9":f0 [
-id = 9
-];
-*/
-"_VK_MEMORY_VIEW_ATTACH_INFO_0" -> "DS1_MEMORY":f0 [
-id = 10
-];
-"_VK_MEMORY_VIEW_ATTACH_INFO_3" -> "DS1_MEMORY":f3 [
-id = 11
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0" -> "DS1_MEMORY":f4 [
-id = 10
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_9" -> "DS1_MEMORY":f13 [
-id = 11
-];
-"VS_VK_DESCRIPTOR_SET_MAPPING":f4 -> "VS_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 12
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS1_MEMORY":f0 [
-id = 13
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO":f6 -> "DS1_MEMORY":f1 [
-id = 14
-];
-"FS0_VK_DESCRIPTOR_SET_MAPPING":f4 -> "FS0_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 15
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS1_MEMORY":f0 [
-id = 16
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO":f26 -> "DS1_MEMORY":f5 [
-id = 17
-];
-"FS1_VK_DESCRIPTOR_SET_MAPPING":f4 -> "FS1_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 15
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS2_MEMORY":f0 [
-id = 16
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO":f46 -> "DS2_MEMORY":f9 [
-id = 17
-];
-}
-
diff --git a/docs/vk_ds.png b/docs/vk_ds.png
deleted file mode 100644
index ffeb80c..0000000
--- a/docs/vk_ds.png
+++ /dev/null
Binary files differ
diff --git a/docs/vk_full_pipeline_ds.dot b/docs/vk_full_pipeline_ds.dot
deleted file mode 100644
index 2465432..0000000
--- a/docs/vk_full_pipeline_ds.dot
+++ /dev/null
@@ -1,282 +0,0 @@
-digraph g {
-graph [
-rankdir = "TB"
-];
-node [
-fontsize = "16"
-shape = "plaintext"
-];
-edge [
-];
-"VkGraphicsPipelineCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkGraphicsPipelineCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>VkFlags</TD><TD>flags</TD></TR></TABLE>>
-];
-"VkPipelineIaStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineIaStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_IA_STATE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>VkPrimitiveTopology</TD><TD>topology</TD></TR><TR><TD>bool32_t</TD><TD>disableVertexReuse</TD></TR><TR><TD>VkProvokingVertex</TD><TD>provokingVertex</TD></TR><TR><TD>bool32_t</TD><TD>primitiveRestartEnable</TD></TR><TR><TD>uint32_t</TD><TD>primitiveRestartIndex</TD></TR></TABLE>>
-];
-"VkPipelineTessStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineTessStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_TESS_STATE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>uint32_t</TD><TD>patchControlPoints</TD></TR> <TR><TD>float</TD><TD>optimalTessFactor</TD></TR><TR><TD>float</TD><TD>fixedTessFactor</TD></TR></TABLE>>
-];
-"VkPipelineRsStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineRsStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_RS_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>bool32_t</TD><TD>depthClipEnable</TD></TR> <TR><TD>bool32_t</TD><TD>rasterizerDiscardEnable</TD></TR> <TR><TD>float</TD><TD>pointSize</TD></TR> </TABLE>>
-];
-"VkPipelineCbStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_PIPELINE_CB_STATE</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_CB_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>bool32_t</TD><TD>alphaToCoverageEnable</TD></TR> <TR><TD>bool32_t</TD><TD>dualSrcBlendEnable</TD></TR> <TR><TD>VkLogicOp</TD><TD>logicOp</TD></TR> <TR><TD>VkPipelineCbAttachmentState</TD><TD>attachment</TD></TR> </TABLE>>
-];
-"_VK_PIPELINE_DB_STATE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_PIPELINE_DB_STATE_CREATE_INFO</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_DB_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkFormat</TD><TD>format</TD></TR> </TABLE>>
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"VS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=VS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"TC_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=TC</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"TE_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=TE</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"GS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=GS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"FS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=FS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"VkGraphicsPipelineCreateInfo_":f2 -> "VkPipelineIaStateCreateInfo_" [
-id = 100
-];
-"VkPipelineIaStateCreateInfo_":f2 -> "VkPipelineTessStateCreateInfo_" [
-id = 101
-];
-"VkPipelineTessStateCreateInfo_":f2 -> "VkPipelineRsStateCreateInfo_" [
-id = 102
-];
-"VkPipelineRsStateCreateInfo_":f2 -> "VkPipelineCbStateCreateInfo_" [
-id = 103
-];
-"VkPipelineCbStateCreateInfo_":f2 -> "_VK_PIPELINE_DB_STATE_CREATE_INFO" [
-id = 104
-];
-"_VK_PIPELINE_DB_STATE_CREATE_INFO":f2 -> "VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 105
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 106
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 107
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 108
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 109
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "VS_VK_PIPELINE_SHADER" [
-id = 110
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "TE_VK_PIPELINE_SHADER" [
-id = 111
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "TC_VK_PIPELINE_SHADER" [
-id = 112
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "GS_VK_PIPELINE_SHADER" [
-id = 113
-];
-"FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "FS_VK_PIPELINE_SHADER" [
-id = 114
-];
-subgraph clusterDSCreate1
-{
-label="vkCreateDescriptorSet()"
-"_VK_DESCRIPTOR_SET_CREATE_INFO1" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR><TR><TD PORT="f3">uint32_t</TD><TD PORT="f4">slots=14</TD></TR></TABLE>>
-];
-}
-subgraph clusterDSCreate2
-{
-label="vkCreateDescriptorSet()"
-"_VK_DESCRIPTOR_SET_CREATE_INFO2" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_DESCRIPTOR_SET_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR><TR><TD PORT="f3">uint32_t</TD><TD PORT="f4">slots=20</TD></TR></TABLE>>
-];
-}
-subgraph clusterSamplerCreate
-{
-label="vkCreateSampler - multiple calls return unique VkSampler handles"
-"_VK_SAMPLER_CREATE_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkSamplerCreateInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO</TD></TR><TR><TD PORT="f3">const void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkTexFilter</TD><TD PORT="f6">magFilter</TD></TR><TR><TD PORT="f7">VkTexFilter</TD><TD PORT="f8">minFilter</TD></TR><TR><TD PORT="f9">VkTexMipmapMode</TD><TD PORT="f10">mipMode</TD></TR><TR><TD PORT="f11">VkTexAddress</TD><TD PORT="f12">addressU</TD></TR><TR><TD PORT="f13">VkTexAddress</TD><TD PORT="f14">addressV</TD></TR><TR><TD PORT="f15">VkTexAddress</TD><TD PORT="f16">addressW</TD></TR><TR><TD PORT="f17">float</TD><TD PORT="f18">mipLodBias</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">maxAnisotropy</TD></TR><TR><TD PORT="f21">VkCompareOp</TD><TD PORT="f22">compareFunc</TD></TR><TR><TD PORT="f23">float</TD><TD PORT="f24">minLod</TD></TR><TR><TD PORT="f25">float</TD><TD PORT="f26">maxLod</TD></TR><TR><TD PORT="f27">VkBorderColor</TD><TD PORT="f28">borderColorType</TD></TR></TABLE>>
-];
-"SAMPLER_ELLIPSES" [
-label = "..."
-];
-"_VK_SAMPLER_CREATE_INFO_19" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkSamplerCreateInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO</TD></TR><TR><TD PORT="f3">const void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkTexFilter</TD><TD PORT="f6">magFilter</TD></TR><TR><TD PORT="f7">VkTexFilter</TD><TD PORT="f8">minFilter</TD></TR><TR><TD PORT="f9">VkTexMipmapMode</TD><TD PORT="f10">mipMode</TD></TR><TR><TD PORT="f11">VkTexAddress</TD><TD PORT="f12">addressU</TD></TR><TR><TD PORT="f13">VkTexAddress</TD><TD PORT="f14">addressV</TD></TR><TR><TD PORT="f15">VkTexAddress</TD><TD PORT="f16">addressW</TD></TR><TR><TD PORT="f17">float</TD><TD PORT="f18">mipLodBias</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">maxAnisotropy</TD></TR><TR><TD PORT="f21">VkCompareOp</TD><TD PORT="f22">compareFunc</TD></TR><TR><TD PORT="f23">float</TD><TD PORT="f24">minLod</TD></TR><TR><TD PORT="f25">float</TD><TD PORT="f26">maxLod</TD></TR><TR><TD PORT="f27">VkBorderColor</TD><TD PORT="f28">borderColorType</TD></TR></TABLE>>
-];
-}
-subgraph clusterSamplerAttach
-{
-label="vkAttachSamplerDescriptors\npSamplers array of VK_SAMPLERS"
-"SAMPLER_ARRAY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="pSamp">pSamplers</TD></TR><TR><TD PORT="f0">VK_SAMPLER0</TD></TR><TR><TD PORT="f1">VK_SAMPLER1</TD></TR><TR><TD PORT="f2">VK_SAMPLER2</TD></TR><TR><TD PORT="f3">VK_SAMPLER3</TD></TR><TR><TD PORT="f4">VK_SAMPLER4</TD></TR><TR><TD PORT="f5">VK_SAMPLER5</TD></TR><TR><TD PORT="f6">VK_SAMPLER6</TD></TR><TR><TD PORT="f7">VK_SAMPLER7</TD></TR><TR><TD PORT="f8">VK_SAMPLER8</TD></TR><TR><TD PORT="f9">VK_SAMPLER9</TD></TR><TR><TD PORT="f10">VK_SAMPLER10</TD></TR><TR><TD PORT="f11">VK_SAMPLER11</TD></TR><TR><TD PORT="f12">VK_SAMPLER12</TD></TR><TR><TD PORT="f13">VK_SAMPLER13</TD></TR><TR><TD PORT="f14">VK_SAMPLER14</TD></TR><TR><TD PORT="f15">VK_SAMPLER15</TD></TR><TR><TD PORT="f16">VK_SAMPLER16</TD></TR><TR><TD PORT="f17">VK_SAMPLER17</TD></TR><TR><TD PORT="f18">VK_SAMPLER18</TD></TR><TR><TD PORT="f19">VK_SAMPLER19</TD></TR></TABLE>>
-];
-}
-"DS1_MEMORY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="ds1">DS1 Memory</TD></TR><TR><TD PORT="f0">slot0</TD></TR><TR><TD PORT="f1">slot1</TD></TR><TR><TD PORT="f2">slots2</TD></TR><TR><TD PORT="f3">slots3</TD></TR><TR><TD PORT="f4">slots4</TD></TR><TR><TD PORT="f5">slots5</TD></TR><TR><TD PORT="f6">slots6</TD></TR><TR><TD PORT="f7">slots7</TD></TR><TR><TD PORT="f8">slots8</TD></TR><TR><TD PORT="f9">slots9</TD></TR><TR><TD PORT="f10">slots10</TD></TR><TR><TD PORT="f11">slots11</TD></TR><TR><TD PORT="f12">slots12</TD></TR><TR><TD PORT="f13">slot13</TD></TR></TABLE>>
-];
-"DS2_MEMORY" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD PORT="ds2">DS2 Memory</TD></TR><TR><TD PORT="f0">slot0</TD></TR><TR><TD PORT="f1">slot1</TD></TR><TR><TD PORT="f2">slots2</TD></TR><TR><TD PORT="f3">slots3</TD></TR><TR><TD PORT="f4">slots4</TD></TR><TR><TD PORT="f5">slots5</TD></TR><TR><TD PORT="f6">slots6</TD></TR><TR><TD PORT="f7">slots7</TD></TR><TR><TD PORT="f8">slots8</TD></TR><TR><TD PORT="f9">slots9</TD></TR><TR><TD PORT="f10">slots10</TD></TR><TR><TD PORT="f11">slots11</TD></TR><TR><TD PORT="f12">slots12</TD></TR><TR><TD PORT="f13">slot13</TD></TR><TR><TD PORT="f14">slots14</TD></TR><TR><TD PORT="f15">slots15</TD></TR><TR><TD PORT="f16">slots16</TD></TR><TR><TD PORT="f17">slots17</TD></TR><TR><TD PORT="f18">slots18</TD></TR><TR><TD PORT="f19">slots19</TD></TR></TABLE>>
-];
-subgraph clusterMemoryView
-{
-label="vkAttachMemoryViewDescriptors - pMemViews array of VK_MEMORY_VIEW_ATTACH_INFO structs"
-"_VK_MEMORY_VIEW_ATTACH_INFO_3" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkDeviceMemory</TD><TD PORT="f6">mem</TD></TR><TR><TD PORT="f7">VkDeviceSize</TD><TD PORT="f8">offset</TD></TR><TR><TD PORT="f9">VkDeviceSize</TD><TD PORT="f10">range</TD></TR><TR><TD PORT="f11">VkDeviceSize</TD><TD PORT="f12">stride</TD></TR><TR><TD PORT="f13">VkFormat</TD><TD PORT="f14">format</TD></TR><TR><TD PORT="f15">VK_MEMORY_STATE</TD><TD PORT="f16">state</TD></TR></TABLE>>
-];
-"MEM_VIEW_ELLIPSES" [
-label = "..."
-];
-"_VK_MEMORY_VIEW_ATTACH_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_MEMORY_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkDeviceMemory</TD><TD PORT="f6">mem</TD></TR><TR><TD PORT="f7">VkDeviceSize</TD><TD PORT="f8">offset</TD></TR><TR><TD PORT="f9">VkDeviceSize</TD><TD PORT="f10">range</TD></TR><TR><TD PORT="f11">VkDeviceSize</TD><TD PORT="f12">stride</TD></TR><TR><TD PORT="f13">VkFormat</TD><TD PORT="f14">format</TD></TR><TR><TD PORT="f15">VK_MEMORY_STATE</TD><TD PORT="f16">state</TD></TR></TABLE>>
-];
-}
-subgraph clusterImageView
-{
-label="vkAttachImageViewDescriptors - pImageViews array of VkImageViewAttachInfo structs"
-"_VK_IMAGE_VIEW_ATTACH_INFO_9" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkImageViewAttachInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkImageView</TD><TD PORT="f6">view</TD></TR><TR><TD PORT="f7">VK_IMAGE_STATE</TD><TD PORT="f8">state</TD></TR></TABLE>>
-];
-"IMG_VIEW_ELLIPSES" [
-label = "..."
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkImageViewAttachInfo</TD></TR><TR><TD PORT="f1">VkStructureType</TD><TD PORT="f2">sType=<BR/>VK_STRUCTURE_TYPE_IMAGE_VIEW_ATTACH_INFO</TD></TR><TR><TD PORT="f3">void*</TD><TD PORT="f4">pNext=NULL</TD></TR><TR><TD PORT="f5">VkImageView</TD><TD PORT="f6">view</TD></TR><TR><TD PORT="f7">VK_IMAGE_STATE</TD><TD PORT="f8">state</TD></TR></TABLE>>
-];
-}
-"VS_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=2</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR></TABLE>>
-];
-"FS0_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=6</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_UNUSED</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_UNUSED</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR><TR><TD PORT="f12">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f13">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f11">2</TD></TR><TR><TD PORT="f14">uint32_t</TD><TD PORT="f15">shaderEntityIndex</TD></TR><TR><TD PORT="f17">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f18">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f16">3</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">shaderEntityIndex</TD></TR><TR><TD PORT="f22">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f23">VK_SLOT_SHADER_RESOURCE</TD><TD ROWSPAN="2" PORT="f21">4</TD></TR><TR><TD PORT="f24">uint32_t</TD><TD PORT="f25">shaderEntityIndex</TD></TR><TR><TD PORT="f27">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f28">VK_SLOT_SHADER_UAV</TD><TD ROWSPAN="2" PORT="f26">5</TD></TR><TR><TD PORT="f29">uint32_t</TD><TD PORT="f30">shaderEntityIndex</TD></TR></TABLE>>
-];
-"FS1_VK_DESCRIPTOR_SET_MAPPING" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_DESCRIPTOR_SET_MAPPING</TD></TR><TR><TD PORT="f1">uint32_t</TD><TD PORT="f2">descriptorCount=10</TD></TR><TR><TD PORT="f3">const VK_DESCRIPTOR_SLOT_INFO*</TD><TD PORT="f4">pDescriptorInfo</TD></TR></TABLE>>
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="3" PORT="f0">VK_DESCRIPTOR_SLOT_INFO</TD></TR><TR><TD PORT="f2">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f3">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f1">0</TD></TR><TR><TD PORT="f4">uint32_t</TD><TD PORT="f5">shaderEntityIndex</TD></TR><TR><TD PORT="f7">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f8">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f6">1</TD></TR><TR><TD PORT="f9">uint32_t</TD><TD PORT="f10">shaderEntityIndex</TD></TR><TR><TD PORT="f12">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f13">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f11">2</TD></TR><TR><TD PORT="f14">uint32_t</TD><TD PORT="f15">shaderEntityIndex</TD></TR><TR><TD PORT="f17">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f18">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f16">3</TD></TR><TR><TD PORT="f19">uint32_t</TD><TD PORT="f20">shaderEntityIndex</TD></TR><TR><TD PORT="f22">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f23">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f21">4</TD></TR><TR><TD PORT="f24">uint32_t</TD><TD PORT="f25">shaderEntityIndex</TD></TR><TR><TD PORT="f27">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f28">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f26">5</TD></TR><TR><TD PORT="f29">uint32_t</TD><TD PORT="f30">shaderEntityIndex</TD></TR><TR><TD PORT="f32">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f33">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f31">6</TD></TR><TR><TD PORT="f34">uint32_t</TD><TD PORT="f35">shaderEntityIndex</TD></TR><TR><TD PORT="f37">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f38">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f36">7</TD></TR><TR><TD PORT="f39">uint32_t</TD><TD PORT="f40">shaderEntityIndex</TD></TR><TR><TD PORT="f42">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f43">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f41">8</TD></TR><TR><TD PORT="f44">uint32_t</TD><TD PORT="f45">shaderEntityIndex</TD></TR><TR><TD PORT="f47">VK_DESCRIPTOR_SET_SLOT_TYPE</TD><TD PORT="f48">VK_SLOT_SHADER_SAMPLER</TD><TD ROWSPAN="2" PORT="f46">9</TD></TR><TR><TD PORT="f49">uint32_t</TD><TD PORT="f50">shaderEntityIndex</TD></TR></TABLE>>
-];
-/*
-"_VK_DESCRIPTOR_SET_CREATE_INFO1":f2 -> "_VK_DESCRIPTOR_SET_CREATE_INFO2":f0 [
-id = 0
-];
-*/
-"_VK_DESCRIPTOR_SET_CREATE_INFO1":f4 -> "DS1_MEMORY":ds1 [
-id = 1
-];
-"_VK_DESCRIPTOR_SET_CREATE_INFO2":f4 -> "DS2_MEMORY":ds2 [
-id = 2
-];
-/*
-"_VK_SAMPLER_CREATE_INFO_0":f4 -> "_ELLIPSE0" [
-id = 3
-];
-"_ELLIPSE0" -> "_VK_SAMPLER_CREATE_INFO_19":f0 [
-id = 3
-];
-*/
-"_VK_SAMPLER_CREATE_INFO_0" -> "SAMPLER_ARRAY":f0 [
-id = 4
-];
-"_VK_SAMPLER_CREATE_INFO_19" -> "SAMPLER_ARRAY":f19 [
-id = 5
-];
-"SAMPLER_ARRAY":f0 -> "DS2_MEMORY":f0 [
-id = 6
-];
-"SAMPLER_ARRAY":f19 -> "DS2_MEMORY":f19 [
-id = 7
-];
-/*
-"_VK_MEMORY_VIEW_ATTACH_INFO_0":f4 -> "_ELLIPSE1" [
-id = 6
-];
-"_ELLIPSE1" -> "_VK_MEMORY_VIEW_ATTACH_INFO_3":f0 [
-id = 7
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0":f4 -> "_ELLIPSE2" [
-id = 8
-];
-"_ELLIPSE2" -> "_VK_IMAGE_VIEW_ATTACH_INFO_9":f0 [
-id = 9
-];
-*/
-"_VK_MEMORY_VIEW_ATTACH_INFO_0" -> "DS1_MEMORY":f0 [
-id = 10
-];
-"_VK_MEMORY_VIEW_ATTACH_INFO_3" -> "DS1_MEMORY":f3 [
-id = 11
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_0" -> "DS1_MEMORY":f4 [
-id = 10
-];
-"_VK_IMAGE_VIEW_ATTACH_INFO_9" -> "DS1_MEMORY":f13 [
-id = 11
-];
-"VS_VK_DESCRIPTOR_SET_MAPPING":f4 -> "VS_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 12
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS1_MEMORY":f0 [
-id = 13
-];
-"VS_VK_DESCRIPTOR_SLOT_INFO":f6 -> "DS1_MEMORY":f1 [
-id = 14
-];
-"FS0_VK_DESCRIPTOR_SET_MAPPING":f4 -> "FS0_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 15
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS1_MEMORY":f0 [
-id = 16
-];
-"FS0_VK_DESCRIPTOR_SLOT_INFO":f26 -> "DS1_MEMORY":f5 [
-id = 17
-];
-"FS1_VK_DESCRIPTOR_SET_MAPPING":f4 -> "FS1_VK_DESCRIPTOR_SLOT_INFO":f0 [
-id = 15
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO":f1 -> "DS2_MEMORY":f0 [
-id = 16
-];
-"FS1_VK_DESCRIPTOR_SLOT_INFO":f46 -> "DS2_MEMORY":f9 [
-id = 17
-];
-"FS_VK_PIPELINE_SHADER":f6 -> "FS0_VK_DESCRIPTOR_SET_MAPPING" [
-id = 18
-];
-"FS_VK_PIPELINE_SHADER":f6 -> "FS1_VK_DESCRIPTOR_SET_MAPPING" [
-id = 19
-];
-"VS_VK_PIPELINE_SHADER":f6 -> "VS_VK_DESCRIPTOR_SET_MAPPING" [
-id = 20
-];
-}
-
diff --git a/docs/vk_full_pipeline_ds.png b/docs/vk_full_pipeline_ds.png
deleted file mode 100644
index cec7622..0000000
--- a/docs/vk_full_pipeline_ds.png
+++ /dev/null
Binary files differ
diff --git a/docs/vk_graphics_pipeline.dot b/docs/vk_graphics_pipeline.dot
deleted file mode 100644
index 946a252..0000000
--- a/docs/vk_graphics_pipeline.dot
+++ /dev/null
@@ -1,105 +0,0 @@
-digraph g {
-graph [
-rankdir = "TB"
-];
-node [
-fontsize = "16"
-shape = "plaintext"
-];
-edge [
-];
-"VkGraphicsPipelineCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkGraphicsPipelineCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>VkFlags</TD><TD>flags</TD></TR></TABLE>>
-];
-"VkPipelineIaStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineIaStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_IA_STATE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>VkPrimitiveTopology</TD><TD>topology</TD></TR><TR><TD>bool32_t</TD><TD>disableVertexReuse</TD></TR><TR><TD>VkProvokingVertex</TD><TD>provokingVertex</TD></TR><TR><TD>bool32_t</TD><TD>primitiveRestartEnable</TD></TR><TR><TD>uint32_t</TD><TD>primitiveRestartIndex</TD></TR></TABLE>>
-];
-"VkPipelineTessStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineTessStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_TESS_STATE_CREATE_INFO</TD></TR><TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR><TR><TD>uint32_t</TD><TD>patchControlPoints</TD></TR> <TR><TD>float</TD><TD>optimalTessFactor</TD></TR><TR><TD>float</TD><TD>fixedTessFactor</TD></TR></TABLE>>
-];
-"VkPipelineRsStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineRsStateCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_RS_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>bool32_t</TD><TD>depthClipEnable</TD></TR> <TR><TD>bool32_t</TD><TD>rasterizerDiscardEnable</TD></TR> <TR><TD>float</TD><TD>pointSize</TD></TR> </TABLE>>
-];
-"VkPipelineCbStateCreateInfo_" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_PIPELINE_CB_STATE</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_CB_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>bool32_t</TD><TD>alphaToCoverageEnable</TD></TR> <TR><TD>bool32_t</TD><TD>dualSrcBlendEnable</TD></TR> <TR><TD>VkLogicOp</TD><TD>logicOp</TD></TR> <TR><TD>VkPipelineCbAttachmentState</TD><TD>attachment</TD></TR> </TABLE>>
-];
-"_VK_PIPELINE_DB_STATE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VK_PIPELINE_DB_STATE_CREATE_INFO</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_DB_STATE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkFormat</TD><TD>format</TD></TR> </TABLE>>
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShaderStageCreateInfo</TD></TR><TR><TD>VkStructureType</TD><TD>sType=<BR/>VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO</TD></TR> <TR><TD>const void*</TD><TD PORT="f2">pNext=NULL</TD></TR> <TR><TD>VkPipelineShader</TD><TD PORT="f4">shader</TD></TR> </TABLE>>
-];
-"VS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=VS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"TC_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=TC</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"TE_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=TE</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"GS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=GS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"FS_VK_PIPELINE_SHADER" [
-label = <<TABLE BORDER="0" CELLBORDER="1" CELLSPACING="0"> <TR><TD COLSPAN="2" PORT="f0">VkPipelineShader</TD></TR><TR><TD PORT="f1">VkShaderStage</TD><TD PORT="f2">stage=FS</TD></TR><TR><TD PORT="f3">VkShader</TD><TD PORT="f4">shader</TD></TR><TR><TD PORT="f5">VK_DESCRIPTOR_SET_MAPPING</TD><TD PORT="f6">descriptorSetMapping[2]</TD></TR><TR><TD PORT="f7">uint32_t</TD><TD PORT="f8">linkConstBufferCount</TD></TR><TR><TD PORT="f9">const VkLinkConstBuffer*</TD><TD PORT="f10">pLinkConstBufferInfo</TD></TR><TR><TD PORT="f11">VK_DYNAMIC_MEMORY_VIEW_SLOT_INFO</TD><TD PORT="f12">dynamicMemoryViewMapping</TD></TR></TABLE>>
-];
-"VkGraphicsPipelineCreateInfo_":f2 -> "VkPipelineIaStateCreateInfo_" [
-id = 0
-];
-"VkPipelineIaStateCreateInfo_":f2 -> "VkPipelineTessStateCreateInfo_" [
-id = 1
-];
-"VkPipelineTessStateCreateInfo_":f2 -> "VkPipelineRsStateCreateInfo_" [
-id = 2
-];
-"VkPipelineRsStateCreateInfo_":f2 -> "VkPipelineCbStateCreateInfo_" [
-id = 3
-];
-"VkPipelineCbStateCreateInfo_":f2 -> "_VK_PIPELINE_DB_STATE_CREATE_INFO" [
-id = 4
-];
-"_VK_PIPELINE_DB_STATE_CREATE_INFO":f2 -> "VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 5
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 6
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 7
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 8
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f2 -> "FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO" [
-id = 9
-];
-"VS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "VS_VK_PIPELINE_SHADER" [
-id = 10
-];
-"TE_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "TE_VK_PIPELINE_SHADER" [
-id = 11
-];
-"TC_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "TC_VK_PIPELINE_SHADER" [
-id = 12
-];
-"GS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "GS_VK_PIPELINE_SHADER" [
-id = 13
-];
-"FS_VK_PIPELINE_SHADER_STAGE_CREATE_INFO":f4 -> "FS_VK_PIPELINE_SHADER" [
-id = 14
-];
-}
-
diff --git a/docs/vk_graphics_pipeline.png b/docs/vk_graphics_pipeline.png
deleted file mode 100644
index 392fd3f..0000000
--- a/docs/vk_graphics_pipeline.png
+++ /dev/null
Binary files differ