diff --git a/.version b/.version
index 32d64675..6e442ec7 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-1.3.290
\ No newline at end of file
+1.3.291
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs b/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs
index 422e87fb..1b0b8326 100644
--- a/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs
+++ b/src/Exomia.Vulkan.Api.Core/Enums/VkStructureType.cs
@@ -4897,6 +4897,24 @@ public enum VkStructureType
///
VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR = 1000470006,
+ ///
+ /// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType
+ ///
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD = 1000476000,
+
+ ///
+ /// VK_STRUCTURE_TYPE_ANTI_LAG_DATA_AMD
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType
+ ///
+ VK_STRUCTURE_TYPE_ANTI_LAG_DATA_AMD = 1000476001,
+
+ ///
+ /// VK_STRUCTURE_TYPE_ANTI_LAG_PRESENTATION_INFO_AMD
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType
+ ///
+ VK_STRUCTURE_TYPE_ANTI_LAG_PRESENTATION_INFO_AMD = 1000476002,
+
///
/// VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/html/vkspec.html#VkStructureType
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAmdAntiLag.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAmdAntiLag.cs
new file mode 100644
index 00000000..0edb7cfd
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAmdAntiLag.cs
@@ -0,0 +1,76 @@
+#region License
+
+// Copyright (c) 2018-2024, 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.VkAmdAntiLag;
+
+#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_AMD_anti_lag - device extension (nr. 477) - author 'AMD' [platform '' | contact 'Stu Smith']
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_AMD_anti_lag.html
+///
+[VkDeviceExt]
+public static unsafe class VkAmdAntiLag
+{
+ /// The spec version.
+ public const uint VK_AMD_ANTI_LAG_SPEC_VERSION = 1;
+
+ /// The extension name.
+ public const string VK_AMD_ANTI_LAG_EXTENSION_NAME = "VK_AMD_anti_lag";
+
+ ///
+ /// An UTF8 null terminated version of represented by an UTF16
+ /// string.
+ ///
+ ///
+ /// Example usage:
+ ///
+ /// fixed(char* ptr = VK_AMD_ANTI_LAG_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_AMD_ANTI_LAG_EXTENSION_NAME_UTF8_NT = "\u4b56\u415f\u444d\u415f\u544e\u5f49\u414c\u5f47\u5845\u4554\u534e\u4f49\u5f4e\u414e\u454d\u0000";
+
+ ///
+ /// vkAntiLagUpdateAMD - Provide information to reduce latency -
+ /// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkAntiLagUpdateAMD.html
+ ///
+ /// device is the logical device
+ /// pData is a pointer to a VkAntiLagDataAMD structure containing latency reduction parameters.
+ public static readonly delegate*<
+ VkDevice /*device*/,
+ VkAntiLagDataAMD* /*pData*/,
+ void> vkAntiLagUpdateAMD = null;
+
+ /// Loads all function pointer based on the device for this extension. (see remarks!)
+ /// The device that the function pointers will be compatible with.
+ ///
+ /// This load method makes the following function pointers available:
+ ///
+ /// -
+ /// vkAntiLagUpdateAMD
+ ///
+ ///
+ ///
+ public static void Load(VkDevice device)
+ {
+ fixed (delegate** pvkAntiLagUpdateAMD = &vkAntiLagUpdateAMD)
+ {
+ *pvkAntiLagUpdateAMD = (delegate*)GetVkFunction(device, "\u6b76\u6e41\u6974\u614c\u5567\u6470\u7461\u4165\u444d\u0000");
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagDataAMD.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagDataAMD.cs
new file mode 100644
index 00000000..11f58fdc
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagDataAMD.cs
@@ -0,0 +1,47 @@
+#region License
+
+// Copyright (c) 2018-2024, 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;
+
+///
+/// VkAntiLagDataAMD - Structure specifying the parameters for vkAntiLagUpdateAMD -
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkAntiLagDataAMD.html
+///
+[StructLayout(LayoutKind.Sequential)]
+public unsafe struct VkAntiLagDataAMD
+{
+ /// The stype of this structure.
+ public const VkStructureType STYPE = VK_STRUCTURE_TYPE_ANTI_LAG_DATA_AMD;
+
+ /// sType is a VkStructureType value identifying this structure.
+ public VkStructureType sType;
+
+ /// pNext is NULL or a pointer to a structure extending this structure.
+ public void* pNext;
+
+ /// mode is a VkAntiLagModeAMD value specifying the anti-lag status.
+ public VkAntiLagModeAMD mode;
+
+ ///
+ /// maxFPS is the framerate limit, in frames per second, used by the application. This limit will be imposed if
+ /// anti-lag is enabled. If the application tries to render faster, the framerate will be reduced to match this limit.
+ /// A value of 0 will disable the limit.
+ ///
+ public uint maxFPS;
+
+ ///
+ /// pPresentationInfo is a pointer to a VkAntiLagPresentationInfoAMD structure containing information about the
+ /// application stage.
+ ///
+ public VkAntiLagPresentationInfoAMD* pPresentationInfo;
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagModeAMD.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagModeAMD.cs
new file mode 100644
index 00000000..4af4579f
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagModeAMD.cs
@@ -0,0 +1,33 @@
+#region License
+
+// Copyright (c) 2018-2024, 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;
+
+///
+/// VkAntiLagModeAMD - Set the status of the anti-lag feature -
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkAntiLagModeAMD.html
+///
+public enum VkAntiLagModeAMD
+{
+ ///
+ /// VK_ANTI_LAG_MODE_DRIVER_CONTROL_AMD specifies that anti-lag will be enabled or disabled depending on driver
+ /// settings.
+ ///
+ VK_ANTI_LAG_MODE_DRIVER_CONTROL_AMD = 0,
+
+ /// VK_ANTI_LAG_MODE_ON_AMD specifies that anti-lag will be enabled.
+ VK_ANTI_LAG_MODE_ON_AMD = 1,
+
+ /// VK_ANTI_LAG_MODE_OFF_AMD specifies that anti-lag will be disabled.
+ VK_ANTI_LAG_MODE_OFF_AMD = 2
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagPresentationInfoAMD.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagPresentationInfoAMD.cs
new file mode 100644
index 00000000..d678d869
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagPresentationInfoAMD.cs
@@ -0,0 +1,41 @@
+#region License
+
+// Copyright (c) 2018-2024, 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;
+
+///
+/// VkAntiLagPresentationInfoAMD - Structure specifying information about stage -
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkAntiLagPresentationInfoAMD.html
+///
+[StructLayout(LayoutKind.Sequential)]
+public unsafe struct VkAntiLagPresentationInfoAMD
+{
+ /// The stype of this structure.
+ public const VkStructureType STYPE = VK_STRUCTURE_TYPE_ANTI_LAG_PRESENTATION_INFO_AMD;
+
+ /// sType is a VkStructureType value identifying this structure.
+ public VkStructureType sType;
+
+ /// pNext is NULL or a pointer to a structure extending this structure.
+ public void* pNext;
+
+ /// stage is a VkAntiLagStageAMD value specifying the current application stage.
+ public VkAntiLagStageAMD stage;
+
+ ///
+ /// frameIndex is set just before the application processes input data (VK_ANTI_LAG_STAGE_INPUT_AMD). The same
+ /// frameIndex value should be set before the frame with current input data will be presented by
+ /// vkQueuePresentKHR(VK_ANTI_LAG_STAGE_PRESENT_AMD). This should be done for each frame.
+ ///
+ public ulong frameIndex;
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagStageAMD.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagStageAMD.cs
new file mode 100644
index 00000000..381fbbad
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkAntiLagStageAMD.cs
@@ -0,0 +1,31 @@
+#region License
+
+// Copyright (c) 2018-2024, 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;
+
+///
+/// VkAntiLagStageAMD - Report the application stage -
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkAntiLagStageAMD.html
+///
+public enum VkAntiLagStageAMD
+{
+ /// VK_ANTI_LAG_STAGE_INPUT_AMD specifies the stage before processing input.
+ VK_ANTI_LAG_STAGE_INPUT_AMD = 0,
+
+ ///
+ /// VK_ANTI_LAG_STAGE_PRESENT_AMD specifies the stage before
+ /// vkQueuePresentKHR
+ /// .
+ ///
+ VK_ANTI_LAG_STAGE_PRESENT_AMD = 1
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkPhysicalDeviceAntiLagFeaturesAMD.cs b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkPhysicalDeviceAntiLagFeaturesAMD.cs
new file mode 100644
index 00000000..0863c0cd
--- /dev/null
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/AMD/VK_AMD_anti_lag/VkPhysicalDeviceAntiLagFeaturesAMD.cs
@@ -0,0 +1,50 @@
+#region License
+
+// Copyright (c) 2018-2024, 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;
+
+///
+/// VkPhysicalDeviceAntiLagFeaturesAMD - Structure describing whether VK_AMD_anti_lag can be supported by an
+/// implementation. -
+///
+/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceAntiLagFeaturesAMD.html
+///
+///
+///
+///
+/// -
+/// structextendsVkPhysicalDeviceFeatures2,VkDeviceCreateInfo
+///
+///
+///
+[VkStructExtends("VkPhysicalDeviceFeatures2,VkDeviceCreateInfo")]
+[StructLayout(LayoutKind.Sequential)]
+public unsafe struct VkPhysicalDeviceAntiLagFeaturesAMD
+{
+ /// The stype of this structure.
+ public const VkStructureType STYPE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD;
+
+ /// sType is a VkStructureType value identifying this structure.
+ public VkStructureType sType;
+
+ /// pNext is NULL or a pointer to a structure extending this structure.
+ public void* pNext;
+
+ ///
+ /// antiLag indicates whether the implementation supports AMD Radeon™ Anti-Lag functionality. The antiLag feature
+ /// only supports a single GPU and must not be enabled if VkDeviceGroupDeviceCreateInfo::physicalDeviceCount is greater
+ /// than 1.
+ ///
+ public VkBool32 antiLag;
+}
\ No newline at end of file
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_shader_object/VkColorBlendAdvancedEXT.cs b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_shader_object/VkColorBlendAdvancedEXT.cs
index 601c3310..3428c194 100644
--- a/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_shader_object/VkColorBlendAdvancedEXT.cs
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/EXT/VK_EXT_shader_object/VkColorBlendAdvancedEXT.cs
@@ -39,7 +39,7 @@ public struct VkColorBlendAdvancedEXT
public VkBlendOverlapEXT blendOverlap;
///
- /// clampResults specifies the results must be clamped to the [0,1] range before writing to the attachment, which
+ /// clampResults specifies that results must be clamped to the [0,1] range before writing to the attachment, which
/// is useful when the attachment format is not normalized fixed-point.
///
public VkBool32 clampResults;
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_copy_commands2/VkKhrCopyCommands2.cs b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_copy_commands2/VkKhrCopyCommands2.cs
index 0821f3d3..9ad1a06f 100644
--- a/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_copy_commands2/VkKhrCopyCommands2.cs
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/KHR/VK_KHR_copy_commands2/VkKhrCopyCommands2.cs
@@ -19,7 +19,7 @@
namespace Exomia.Vulkan.Api.Core;
///
-/// VK_KHR_copy_commands2 - device extension (nr. 338) - author 'KHR' [platform '' | contact 'Jeff Leger @jackohound']
+/// VK_KHR_copy_commands2 - device extension (nr. 338) - author 'KHR' [platform '' | contact 'Matthew Netsch @mnetsch']
///
/// https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_copy_commands2.html
///
diff --git a/src/Exomia.Vulkan.Api.Core/Extensions/NV/VK_NV_ray_tracing/VkNvRayTracing.cs b/src/Exomia.Vulkan.Api.Core/Extensions/NV/VK_NV_ray_tracing/VkNvRayTracing.cs
index 15557485..d68694ab 100644
--- a/src/Exomia.Vulkan.Api.Core/Extensions/NV/VK_NV_ray_tracing/VkNvRayTracing.cs
+++ b/src/Exomia.Vulkan.Api.Core/Extensions/NV/VK_NV_ray_tracing/VkNvRayTracing.cs
@@ -25,6 +25,7 @@ namespace Exomia.Vulkan.Api.Core;
///
[VkDepends("(VK_KHR_get_physical_device_properties2+VK_KHR_get_memory_requirements2),VK_VERSION_1_1")]
[VkDeviceExt]
+[Obsolete("deprecated by VK_KHR_ray_tracing_pipeline", false, UrlFormat = "https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_NV_ray_tracing.html#_deprecation_state")]
public static unsafe class VkNvRayTracing
{
/// The spec version.