diff --git a/.version b/.version index fdffccdb..2d68b515 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -1.3.235 \ No newline at end of file +1.3.236 \ No newline at end of file diff --git a/analyzer/Exomia.Vulkan.Api.Core.SourceGenerator/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.bitmasks.cs b/analyzer/Exomia.Vulkan.Api.Core.SourceGenerator/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.bitmasks.cs new file mode 100644 index 00000000..e8718051 --- /dev/null +++ b/analyzer/Exomia.Vulkan.Api.Core.SourceGenerator/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.bitmasks.cs @@ -0,0 +1 @@ +global using VkDirectDriverLoadingFlagsLUNARG = Exomia.Vulkan.Api.Core.FutureUse32; diff --git a/src/Exomia.Vulkan.Api.Core/Enums/VkDriverId.cs b/src/Exomia.Vulkan.Api.Core/Enums/VkDriverId.cs index 40b214a0..122b7186 100644 --- a/src/Exomia.Vulkan.Api.Core/Enums/VkDriverId.cs +++ b/src/Exomia.Vulkan.Api.Core/Enums/VkDriverId.cs @@ -157,6 +157,12 @@ public enum VkDriverId /// VK_DRIVER_ID_MESA_DOZEN = 23, + /// + /// VK_DRIVER_ID_MESA_NVK
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDriverId + ///
+ VK_DRIVER_ID_MESA_NVK = 24, + /// /// VK_DRIVER_ID_AMD_PROPRIETARY_KHR
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDriverId diff --git a/src/Exomia.Vulkan.Api.Core/Enums/VkExternalMemoryHandleTypeFlagBits.cs b/src/Exomia.Vulkan.Api.Core/Enums/VkExternalMemoryHandleTypeFlagBits.cs index b7e787b8..a753b99f 100644 --- a/src/Exomia.Vulkan.Api.Core/Enums/VkExternalMemoryHandleTypeFlagBits.cs +++ b/src/Exomia.Vulkan.Api.Core/Enums/VkExternalMemoryHandleTypeFlagBits.cs @@ -84,8 +84,9 @@ public enum VkExternalMemoryHandleTypeFlagBits VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT = 0x200, /// - /// VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROIDspecifies an AHardwareBuffer object defined by - /// the Android NDK. See + /// VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROIDspecifies an + /// AHardwareBuffer + /// object defined by the Android NDK. See /// /// Android diff --git a/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs b/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs index 0d61e582..f011faee 100644 --- a/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs +++ b/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs @@ -4309,6 +4309,18 @@ public enum VkStructureType /// VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT = 1000458003, + /// + /// VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG
+ ///
https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType + ///
+ VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG = 1000459000, + + /// + /// VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType + ///
+ VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG = 1000459001, + /// /// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType @@ -4417,6 +4429,12 @@ public enum VkStructureType ///
VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC = 1000485001, + /// + /// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType + ///
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM = 1000488000, + /// /// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_descriptor_buffer/VkPhysicalDeviceDescriptorBufferPropertiesEXT.cs b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_descriptor_buffer/VkPhysicalDeviceDescriptorBufferPropertiesEXT.cs index 5d0971fe..1396837d 100644 --- a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_descriptor_buffer/VkPhysicalDeviceDescriptorBufferPropertiesEXT.cs +++ b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_descriptor_buffer/VkPhysicalDeviceDescriptorBufferPropertiesEXT.cs @@ -150,25 +150,25 @@ public unsafe struct VkPhysicalDeviceDescriptorBufferPropertiesEXT /// /// uniformTexelBufferDescriptorSize indicates the size in bytes of a VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER - /// descriptor if the robust buffer access feature is not enabled. + /// descriptor if the robustBufferAccess feature is not enabled. /// public nuint uniformTexelBufferDescriptorSize; /// /// robustUniformTexelBufferDescriptorSize indicates the size in bytes of a - /// VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor if the robust buffer access feature is enabled. + /// VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER descriptor if the robustBufferAccess feature is enabled. /// public nuint robustUniformTexelBufferDescriptorSize; /// /// storageTexelBufferDescriptorSize indicates the size in bytes of a VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER - /// descriptor if the robust buffer access feature is not enabled. + /// descriptor if the robustBufferAccess feature is not enabled. /// public nuint storageTexelBufferDescriptorSize; /// /// robustStorageTexelBufferDescriptorSize indicates the size in bytes of a - /// VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor if the robust buffer access feature is enabled. + /// VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER descriptor if the robustBufferAccess feature is enabled. /// public nuint robustStorageTexelBufferDescriptorSize; @@ -177,7 +177,7 @@ public unsafe struct VkPhysicalDeviceDescriptorBufferPropertiesEXT /// /// robustUniformBufferDescriptorSize indicates the size in bytes of a VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER - /// descriptor if the robust buffer access feature is enabled. + /// descriptor if the robustBufferAccess feature is enabled. /// public nuint robustUniformBufferDescriptorSize; @@ -186,7 +186,7 @@ public unsafe struct VkPhysicalDeviceDescriptorBufferPropertiesEXT /// /// robustStorageBufferDescriptorSize indicates the size in bytes of a VK_DESCRIPTOR_TYPE_STORAGE_BUFFER - /// descriptor if the robust buffer access feature is enabled. + /// descriptor if the robustBufferAccess feature is enabled. /// public nuint robustStorageBufferDescriptorSize; diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_mesh_shader/VkPhysicalDeviceMeshShaderFeaturesEXT.cs b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_mesh_shader/VkPhysicalDeviceMeshShaderFeaturesEXT.cs index 75cb58e3..d1cd000b 100644 --- a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_mesh_shader/VkPhysicalDeviceMeshShaderFeaturesEXT.cs +++ b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_mesh_shader/VkPhysicalDeviceMeshShaderFeaturesEXT.cs @@ -54,7 +54,7 @@ public unsafe struct VkPhysicalDeviceMeshShaderFeaturesEXT public VkBool32 meshShader; /// - /// multiviewMeshShader specifies whether the implementation supports multiview rendering within a render pass, + /// multiviewMeshShader specifies whether the implementation supports multiviewrendering within a render pass, /// with mesh shaders. If this feature is not enabled, then a pipeline compiled against a subpass with a non-zero view /// mask must not include a mesh shader. /// diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkKhrRayTracingPipeline.cs b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkKhrRayTracingPipeline.cs index 32f2c898..e41b3024 100644 --- a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkKhrRayTracingPipeline.cs +++ b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkKhrRayTracingPipeline.cs @@ -167,8 +167,8 @@ public static readonly delegate*< VkResult> vkGetRayTracingShaderGroupHandlesKHR = null; /// - /// vkGetRayTracingCaptureReplayShaderGroupHandlesKHR - Query ray tracing capture replay pipeline shader group handles - /// - + /// vkGetRayTracingCaptureReplayShaderGroupHandlesKHR - Query opaque capture replay data for pipeline shader group + /// handles - /// /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetRayTracingCaptureReplayShaderGroupHandlesKHR.html diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkRayTracingShaderGroupCreateInfoKHR.cs b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkRayTracingShaderGroupCreateInfoKHR.cs index 5ad56a88..63cbbda1 100644 --- a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkRayTracingShaderGroupCreateInfoKHR.cs +++ b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_ray_tracing_pipeline/VkRayTracingShaderGroupCreateInfoKHR.cs @@ -65,7 +65,8 @@ public unsafe struct VkRayTracingShaderGroupCreateInfoKHR public uint intersectionShader; /// - /// pShaderGroupCaptureReplayHandle is NULL or a pointer to replay information for this shader group. Ignored if + /// pShaderGroupCaptureReplayHandle is NULL or a pointer to replay information for this shader group queried from + /// vkGetRayTracingCaptureReplayShaderGroupHandlesKHR, as described in Ray Tracing Capture Replay. Ignored if /// VkPhysicalDeviceRayTracingPipelineFeaturesKHR::rayTracingPipelineShaderGroupHandleCaptureReplayis VK_FALSE. /// public void* pShaderGroupCaptureReplayHandle; diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingInfoLUNARG.cs b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingInfoLUNARG.cs new file mode 100644 index 00000000..93703481 --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingInfoLUNARG.cs @@ -0,0 +1,65 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VkDirectDriverLoadingInfoLUNARG - Structure specifying the information required to load an additional driver +/// - +/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingInfoLUNARG.html +/// +/// +[StructLayout(LayoutKind.Sequential)] +public unsafe struct VkDirectDriverLoadingInfoLUNARG +{ + /// The stype of this structure. + public const VkStructureType STYPE = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG; + + /// + /// sType
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingInfoLUNARG + /// + ///
+ public VkStructureType sType; + + /// + /// pNext
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingInfoLUNARG + /// + ///
+ public void* pNext; + + /// + /// flags
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingInfoLUNARG + /// + ///
+ public VkDirectDriverLoadingFlagsLUNARG flags; + + /// + /// pfnGetInstanceProcAddr
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingInfoLUNARG + /// + ///
+ public delegate*> pfnGetInstanceProcAddr; +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingListLUNARG.cs b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingListLUNARG.cs new file mode 100644 index 00000000..f1407475 --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingListLUNARG.cs @@ -0,0 +1,81 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VkDirectDriverLoadingListLUNARG - Structure specifying additional drivers to load - +/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingListLUNARG.html +/// +/// +/// +/// +/// +/// structextendsVkInstanceCreateInfo +/// +/// +/// +[VkStructExtends("VkInstanceCreateInfo")] +[StructLayout(LayoutKind.Sequential)] +public unsafe struct VkDirectDriverLoadingListLUNARG +{ + /// The stype of this structure. + public const VkStructureType STYPE = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG; + + /// + /// sType
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingListLUNARG + /// + ///
+ public VkStructureType sType; + + /// + /// pNext
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingListLUNARG + /// + ///
+ public void* pNext; + + /// + /// mode
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingListLUNARG + /// + ///
+ public VkDirectDriverLoadingModeLUNARG mode; + + /// + /// driverCount
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingListLUNARG + /// + ///
+ public uint driverCount; + + /// + /// pDrivers
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingListLUNARG + /// + ///
+ public VkDirectDriverLoadingInfoLUNARG* pDrivers; +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingModeLUNARG.cs b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingModeLUNARG.cs new file mode 100644 index 00000000..a2db52f2 --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkDirectDriverLoadingModeLUNARG.cs @@ -0,0 +1,42 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VkDirectDriverLoadingModeLUNARG - Specify loader behavior of added drivers - +/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingModeLUNARG.html +/// +/// +public enum VkDirectDriverLoadingModeLUNARG +{ + /// + /// VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingModeLUNARG + /// + ///
+ VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG = 0, + + /// + /// VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkDirectDriverLoadingModeLUNARG + /// + ///
+ VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG = 1 +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.cs b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.cs new file mode 100644 index 00000000..d1914336 --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/LUNARG/VK_LUNARG_direct_driver_loading/VkLunargDirectDriverLoading.cs @@ -0,0 +1,51 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +global using static Exomia.Vulkan.Api.Core.VkLunargDirectDriverLoading; + +#pragma warning disable CA2211 // Non-constant fields should not be visible +#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VK_LUNARG_direct_driver_loading - instance extension (nr. 460) - author 'LUNARG' [platform '' | contact 'Charles +/// Giessen @charles-lunarg']
+/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_LUNARG_direct_driver_loading.html +/// +///
+public static class VkLunargDirectDriverLoading +{ + /// The spec version. + public const uint VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION = 1; + + /// The extension name. + public const string VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME = "VK_LUNARG_direct_driver_loading"; + + /// + /// An UTF8 null terminated version of represented + /// by an UTF16 string. + /// + /// + /// Example usage:
+ ///
+ /// fixed(char* ptr = VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME_UTF8_NT) {
+ /// sbyte* utf8NtPtr = (sbyte*)ptr; // utf8NtPtr - can now be passed and used directly as a utf8_nt string for + /// unmanaged code.
+ /// } + ///
+ public const string VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME_UTF8_NT = + "\u4b56\u4c5f\u4e55\u5241\u5f47\u4944\u4552\u5443\u445f\u4952\u4556\u5f52\u4f4c\u4441\u4e49\u5f47\u5845\u4554\u534e\u4f49\u5f4e\u414e\u454d\u0000"; +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.cs b/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.cs new file mode 100644 index 00000000..d74ddb6d --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.cs @@ -0,0 +1,52 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM - Structure describing multiview per view viewports features +/// that can be supported by an implementation - +/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.html +/// +/// +/// +/// +/// +/// structextendsVkPhysicalDeviceFeatures2,VkDeviceCreateInfo +/// +/// +/// +[VkStructExtends("VkPhysicalDeviceFeatures2,VkDeviceCreateInfo")] +[StructLayout(LayoutKind.Sequential)] +public unsafe struct VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM +{ + /// The stype of this structure. + public const VkStructureType STYPE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM; + + /// + /// sType
+ /// + /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM + /// + ///
+ public VkStructureType sType; + + /// pNext is NULL or a pointer to a structure extending this structure. + public void* pNext; + + /// multiviewPerViewViewports indicates that the implementation supports multiview per-view viewports. + public VkBool32 multiviewPerViewViewports; +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkQcomMultiviewPerViewViewports.cs b/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkQcomMultiviewPerViewViewports.cs new file mode 100644 index 00000000..9bc6bdca --- /dev/null +++ b/src/Exomia.Vulkan.Api.Core/Extensions/QCOM/VK_QCOM_multiview_per_view_viewports/VkQcomMultiviewPerViewViewports.cs @@ -0,0 +1,51 @@ +#region License + +// Copyright (c) 2018-2022, exomia +// All rights reserved. +// +// This source code is licensed under the BSD-style license found in the +// LICENSE file in the root directory of this source tree. + +#endregion + +global using static Exomia.Vulkan.Api.Core.VkQcomMultiviewPerViewViewports; + +#pragma warning disable CA2211 // Non-constant fields should not be visible +#pragma warning disable CS1591 // Missing XML comment for publicly visible type or member + +// ReSharper disable UnusedMember.Global +// ReSharper disable InconsistentNaming +// ReSharper disable once CheckNamespace +namespace Exomia.Vulkan.Api.Core; + +/// +/// VK_QCOM_multiview_per_view_viewports - device extension (nr. 489) - author 'QCOM' [platform '' | contact 'Jeff +/// Leger @jackohound']
+/// +/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_QCOM_multiview_per_view_viewports.html +/// +///
+public static class VkQcomMultiviewPerViewViewports +{ + /// The spec version. + public const uint VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION = 1; + + /// The extension name. + public const string VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME = "VK_QCOM_multiview_per_view_viewports"; + + /// + /// An UTF8 null terminated version of + /// represented by an UTF16 string. + /// + /// + /// Example usage:
+ ///
+ /// fixed(char* ptr = VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME_UTF8_NT) {
+ /// sbyte* utf8NtPtr = (sbyte*)ptr; // utf8NtPtr - can now be passed and used directly as a utf8_nt string for + /// unmanaged code.
+ /// } + ///
+ public const string VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME_UTF8_NT = + "\u4b56\u515f\u4f43\u5f4d\u554d\u544c\u5649\u4549\u5f57\u4550\u5f52\u4956\u5745\u565f\u4549\u5057\u524f\u5354\u455f\u5458\u4e45\u4953\u4e4f\u4e5f\u4d41\u0045"; +} \ No newline at end of file diff --git a/src/Exomia.Vulkan.Api.Core/Structs/VkSubresourceLayout.cs b/src/Exomia.Vulkan.Api.Core/Structs/VkSubresourceLayout.cs index d20cab29..c375d5cf 100644 --- a/src/Exomia.Vulkan.Api.Core/Structs/VkSubresourceLayout.cs +++ b/src/Exomia.Vulkan.Api.Core/Structs/VkSubresourceLayout.cs @@ -17,13 +17,6 @@ namespace Exomia.Vulkan.Api.Core; /// VkSubresourceLayout - Structure specifying subresource layout - /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkSubresourceLayout.html ///
-/// -/// -/// -/// returnedonlytrue -/// -/// -/// [StructLayout(LayoutKind.Sequential)] public struct VkSubresourceLayout {