vulkan

package module
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 16, 2024 License: MIT Imports: 5 Imported by: 0

README

Golang Bindings for Vulkan API version-1.1.88 GoDoc

Package vulkan provides Go bindings for Vulkan — a low-overhead, cross-platform 3D graphics and compute API. Updated October 13, 2018 — Vulkan 1.1.88.

Introduction

Vulkan API is the result of 18 months in an intense collaboration between leading hardware, game engine and platform vendors, built on significant contributions from multiple Khronos members. Vulkan is designed for portability across multiple platforms with desktop and mobile GPU architectures.

Read the brief: https://developer.nvidia.com/engaging-voyage-vulkan

The binding allows one to use Vulkan API directly within Go code, avoiding adding lots of C/C++ in the projects, also can be used to study Vulkan without diving too deep into C/C++ language semantics. For me it's just a matter of taste, writing Go code is simply more pleasant experience.

See all demos in vulkan-go/demos.

Project history timeline

  • 2016-02-16 Vulkan API publicly released.

  • 2016-03-06 vulkan-go initial commit and first binding.

  • 2016-05-14 Finally received my NVIDIA Shield Tablet K1 (DHL lost the first parcel), I decided to use tablet because it was the first device supporting Vulkan out of the box. And that was a really good implementation, much wow very reference.

  • 2016-05-17 Created android-go project in order to run Vulkan on the android platform.

  • 2016-05-23 First android-go + vulkan program runs on Tablet K1 (screenshot).

  • 2016-05-24 Improved VulkanInfo example runs on Tablet K1 (screenshot).

  • 2016-05-28 android-go released into public (Reddit post) with plenty of examples including GLES/EGL.

  • 2016-08-13 Finished an app that should draw triangle (ported from tri.c from LunarG demos). Draws nothing instead.

  • 2016-08-13 First unsuccessful attempt to write a spinning cube example. More than 25 hours spent, 2.5k lines of C code rewritten into 900 lines of Go code. The reference code was found in some very old LunarG demo, it seems I should've used the latest one.. At least got the validation layers working and found some bugs in the triangle app code.

  • 2016-08-16 First Vulkan API program in Go that draws triangle runs on Tablet K1 (photo), validaton layers work perfectly too.

  • 2016-08-16 Public announce of this project (Reddit post). Reaction was "Meh".

  • 2016-11-01 MoltenVK driver merged into GLFW (see GLFW issue #870) and this made possible to use Vulkan API under Apple OS X or macOS.

  • 2016-11-06 VulkanInfo and VulkanDraw both ported to desktop OS X and use GLFW to initialize Vulkan (screen #1 and screen #2)

  • 2016-11-07 VulkanInfo and VulkanDraw run fine on NVIDIA GTX980 initialized through GLFW under Windows 10 (screen #1 and screen #2).

  • 2016-11-08 VulkanInfo runs in headless (a.k.a computing) mode in Amazon AWS cloud on P2 Instance equipped Tesla K80 (screenshot).

  • 2016-11-09 ios-go project started, it's very easy to run Golang apps on iOS that use custom surface, for my case it was Metal surface.

  • 2016-11-11 VulkanInfo runs fine on my iPhone under iOS (screenshot), and so does VulkanDraw (photo also GPU report from XCode)

  • 2016-11-13 Second unsuccessful attempt to write spinning cube. 25 hours spent. The approach was highly inspired by Mali Vulkan SDK for Android 1.0 and I created initial version of vulkan-go/asche — a higher level framework to simplify Vulkan initialization for new apps.

  • 2016-11-29 Generic Linux support added in using GLFW (Issue #2) thanks @jfreymuth.

  • 2017-05-06 Third, successful attempt to write spining cube example. 16 hours spent, 4K LOC of C code rewritten from cube.c of LunarG demos. The whole process has been screencasted, maybe I will release it one day.

  • 2017-05-06 vulkan-go/asche complete.

  • 2018-10-13 Updated to Vulkan 1.1.88 spec.

  • 2022-11-26 Changed loader for Android. Now compatible with Android 8 (Oreo) API level 26 a higher.

How to use

Usage of this project is straightforward due to the stateless nature of Vulkan API. Just import the package like this:

import vk "github.com/KaijuEngine/go-vulkan"

Set the GetProcAddress pointer (used to look up Vulkan functions) using SetGetInstanceProcAddr or SetDefaultGetInstanceProcAddr. After that you can call Init to initialise the library. For example:

// Using SDL2:
vk.SetGetInstanceProcAddr(sdl.VulkanGetVkGetInstanceProcAddr())

// OR using GLFW:
vk.SetGetInstanceProcAddr(glfw.GetVulkanGetInstanceProcAddress())

// OR without using a windowing library (Linux only, recommended for compute-only tasks)
if err := vk.SetDefaultGetInstanceProcAddr(); err != nil {
    panic(err)
}

if err := vk.Init(); err != nil {
    panic(err)
}

And you're set. I must warn you that using the API properly is not an easy task at all, so beware and follow the official documentation: https://www.khronos.org/registry/vulkan/specs/1.0/html/vkspec.html

In order to simplify development, I created a high-level framework that manages Vulkan platform state and initialization. It is called asche because when you throw a gopher into volcano you get a pile of ash. Currently it's used in VulkanCube demo app.

MoltenVK os macOS

MoltenVK provides a MoltenVK.xcframework which contains static libraries for all Apple platforms. Unfortuantely, linking with a xcframework outside of XCode is not possible.

Instead vulkan-go expects the dylibs to be present in the library search path.

Follow the build instructions, but instead of make install manually copy ./Package/Latest/MoltenVK/dylib/macOS/libMoltenVK.dylib to /usr/local/lib

Validation Layers

A good brief of the current state of Vulkan validation layers: Explore the Vulkan Loader and Validation Layers (PDF).

There is a full support of validation layers with custom callbacks in Go.

Khronos Group releasing compiled Validation Layers like .so library directly on their GitHub respository

Or You can build them from https://github.com/LunarG/VulkanTools like this:

$ cd build-android
$ ./update_external_sources_android.sh
$ ./android-generate.sh
$ ndk-build

After that you'd copy the files to android/jni/libs in your project and activate the ValidationLayers.mk in your Android.mk so when building APK they will be copied alongside with your shared library. It just works then:

[INFO] Instance extensions: [VK_KHR_surface VK_KHR_android_surface]
[INFO] Instance layers: [VK_LAYER_LUNARG_screenshot VK_LAYER_GOOGLE_unique_objects VK_LAYER_LUNARG_api_dump VK_LAYER_LUNARG_image VK_LAYER_LUNARG_core_validation VK_LAYER_LUNARG_object_tracker VK_LAYER_GOOGLE_threading VK_LAYER_LUNARG_parameter_validation VK_LAYER_LUNARG_swapchain]

[Layer Swapchain][ERROR 4] The surface in pCreateInfo->surface, that was given to vkCreateSwapchainKHR(), must be a surface that is supported by the device as determined by vkGetPhysicalDeviceSurfaceSupportKHR().  However, vkGetPhysicalDeviceSurfaceSupportKHR() was never called with this surface.

[Layer Swapchain][ERROR 10] vkCreateSwapchainKHR() called with a non-supported pCreateInfo->compositeAlpha (i.e. VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR).  Supported values are:
     VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR

[Layer DS][ERROR 8] Attempt to set lineWidth to 0.000000 but physical device wideLines feature not supported/enabled so lineWidth must be 1.0f!

[Layer DS][ERROR 22] Unable to allocate 2 descriptors of type VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER from pool 0x1c. This pool only has 1 descriptors of this type remaining.

License

MIT

Documentation

Overview

Package vulkan provides Go bindings for vulkan.h

Index

Constants

View Source
const (
	// NoPrototypes as defined in vulkan/<predefine>:24
	NoPrototypes = 1
	// Version10 as defined in vulkan/vulkan_core.h:30
	Version10 = 1
	// ApiVersion10 as defined in vulkan/vulkan_core.h:40
	ApiVersion10 = 4194304
	// HeaderVersion as defined in vulkan/vulkan_core.h:46
	HeaderVersion = 88
	// LodClampNone as defined in vulkan/vulkan_core.h:97
	LodClampNone = 1000.0
	// RemainingMipLevels as defined in vulkan/vulkan_core.h:98
	RemainingMipLevels = (^uint32(0))
	// RemainingArrayLayers as defined in vulkan/vulkan_core.h:99
	RemainingArrayLayers = (^uint32(0))
	// WholeSize as defined in vulkan/vulkan_core.h:100
	WholeSize = (^uint64(0))
	// AttachmentUnused as defined in vulkan/vulkan_core.h:101
	AttachmentUnused = (^uint32(0))
	// True as defined in vulkan/vulkan_core.h:102
	True = 1
	// False as defined in vulkan/vulkan_core.h:103
	False = 0
	// QueueFamilyIgnored as defined in vulkan/vulkan_core.h:104
	QueueFamilyIgnored = (^uint32(0))
	// SubpassExternal as defined in vulkan/vulkan_core.h:105
	SubpassExternal = (^uint32(0))
	// MaxPhysicalDeviceNameSize as defined in vulkan/vulkan_core.h:106
	MaxPhysicalDeviceNameSize = 256
	// UuidSize as defined in vulkan/vulkan_core.h:107
	UuidSize = 16
	// MaxMemoryTypes as defined in vulkan/vulkan_core.h:108
	MaxMemoryTypes = 32
	// MaxMemoryHeaps as defined in vulkan/vulkan_core.h:109
	MaxMemoryHeaps = 16
	// MaxExtensionNameSize as defined in vulkan/vulkan_core.h:110
	MaxExtensionNameSize = 256
	// MaxDescriptionSize as defined in vulkan/vulkan_core.h:111
	MaxDescriptionSize = 256
	// Version11 as defined in vulkan/vulkan_core.h:3787
	Version11 = 1
	// ApiVersion11 as defined in vulkan/vulkan_core.h:3789
	ApiVersion11 = 4198400
	// MaxDeviceGroupSize as defined in vulkan/vulkan_core.h:3795
	MaxDeviceGroupSize = 32
	// LuidSize as defined in vulkan/vulkan_core.h:3796
	LuidSize = 8
	// QueueFamilyExternal as defined in vulkan/vulkan_core.h:3797
	QueueFamilyExternal = (^uint32(0) - 1)
	// KhrSurface as defined in vulkan/vulkan_core.h:4665
	KhrSurface = 1
	// KhrSurfaceSpecVersion as defined in vulkan/vulkan_core.h:4668
	KhrSurfaceSpecVersion = 25
	// KhrSurfaceExtensionName as defined in vulkan/vulkan_core.h:4669
	KhrSurfaceExtensionName = "VK_KHR_surface"
	// KhrSwapchain as defined in vulkan/vulkan_core.h:4787
	KhrSwapchain = 1
	// KhrSwapchainSpecVersion as defined in vulkan/vulkan_core.h:4790
	KhrSwapchainSpecVersion = 70
	// KhrSwapchainExtensionName as defined in vulkan/vulkan_core.h:4791
	KhrSwapchainExtensionName = "VK_KHR_swapchain"
	// KhrDisplay as defined in vulkan/vulkan_core.h:4948
	KhrDisplay = 1
	// KhrDisplaySpecVersion as defined in vulkan/vulkan_core.h:4952
	KhrDisplaySpecVersion = 21
	// KhrDisplayExtensionName as defined in vulkan/vulkan_core.h:4953
	KhrDisplayExtensionName = "VK_KHR_display"
	// KhrDisplaySwapchain as defined in vulkan/vulkan_core.h:5076
	KhrDisplaySwapchain = 1
	// KhrDisplaySwapchainSpecVersion as defined in vulkan/vulkan_core.h:5077
	KhrDisplaySwapchainSpecVersion = 9
	// KhrDisplaySwapchainExtensionName as defined in vulkan/vulkan_core.h:5078
	KhrDisplaySwapchainExtensionName = "VK_KHR_display_swapchain"
	// KhrSamplerMirrorClampToEdge as defined in vulkan/vulkan_core.h:5100
	KhrSamplerMirrorClampToEdge = 1
	// KhrSamplerMirrorClampToEdgeSpecVersion as defined in vulkan/vulkan_core.h:5101
	KhrSamplerMirrorClampToEdgeSpecVersion = 1
	// KhrSamplerMirrorClampToEdgeExtensionName as defined in vulkan/vulkan_core.h:5102
	KhrSamplerMirrorClampToEdgeExtensionName = "VK_KHR_sampler_mirror_clamp_to_edge"
	// KhrMultiview as defined in vulkan/vulkan_core.h:5105
	KhrMultiview = 1
	// KhrMultiviewSpecVersion as defined in vulkan/vulkan_core.h:5106
	KhrMultiviewSpecVersion = 1
	// KhrMultiviewExtensionName as defined in vulkan/vulkan_core.h:5107
	KhrMultiviewExtensionName = "VK_KHR_multiview"
	// KhrGetPhysicalDeviceProperties2 as defined in vulkan/vulkan_core.h:5117
	KhrGetPhysicalDeviceProperties2 = 1
	// KhrGetPhysicalDeviceProperties2SpecVersion as defined in vulkan/vulkan_core.h:5118
	KhrGetPhysicalDeviceProperties2SpecVersion = 1
	// KhrGetPhysicalDeviceProperties2ExtensionName as defined in vulkan/vulkan_core.h:5119
	KhrGetPhysicalDeviceProperties2ExtensionName = "VK_KHR_get_physical_device_properties2"
	// KhrDeviceGroup as defined in vulkan/vulkan_core.h:5183
	KhrDeviceGroup = 1
	// KhrDeviceGroupSpecVersion as defined in vulkan/vulkan_core.h:5184
	KhrDeviceGroupSpecVersion = 3
	// KhrDeviceGroupExtensionName as defined in vulkan/vulkan_core.h:5185
	KhrDeviceGroupExtensionName = "VK_KHR_device_group"
	// KhrShaderDrawParameters as defined in vulkan/vulkan_core.h:5237
	KhrShaderDrawParameters = 1
	// KhrShaderDrawParametersSpecVersion as defined in vulkan/vulkan_core.h:5238
	KhrShaderDrawParametersSpecVersion = 1
	// KhrShaderDrawParametersExtensionName as defined in vulkan/vulkan_core.h:5239
	KhrShaderDrawParametersExtensionName = "VK_KHR_shader_draw_parameters"
	// KhrMaintenance1 as defined in vulkan/vulkan_core.h:5242
	KhrMaintenance1 = 1
	// KhrMaintenance1SpecVersion as defined in vulkan/vulkan_core.h:5243
	KhrMaintenance1SpecVersion = 2
	// KhrMaintenance1ExtensionName as defined in vulkan/vulkan_core.h:5244
	KhrMaintenance1ExtensionName = "VK_KHR_maintenance1"
	// KhrDeviceGroupCreation as defined in vulkan/vulkan_core.h:5258
	KhrDeviceGroupCreation = 1
	// KhrDeviceGroupCreationSpecVersion as defined in vulkan/vulkan_core.h:5259
	KhrDeviceGroupCreationSpecVersion = 1
	// KhrDeviceGroupCreationExtensionName as defined in vulkan/vulkan_core.h:5260
	KhrDeviceGroupCreationExtensionName = "VK_KHR_device_group_creation"
	// KhrExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:5277
	KhrExternalMemoryCapabilities = 1
	// KhrExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5278
	KhrExternalMemoryCapabilitiesSpecVersion = 1
	// KhrExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5279
	KhrExternalMemoryCapabilitiesExtensionName = "VK_KHR_external_memory_capabilities"
	// KhrExternalMemory as defined in vulkan/vulkan_core.h:5313
	KhrExternalMemory = 1
	// KhrExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:5314
	KhrExternalMemorySpecVersion = 1
	// KhrExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:5315
	KhrExternalMemoryExtensionName = "VK_KHR_external_memory"
	// KhrExternalMemoryFd as defined in vulkan/vulkan_core.h:5326
	KhrExternalMemoryFd = 1
	// KhrExternalMemoryFdSpecVersion as defined in vulkan/vulkan_core.h:5327
	KhrExternalMemoryFdSpecVersion = 1
	// KhrExternalMemoryFdExtensionName as defined in vulkan/vulkan_core.h:5328
	KhrExternalMemoryFdExtensionName = "VK_KHR_external_memory_fd"
	// KhrExternalSemaphoreCapabilities as defined in vulkan/vulkan_core.h:5367
	KhrExternalSemaphoreCapabilities = 1
	// KhrExternalSemaphoreCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5368
	KhrExternalSemaphoreCapabilitiesSpecVersion = 1
	// KhrExternalSemaphoreCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5369
	KhrExternalSemaphoreCapabilitiesExtensionName = "VK_KHR_external_semaphore_capabilities"
	// KhrExternalSemaphore as defined in vulkan/vulkan_core.h:5394
	KhrExternalSemaphore = 1
	// KhrExternalSemaphoreSpecVersion as defined in vulkan/vulkan_core.h:5395
	KhrExternalSemaphoreSpecVersion = 1
	// KhrExternalSemaphoreExtensionName as defined in vulkan/vulkan_core.h:5396
	KhrExternalSemaphoreExtensionName = "VK_KHR_external_semaphore"
	// KhrExternalSemaphoreFd as defined in vulkan/vulkan_core.h:5407
	KhrExternalSemaphoreFd = 1
	// KhrExternalSemaphoreFdSpecVersion as defined in vulkan/vulkan_core.h:5408
	KhrExternalSemaphoreFdSpecVersion = 1
	// KhrExternalSemaphoreFdExtensionName as defined in vulkan/vulkan_core.h:5409
	KhrExternalSemaphoreFdExtensionName = "VK_KHR_external_semaphore_fd"
	// KhrPushDescriptor as defined in vulkan/vulkan_core.h:5442
	KhrPushDescriptor = 1
	// KhrPushDescriptorSpecVersion as defined in vulkan/vulkan_core.h:5443
	KhrPushDescriptorSpecVersion = 2
	// KhrPushDescriptorExtensionName as defined in vulkan/vulkan_core.h:5444
	KhrPushDescriptorExtensionName = "VK_KHR_push_descriptor"
	// Khr16bitStorage as defined in vulkan/vulkan_core.h:5473
	Khr16bitStorage = 1
	// Khr16bitStorageSpecVersion as defined in vulkan/vulkan_core.h:5474
	Khr16bitStorageSpecVersion = 1
	// Khr16bitStorageExtensionName as defined in vulkan/vulkan_core.h:5475
	Khr16bitStorageExtensionName = "VK_KHR_16bit_storage"
	// KhrIncrementalPresent as defined in vulkan/vulkan_core.h:5481
	KhrIncrementalPresent = 1
	// KhrIncrementalPresentSpecVersion as defined in vulkan/vulkan_core.h:5482
	KhrIncrementalPresentSpecVersion = 1
	// KhrIncrementalPresentExtensionName as defined in vulkan/vulkan_core.h:5483
	KhrIncrementalPresentExtensionName = "VK_KHR_incremental_present"
	// KhrDescriptorUpdateTemplate as defined in vulkan/vulkan_core.h:5505
	KhrDescriptorUpdateTemplate = 1
	// KhrDescriptorUpdateTemplateSpecVersion as defined in vulkan/vulkan_core.h:5509
	KhrDescriptorUpdateTemplateSpecVersion = 1
	// KhrDescriptorUpdateTemplateExtensionName as defined in vulkan/vulkan_core.h:5510
	KhrDescriptorUpdateTemplateExtensionName = "VK_KHR_descriptor_update_template"
	// KhrCreateRenderpass2 as defined in vulkan/vulkan_core.h:5546
	KhrCreateRenderpass2 = 1
	// KhrCreateRenderpass2SpecVersion as defined in vulkan/vulkan_core.h:5547
	KhrCreateRenderpass2SpecVersion = 1
	// KhrCreateRenderpass2ExtensionName as defined in vulkan/vulkan_core.h:5548
	KhrCreateRenderpass2ExtensionName = "VK_KHR_create_renderpass2"
	// KhrSharedPresentableImage as defined in vulkan/vulkan_core.h:5654
	KhrSharedPresentableImage = 1
	// KhrSharedPresentableImageSpecVersion as defined in vulkan/vulkan_core.h:5655
	KhrSharedPresentableImageSpecVersion = 1
	// KhrSharedPresentableImageExtensionName as defined in vulkan/vulkan_core.h:5656
	KhrSharedPresentableImageExtensionName = "VK_KHR_shared_presentable_image"
	// KhrExternalFenceCapabilities as defined in vulkan/vulkan_core.h:5673
	KhrExternalFenceCapabilities = 1
	// KhrExternalFenceCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:5674
	KhrExternalFenceCapabilitiesSpecVersion = 1
	// KhrExternalFenceCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:5675
	KhrExternalFenceCapabilitiesExtensionName = "VK_KHR_external_fence_capabilities"
	// KhrExternalFence as defined in vulkan/vulkan_core.h:5700
	KhrExternalFence = 1
	// KhrExternalFenceSpecVersion as defined in vulkan/vulkan_core.h:5701
	KhrExternalFenceSpecVersion = 1
	// KhrExternalFenceExtensionName as defined in vulkan/vulkan_core.h:5702
	KhrExternalFenceExtensionName = "VK_KHR_external_fence"
	// KhrExternalFenceFd as defined in vulkan/vulkan_core.h:5713
	KhrExternalFenceFd = 1
	// KhrExternalFenceFdSpecVersion as defined in vulkan/vulkan_core.h:5714
	KhrExternalFenceFdSpecVersion = 1
	// KhrExternalFenceFdExtensionName as defined in vulkan/vulkan_core.h:5715
	KhrExternalFenceFdExtensionName = "VK_KHR_external_fence_fd"
	// KhrMaintenance2 as defined in vulkan/vulkan_core.h:5748
	KhrMaintenance2 = 1
	// KhrMaintenance2SpecVersion as defined in vulkan/vulkan_core.h:5749
	KhrMaintenance2SpecVersion = 1
	// KhrMaintenance2ExtensionName as defined in vulkan/vulkan_core.h:5750
	KhrMaintenance2ExtensionName = "VK_KHR_maintenance2"
	// KhrGetSurfaceCapabilities2 as defined in vulkan/vulkan_core.h:5769
	KhrGetSurfaceCapabilities2 = 1
	// KhrGetSurfaceCapabilities2SpecVersion as defined in vulkan/vulkan_core.h:5770
	KhrGetSurfaceCapabilities2SpecVersion = 1
	// KhrGetSurfaceCapabilities2ExtensionName as defined in vulkan/vulkan_core.h:5771
	KhrGetSurfaceCapabilities2ExtensionName = "VK_KHR_get_surface_capabilities2"
	// KhrVariablePointers as defined in vulkan/vulkan_core.h:5808
	KhrVariablePointers = 1
	// KhrVariablePointersSpecVersion as defined in vulkan/vulkan_core.h:5809
	KhrVariablePointersSpecVersion = 1
	// KhrVariablePointersExtensionName as defined in vulkan/vulkan_core.h:5810
	KhrVariablePointersExtensionName = "VK_KHR_variable_pointers"
	// KhrGetDisplayProperties2 as defined in vulkan/vulkan_core.h:5816
	KhrGetDisplayProperties2 = 1
	// KhrGetDisplayProperties2SpecVersion as defined in vulkan/vulkan_core.h:5817
	KhrGetDisplayProperties2SpecVersion = 1
	// KhrGetDisplayProperties2ExtensionName as defined in vulkan/vulkan_core.h:5818
	KhrGetDisplayProperties2ExtensionName = "VK_KHR_get_display_properties2"
	// KhrDedicatedAllocation as defined in vulkan/vulkan_core.h:5880
	KhrDedicatedAllocation = 1
	// KhrDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:5881
	KhrDedicatedAllocationSpecVersion = 3
	// KhrDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:5882
	KhrDedicatedAllocationExtensionName = "VK_KHR_dedicated_allocation"
	// KhrStorageBufferStorageClass as defined in vulkan/vulkan_core.h:5890
	KhrStorageBufferStorageClass = 1
	// KhrStorageBufferStorageClassSpecVersion as defined in vulkan/vulkan_core.h:5891
	KhrStorageBufferStorageClassSpecVersion = 1
	// KhrStorageBufferStorageClassExtensionName as defined in vulkan/vulkan_core.h:5892
	KhrStorageBufferStorageClassExtensionName = "VK_KHR_storage_buffer_storage_class"
	// KhrRelaxedBlockLayout as defined in vulkan/vulkan_core.h:5895
	KhrRelaxedBlockLayout = 1
	// KhrRelaxedBlockLayoutSpecVersion as defined in vulkan/vulkan_core.h:5896
	KhrRelaxedBlockLayoutSpecVersion = 1
	// KhrRelaxedBlockLayoutExtensionName as defined in vulkan/vulkan_core.h:5897
	KhrRelaxedBlockLayoutExtensionName = "VK_KHR_relaxed_block_layout"
	// KhrGetMemoryRequirements2 as defined in vulkan/vulkan_core.h:5900
	KhrGetMemoryRequirements2 = 1
	// KhrGetMemoryRequirements2SpecVersion as defined in vulkan/vulkan_core.h:5901
	KhrGetMemoryRequirements2SpecVersion = 1
	// KhrGetMemoryRequirements2ExtensionName as defined in vulkan/vulkan_core.h:5902
	KhrGetMemoryRequirements2ExtensionName = "VK_KHR_get_memory_requirements2"
	// KhrImageFormatList as defined in vulkan/vulkan_core.h:5935
	KhrImageFormatList = 1
	// KhrImageFormatListSpecVersion as defined in vulkan/vulkan_core.h:5936
	KhrImageFormatListSpecVersion = 1
	// KhrImageFormatListExtensionName as defined in vulkan/vulkan_core.h:5937
	KhrImageFormatListExtensionName = "VK_KHR_image_format_list"
	// KhrSamplerYcbcrConversion as defined in vulkan/vulkan_core.h:5948
	KhrSamplerYcbcrConversion = 1
	// KhrSamplerYcbcrConversionSpecVersion as defined in vulkan/vulkan_core.h:5952
	KhrSamplerYcbcrConversionSpecVersion = 1
	// KhrSamplerYcbcrConversionExtensionName as defined in vulkan/vulkan_core.h:5953
	KhrSamplerYcbcrConversionExtensionName = "VK_KHR_sampler_ycbcr_conversion"
	// KhrBindMemory2 as defined in vulkan/vulkan_core.h:5991
	KhrBindMemory2 = 1
	// KhrBindMemory2SpecVersion as defined in vulkan/vulkan_core.h:5992
	KhrBindMemory2SpecVersion = 1
	// KhrBindMemory2ExtensionName as defined in vulkan/vulkan_core.h:5993
	KhrBindMemory2ExtensionName = "VK_KHR_bind_memory2"
	// KhrMaintenance3 as defined in vulkan/vulkan_core.h:6015
	KhrMaintenance3 = 1
	// KhrMaintenance3SpecVersion as defined in vulkan/vulkan_core.h:6016
	KhrMaintenance3SpecVersion = 1
	// KhrMaintenance3ExtensionName as defined in vulkan/vulkan_core.h:6017
	KhrMaintenance3ExtensionName = "VK_KHR_maintenance3"
	// KhrDrawIndirectCount as defined in vulkan/vulkan_core.h:6033
	KhrDrawIndirectCount = 1
	// KhrDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:6034
	KhrDrawIndirectCountSpecVersion = 1
	// KhrDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:6035
	KhrDrawIndirectCountExtensionName = "VK_KHR_draw_indirect_count"
	// Khr8bitStorage as defined in vulkan/vulkan_core.h:6060
	Khr8bitStorage = 1
	// Khr8bitStorageSpecVersion as defined in vulkan/vulkan_core.h:6061
	Khr8bitStorageSpecVersion = 1
	// Khr8bitStorageExtensionName as defined in vulkan/vulkan_core.h:6062
	Khr8bitStorageExtensionName = "VK_KHR_8bit_storage"
	// KhrShaderAtomicInt64 as defined in vulkan/vulkan_core.h:6074
	KhrShaderAtomicInt64 = 1
	// KhrShaderAtomicInt64SpecVersion as defined in vulkan/vulkan_core.h:6075
	KhrShaderAtomicInt64SpecVersion = 1
	// KhrShaderAtomicInt64ExtensionName as defined in vulkan/vulkan_core.h:6076
	KhrShaderAtomicInt64ExtensionName = "VK_KHR_shader_atomic_int64"
	// KhrDriverProperties as defined in vulkan/vulkan_core.h:6087
	KhrDriverProperties = 1
	// MaxDriverNameSize as defined in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVK_MAX_DRIVER_NAME_SIZE_KHR
	MaxDriverNameSize = 256
	// MaxDriverInfoSize as defined in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkVK_MAX_DRIVER_INFO_SIZE_KHR
	MaxDriverInfoSize = 256
	// KhrDriverPropertiesSpecVersion as defined in vulkan/vulkan_core.h:6090
	KhrDriverPropertiesSpecVersion = 1
	// KhrDriverPropertiesExtensionName as defined in vulkan/vulkan_core.h:6091
	KhrDriverPropertiesExtensionName = "VK_KHR_driver_properties"
	// KhrVulkanMemoryModel as defined in vulkan/vulkan_core.h:6128
	KhrVulkanMemoryModel = 1
	// KhrVulkanMemoryModelSpecVersion as defined in vulkan/vulkan_core.h:6129
	KhrVulkanMemoryModelSpecVersion = 2
	// KhrVulkanMemoryModelExtensionName as defined in vulkan/vulkan_core.h:6130
	KhrVulkanMemoryModelExtensionName = "VK_KHR_vulkan_memory_model"
	// ExtDebugReport as defined in vulkan/vulkan_core.h:6141
	ExtDebugReport = 1
	// ExtDebugReportSpecVersion as defined in vulkan/vulkan_core.h:6144
	ExtDebugReportSpecVersion = 9
	// ExtDebugReportExtensionName as defined in vulkan/vulkan_core.h:6145
	ExtDebugReportExtensionName = "VK_EXT_debug_report"
	// NvGlslShader as defined in vulkan/vulkan_core.h:6253
	NvGlslShader = 1
	// NvGlslShaderSpecVersion as defined in vulkan/vulkan_core.h:6254
	NvGlslShaderSpecVersion = 1
	// NvGlslShaderExtensionName as defined in vulkan/vulkan_core.h:6255
	NvGlslShaderExtensionName = "VK_NV_glsl_shader"
	// ExtDepthRangeUnrestricted as defined in vulkan/vulkan_core.h:6258
	ExtDepthRangeUnrestricted = 1
	// ExtDepthRangeUnrestrictedSpecVersion as defined in vulkan/vulkan_core.h:6259
	ExtDepthRangeUnrestrictedSpecVersion = 1
	// ExtDepthRangeUnrestrictedExtensionName as defined in vulkan/vulkan_core.h:6260
	ExtDepthRangeUnrestrictedExtensionName = "VK_EXT_depth_range_unrestricted"
	// ImgFilterCubic as defined in vulkan/vulkan_core.h:6263
	ImgFilterCubic = 1
	// ImgFilterCubicSpecVersion as defined in vulkan/vulkan_core.h:6264
	ImgFilterCubicSpecVersion = 1
	// ImgFilterCubicExtensionName as defined in vulkan/vulkan_core.h:6265
	ImgFilterCubicExtensionName = "VK_IMG_filter_cubic"
	// AmdRasterizationOrder as defined in vulkan/vulkan_core.h:6268
	AmdRasterizationOrder = 1
	// AmdRasterizationOrderSpecVersion as defined in vulkan/vulkan_core.h:6269
	AmdRasterizationOrderSpecVersion = 1
	// AmdRasterizationOrderExtensionName as defined in vulkan/vulkan_core.h:6270
	AmdRasterizationOrderExtensionName = "VK_AMD_rasterization_order"
	// AmdShaderTrinaryMinmax as defined in vulkan/vulkan_core.h:6290
	AmdShaderTrinaryMinmax = 1
	// AmdShaderTrinaryMinmaxSpecVersion as defined in vulkan/vulkan_core.h:6291
	AmdShaderTrinaryMinmaxSpecVersion = 1
	// AmdShaderTrinaryMinmaxExtensionName as defined in vulkan/vulkan_core.h:6292
	AmdShaderTrinaryMinmaxExtensionName = "VK_AMD_shader_trinary_minmax"
	// AmdShaderExplicitVertexParameter as defined in vulkan/vulkan_core.h:6295
	AmdShaderExplicitVertexParameter = 1
	// AmdShaderExplicitVertexParameterSpecVersion as defined in vulkan/vulkan_core.h:6296
	AmdShaderExplicitVertexParameterSpecVersion = 1
	// AmdShaderExplicitVertexParameterExtensionName as defined in vulkan/vulkan_core.h:6297
	AmdShaderExplicitVertexParameterExtensionName = "VK_AMD_shader_explicit_vertex_parameter"
	// ExtDebugMarker as defined in vulkan/vulkan_core.h:6300
	ExtDebugMarker = 1
	// ExtDebugMarkerSpecVersion as defined in vulkan/vulkan_core.h:6301
	ExtDebugMarkerSpecVersion = 4
	// ExtDebugMarkerExtensionName as defined in vulkan/vulkan_core.h:6302
	ExtDebugMarkerExtensionName = "VK_EXT_debug_marker"
	// AmdGcnShader as defined in vulkan/vulkan_core.h:6357
	AmdGcnShader = 1
	// AmdGcnShaderSpecVersion as defined in vulkan/vulkan_core.h:6358
	AmdGcnShaderSpecVersion = 1
	// AmdGcnShaderExtensionName as defined in vulkan/vulkan_core.h:6359
	AmdGcnShaderExtensionName = "VK_AMD_gcn_shader"
	// NvDedicatedAllocation as defined in vulkan/vulkan_core.h:6362
	NvDedicatedAllocation = 1
	// NvDedicatedAllocationSpecVersion as defined in vulkan/vulkan_core.h:6363
	NvDedicatedAllocationSpecVersion = 1
	// NvDedicatedAllocationExtensionName as defined in vulkan/vulkan_core.h:6364
	NvDedicatedAllocationExtensionName = "VK_NV_dedicated_allocation"
	// ExtTransformFeedback as defined in vulkan/vulkan_core.h:6387
	ExtTransformFeedback = 1
	// ExtTransformFeedbackSpecVersion as defined in vulkan/vulkan_core.h:6388
	ExtTransformFeedbackSpecVersion = 1
	// ExtTransformFeedbackExtensionName as defined in vulkan/vulkan_core.h:6389
	ExtTransformFeedbackExtensionName = "VK_EXT_transform_feedback"
	// AmdDrawIndirectCount as defined in vulkan/vulkan_core.h:6476
	AmdDrawIndirectCount = 1
	// AmdDrawIndirectCountSpecVersion as defined in vulkan/vulkan_core.h:6477
	AmdDrawIndirectCountSpecVersion = 1
	// AmdDrawIndirectCountExtensionName as defined in vulkan/vulkan_core.h:6478
	AmdDrawIndirectCountExtensionName = "VK_AMD_draw_indirect_count"
	// AmdNegativeViewportHeight as defined in vulkan/vulkan_core.h:6503
	AmdNegativeViewportHeight = 1
	// AmdNegativeViewportHeightSpecVersion as defined in vulkan/vulkan_core.h:6504
	AmdNegativeViewportHeightSpecVersion = 1
	// AmdNegativeViewportHeightExtensionName as defined in vulkan/vulkan_core.h:6505
	AmdNegativeViewportHeightExtensionName = "VK_AMD_negative_viewport_height"
	// AmdGpuShaderHalfFloat as defined in vulkan/vulkan_core.h:6508
	AmdGpuShaderHalfFloat = 1
	// AmdGpuShaderHalfFloatSpecVersion as defined in vulkan/vulkan_core.h:6509
	AmdGpuShaderHalfFloatSpecVersion = 1
	// AmdGpuShaderHalfFloatExtensionName as defined in vulkan/vulkan_core.h:6510
	AmdGpuShaderHalfFloatExtensionName = "VK_AMD_gpu_shader_half_float"
	// AmdShaderBallot as defined in vulkan/vulkan_core.h:6513
	AmdShaderBallot = 1
	// AmdShaderBallotSpecVersion as defined in vulkan/vulkan_core.h:6514
	AmdShaderBallotSpecVersion = 1
	// AmdShaderBallotExtensionName as defined in vulkan/vulkan_core.h:6515
	AmdShaderBallotExtensionName = "VK_AMD_shader_ballot"
	// AmdTextureGatherBiasLod as defined in vulkan/vulkan_core.h:6518
	AmdTextureGatherBiasLod = 1
	// AmdTextureGatherBiasLodSpecVersion as defined in vulkan/vulkan_core.h:6519
	AmdTextureGatherBiasLodSpecVersion = 1
	// AmdTextureGatherBiasLodExtensionName as defined in vulkan/vulkan_core.h:6520
	AmdTextureGatherBiasLodExtensionName = "VK_AMD_texture_gather_bias_lod"
	// AmdShaderInfo as defined in vulkan/vulkan_core.h:6530
	AmdShaderInfo = 1
	// AmdShaderInfoSpecVersion as defined in vulkan/vulkan_core.h:6531
	AmdShaderInfoSpecVersion = 1
	// AmdShaderInfoExtensionName as defined in vulkan/vulkan_core.h:6532
	AmdShaderInfoExtensionName = "VK_AMD_shader_info"
	// AmdShaderImageLoadStoreLod as defined in vulkan/vulkan_core.h:6576
	AmdShaderImageLoadStoreLod = 1
	// AmdShaderImageLoadStoreLodSpecVersion as defined in vulkan/vulkan_core.h:6577
	AmdShaderImageLoadStoreLodSpecVersion = 1
	// AmdShaderImageLoadStoreLodExtensionName as defined in vulkan/vulkan_core.h:6578
	AmdShaderImageLoadStoreLodExtensionName = "VK_AMD_shader_image_load_store_lod"
	// NvCornerSampledImage as defined in vulkan/vulkan_core.h:6581
	NvCornerSampledImage = 1
	// NvCornerSampledImageSpecVersion as defined in vulkan/vulkan_core.h:6582
	NvCornerSampledImageSpecVersion = 2
	// NvCornerSampledImageExtensionName as defined in vulkan/vulkan_core.h:6583
	NvCornerSampledImageExtensionName = "VK_NV_corner_sampled_image"
	// ImgFormatPvrtc as defined in vulkan/vulkan_core.h:6593
	ImgFormatPvrtc = 1
	// ImgFormatPvrtcSpecVersion as defined in vulkan/vulkan_core.h:6594
	ImgFormatPvrtcSpecVersion = 1
	// ImgFormatPvrtcExtensionName as defined in vulkan/vulkan_core.h:6595
	ImgFormatPvrtcExtensionName = "VK_IMG_format_pvrtc"
	// NvExternalMemoryCapabilities as defined in vulkan/vulkan_core.h:6598
	NvExternalMemoryCapabilities = 1
	// NvExternalMemoryCapabilitiesSpecVersion as defined in vulkan/vulkan_core.h:6599
	NvExternalMemoryCapabilitiesSpecVersion = 1
	// NvExternalMemoryCapabilitiesExtensionName as defined in vulkan/vulkan_core.h:6600
	NvExternalMemoryCapabilitiesExtensionName = "VK_NV_external_memory_capabilities"
	// NvExternalMemory as defined in vulkan/vulkan_core.h:6642
	NvExternalMemory = 1
	// NvExternalMemorySpecVersion as defined in vulkan/vulkan_core.h:6643
	NvExternalMemorySpecVersion = 1
	// NvExternalMemoryExtensionName as defined in vulkan/vulkan_core.h:6644
	NvExternalMemoryExtensionName = "VK_NV_external_memory"
	// ExtValidationFlags as defined in vulkan/vulkan_core.h:6660
	ExtValidationFlags = 1
	// ExtValidationFlagsSpecVersion as defined in vulkan/vulkan_core.h:6661
	ExtValidationFlagsSpecVersion = 1
	// ExtValidationFlagsExtensionName as defined in vulkan/vulkan_core.h:6662
	ExtValidationFlagsExtensionName = "VK_EXT_validation_flags"
	// ExtShaderSubgroupBallot as defined in vulkan/vulkan_core.h:6683
	ExtShaderSubgroupBallot = 1
	// ExtShaderSubgroupBallotSpecVersion as defined in vulkan/vulkan_core.h:6684
	ExtShaderSubgroupBallotSpecVersion = 1
	// ExtShaderSubgroupBallotExtensionName as defined in vulkan/vulkan_core.h:6685
	ExtShaderSubgroupBallotExtensionName = "VK_EXT_shader_subgroup_ballot"
	// ExtShaderSubgroupVote as defined in vulkan/vulkan_core.h:6688
	ExtShaderSubgroupVote = 1
	// ExtShaderSubgroupVoteSpecVersion as defined in vulkan/vulkan_core.h:6689
	ExtShaderSubgroupVoteSpecVersion = 1
	// ExtShaderSubgroupVoteExtensionName as defined in vulkan/vulkan_core.h:6690
	ExtShaderSubgroupVoteExtensionName = "VK_EXT_shader_subgroup_vote"
	// ExtAstcDecodeMode as defined in vulkan/vulkan_core.h:6693
	ExtAstcDecodeMode = 1
	// ExtAstcDecodeModeSpecVersion as defined in vulkan/vulkan_core.h:6694
	ExtAstcDecodeModeSpecVersion = 1
	// ExtAstcDecodeModeExtensionName as defined in vulkan/vulkan_core.h:6695
	ExtAstcDecodeModeExtensionName = "VK_EXT_astc_decode_mode"
	// ExtConditionalRendering as defined in vulkan/vulkan_core.h:6711
	ExtConditionalRendering = 1
	// ExtConditionalRenderingSpecVersion as defined in vulkan/vulkan_core.h:6712
	ExtConditionalRenderingSpecVersion = 1
	// ExtConditionalRenderingExtensionName as defined in vulkan/vulkan_core.h:6713
	ExtConditionalRenderingExtensionName = "VK_EXT_conditional_rendering"
	// NvxDeviceGeneratedCommands as defined in vulkan/vulkan_core.h:6756
	NvxDeviceGeneratedCommands = 1
	// NvxDeviceGeneratedCommandsSpecVersion as defined in vulkan/vulkan_core.h:6760
	NvxDeviceGeneratedCommandsSpecVersion = 3
	// NvxDeviceGeneratedCommandsExtensionName as defined in vulkan/vulkan_core.h:6761
	NvxDeviceGeneratedCommandsExtensionName = "VK_NVX_device_generated_commands"
	// NvClipSpaceWScaling as defined in vulkan/vulkan_core.h:6983
	NvClipSpaceWScaling = 1
	// NvClipSpaceWScalingSpecVersion as defined in vulkan/vulkan_core.h:6984
	NvClipSpaceWScalingSpecVersion = 1
	// NvClipSpaceWScalingExtensionName as defined in vulkan/vulkan_core.h:6985
	NvClipSpaceWScalingExtensionName = "VK_NV_clip_space_w_scaling"
	// ExtDirectModeDisplay as defined in vulkan/vulkan_core.h:7011
	ExtDirectModeDisplay = 1
	// ExtDirectModeDisplaySpecVersion as defined in vulkan/vulkan_core.h:7012
	ExtDirectModeDisplaySpecVersion = 1
	// ExtDirectModeDisplayExtensionName as defined in vulkan/vulkan_core.h:7013
	ExtDirectModeDisplayExtensionName = "VK_EXT_direct_mode_display"
	// ExtDisplaySurfaceCounter as defined in vulkan/vulkan_core.h:7023
	ExtDisplaySurfaceCounter = 1
	// ExtDisplaySurfaceCounterSpecVersion as defined in vulkan/vulkan_core.h:7024
	ExtDisplaySurfaceCounterSpecVersion = 1
	// ExtDisplaySurfaceCounterExtensionName as defined in vulkan/vulkan_core.h:7025
	ExtDisplaySurfaceCounterExtensionName = "VK_EXT_display_surface_counter"
	// ExtDisplayControl as defined in vulkan/vulkan_core.h:7060
	ExtDisplayControl = 1
	// ExtDisplayControlSpecVersion as defined in vulkan/vulkan_core.h:7061
	ExtDisplayControlSpecVersion = 1
	// ExtDisplayControlExtensionName as defined in vulkan/vulkan_core.h:7062
	ExtDisplayControlExtensionName = "VK_EXT_display_control"
	// GoogleDisplayTiming as defined in vulkan/vulkan_core.h:7147
	GoogleDisplayTiming = 1
	// GoogleDisplayTimingSpecVersion as defined in vulkan/vulkan_core.h:7148
	GoogleDisplayTimingSpecVersion = 1
	// GoogleDisplayTimingExtensionName as defined in vulkan/vulkan_core.h:7149
	GoogleDisplayTimingExtensionName = "VK_GOOGLE_display_timing"
	// NvSampleMaskOverrideCoverage as defined in vulkan/vulkan_core.h:7192
	NvSampleMaskOverrideCoverage = 1
	// NvSampleMaskOverrideCoverageSpecVersion as defined in vulkan/vulkan_core.h:7193
	NvSampleMaskOverrideCoverageSpecVersion = 1
	// NvSampleMaskOverrideCoverageExtensionName as defined in vulkan/vulkan_core.h:7194
	NvSampleMaskOverrideCoverageExtensionName = "VK_NV_sample_mask_override_coverage"
	// NvGeometryShaderPassthrough as defined in vulkan/vulkan_core.h:7197
	NvGeometryShaderPassthrough = 1
	// NvGeometryShaderPassthroughSpecVersion as defined in vulkan/vulkan_core.h:7198
	NvGeometryShaderPassthroughSpecVersion = 1
	// NvGeometryShaderPassthroughExtensionName as defined in vulkan/vulkan_core.h:7199
	NvGeometryShaderPassthroughExtensionName = "VK_NV_geometry_shader_passthrough"
	// NvViewportArray2 as defined in vulkan/vulkan_core.h:7202
	NvViewportArray2 = 1
	// NvViewportArray2SpecVersion as defined in vulkan/vulkan_core.h:7203
	NvViewportArray2SpecVersion = 1
	// NvViewportArray2ExtensionName as defined in vulkan/vulkan_core.h:7204
	NvViewportArray2ExtensionName = "VK_NV_viewport_array2"
	// NvxMultiviewPerViewAttributes as defined in vulkan/vulkan_core.h:7207
	NvxMultiviewPerViewAttributes = 1
	// NvxMultiviewPerViewAttributesSpecVersion as defined in vulkan/vulkan_core.h:7208
	NvxMultiviewPerViewAttributesSpecVersion = 1
	// NvxMultiviewPerViewAttributesExtensionName as defined in vulkan/vulkan_core.h:7209
	NvxMultiviewPerViewAttributesExtensionName = "VK_NVX_multiview_per_view_attributes"
	// NvViewportSwizzle as defined in vulkan/vulkan_core.h:7219
	NvViewportSwizzle = 1
	// NvViewportSwizzleSpecVersion as defined in vulkan/vulkan_core.h:7220
	NvViewportSwizzleSpecVersion = 1
	// NvViewportSwizzleExtensionName as defined in vulkan/vulkan_core.h:7221
	NvViewportSwizzleExtensionName = "VK_NV_viewport_swizzle"
	// ExtDiscardRectangles as defined in vulkan/vulkan_core.h:7258
	ExtDiscardRectangles = 1
	// ExtDiscardRectanglesSpecVersion as defined in vulkan/vulkan_core.h:7259
	ExtDiscardRectanglesSpecVersion = 1
	// ExtDiscardRectanglesExtensionName as defined in vulkan/vulkan_core.h:7260
	ExtDiscardRectanglesExtensionName = "VK_EXT_discard_rectangles"
	// ExtConservativeRasterization as defined in vulkan/vulkan_core.h:7300
	ExtConservativeRasterization = 1
	// ExtConservativeRasterizationSpecVersion as defined in vulkan/vulkan_core.h:7301
	ExtConservativeRasterizationSpecVersion = 1
	// ExtConservativeRasterizationExtensionName as defined in vulkan/vulkan_core.h:7302
	ExtConservativeRasterizationExtensionName = "VK_EXT_conservative_rasterization"
	// ExtSwapchainColorspace as defined in vulkan/vulkan_core.h:7341
	ExtSwapchainColorspace = 1
	// ExtSwapchainColorSpaceSpecVersion as defined in vulkan/vulkan_core.h:7342
	ExtSwapchainColorSpaceSpecVersion = 3
	// ExtSwapchainColorSpaceExtensionName as defined in vulkan/vulkan_core.h:7343
	ExtSwapchainColorSpaceExtensionName = "VK_EXT_swapchain_colorspace"
	// ExtHdrMetadata as defined in vulkan/vulkan_core.h:7346
	ExtHdrMetadata = 1
	// ExtHdrMetadataSpecVersion as defined in vulkan/vulkan_core.h:7347
	ExtHdrMetadataSpecVersion = 1
	// ExtHdrMetadataExtensionName as defined in vulkan/vulkan_core.h:7348
	ExtHdrMetadataExtensionName = "VK_EXT_hdr_metadata"
	// ExtExternalMemoryDmaBuf as defined in vulkan/vulkan_core.h:7379
	ExtExternalMemoryDmaBuf = 1
	// ExtExternalMemoryDmaBufSpecVersion as defined in vulkan/vulkan_core.h:7380
	ExtExternalMemoryDmaBufSpecVersion = 1
	// ExtExternalMemoryDmaBufExtensionName as defined in vulkan/vulkan_core.h:7381
	ExtExternalMemoryDmaBufExtensionName = "VK_EXT_external_memory_dma_buf"
	// ExtQueueFamilyForeign as defined in vulkan/vulkan_core.h:7384
	ExtQueueFamilyForeign = 1
	// ExtQueueFamilyForeignSpecVersion as defined in vulkan/vulkan_core.h:7385
	ExtQueueFamilyForeignSpecVersion = 1
	// ExtQueueFamilyForeignExtensionName as defined in vulkan/vulkan_core.h:7386
	ExtQueueFamilyForeignExtensionName = "VK_EXT_queue_family_foreign"
	// QueueFamilyForeign as defined in vulkan/vulkan_core.h:7387
	QueueFamilyForeign = (^uint32(0) - 2)
	// ExtDebugUtils as defined in vulkan/vulkan_core.h:7390
	ExtDebugUtils = 1
	// ExtDebugUtilsSpecVersion as defined in vulkan/vulkan_core.h:7393
	ExtDebugUtilsSpecVersion = 1
	// ExtDebugUtilsExtensionName as defined in vulkan/vulkan_core.h:7394
	ExtDebugUtilsExtensionName = "VK_EXT_debug_utils"
	// ExtSamplerFilterMinmax as defined in vulkan/vulkan_core.h:7534
	ExtSamplerFilterMinmax = 1
	// ExtSamplerFilterMinmaxSpecVersion as defined in vulkan/vulkan_core.h:7535
	ExtSamplerFilterMinmaxSpecVersion = 1
	// ExtSamplerFilterMinmaxExtensionName as defined in vulkan/vulkan_core.h:7536
	ExtSamplerFilterMinmaxExtensionName = "VK_EXT_sampler_filter_minmax"
	// AmdGpuShaderInt16 as defined in vulkan/vulkan_core.h:7564
	AmdGpuShaderInt16 = 1
	// AmdGpuShaderInt16SpecVersion as defined in vulkan/vulkan_core.h:7565
	AmdGpuShaderInt16SpecVersion = 1
	// AmdGpuShaderInt16ExtensionName as defined in vulkan/vulkan_core.h:7566
	AmdGpuShaderInt16ExtensionName = "VK_AMD_gpu_shader_int16"
	// AmdMixedAttachmentSamples as defined in vulkan/vulkan_core.h:7569
	AmdMixedAttachmentSamples = 1
	// AmdMixedAttachmentSamplesSpecVersion as defined in vulkan/vulkan_core.h:7570
	AmdMixedAttachmentSamplesSpecVersion = 1
	// AmdMixedAttachmentSamplesExtensionName as defined in vulkan/vulkan_core.h:7571
	AmdMixedAttachmentSamplesExtensionName = "VK_AMD_mixed_attachment_samples"
	// AmdShaderFragmentMask as defined in vulkan/vulkan_core.h:7574
	AmdShaderFragmentMask = 1
	// AmdShaderFragmentMaskSpecVersion as defined in vulkan/vulkan_core.h:7575
	AmdShaderFragmentMaskSpecVersion = 1
	// AmdShaderFragmentMaskExtensionName as defined in vulkan/vulkan_core.h:7576
	AmdShaderFragmentMaskExtensionName = "VK_AMD_shader_fragment_mask"
	// ExtInlineUniformBlock as defined in vulkan/vulkan_core.h:7579
	ExtInlineUniformBlock = 1
	// ExtInlineUniformBlockSpecVersion as defined in vulkan/vulkan_core.h:7580
	ExtInlineUniformBlockSpecVersion = 1
	// ExtInlineUniformBlockExtensionName as defined in vulkan/vulkan_core.h:7581
	ExtInlineUniformBlockExtensionName = "VK_EXT_inline_uniform_block"
	// ExtShaderStencilExport as defined in vulkan/vulkan_core.h:7615
	ExtShaderStencilExport = 1
	// ExtShaderStencilExportSpecVersion as defined in vulkan/vulkan_core.h:7616
	ExtShaderStencilExportSpecVersion = 1
	// ExtShaderStencilExportExtensionName as defined in vulkan/vulkan_core.h:7617
	ExtShaderStencilExportExtensionName = "VK_EXT_shader_stencil_export"
	// ExtSampleLocations as defined in vulkan/vulkan_core.h:7620
	ExtSampleLocations = 1
	// ExtSampleLocationsSpecVersion as defined in vulkan/vulkan_core.h:7621
	ExtSampleLocationsSpecVersion = 1
	// ExtSampleLocationsExtensionName as defined in vulkan/vulkan_core.h:7622
	ExtSampleLocationsExtensionName = "VK_EXT_sample_locations"
	// ExtBlendOperationAdvanced as defined in vulkan/vulkan_core.h:7695
	ExtBlendOperationAdvanced = 1
	// ExtBlendOperationAdvancedSpecVersion as defined in vulkan/vulkan_core.h:7696
	ExtBlendOperationAdvancedSpecVersion = 2
	// ExtBlendOperationAdvancedExtensionName as defined in vulkan/vulkan_core.h:7697
	ExtBlendOperationAdvancedExtensionName = "VK_EXT_blend_operation_advanced"
	// NvFragmentCoverageToColor as defined in vulkan/vulkan_core.h:7737
	NvFragmentCoverageToColor = 1
	// NvFragmentCoverageToColorSpecVersion as defined in vulkan/vulkan_core.h:7738
	NvFragmentCoverageToColorSpecVersion = 1
	// NvFragmentCoverageToColorExtensionName as defined in vulkan/vulkan_core.h:7739
	NvFragmentCoverageToColorExtensionName = "VK_NV_fragment_coverage_to_color"
	// NvFramebufferMixedSamples as defined in vulkan/vulkan_core.h:7753
	NvFramebufferMixedSamples = 1
	// NvFramebufferMixedSamplesSpecVersion as defined in vulkan/vulkan_core.h:7754
	NvFramebufferMixedSamplesSpecVersion = 1
	// NvFramebufferMixedSamplesExtensionName as defined in vulkan/vulkan_core.h:7755
	NvFramebufferMixedSamplesExtensionName = "VK_NV_framebuffer_mixed_samples"
	// NvFillRectangle as defined in vulkan/vulkan_core.h:7783
	NvFillRectangle = 1
	// NvFillRectangleSpecVersion as defined in vulkan/vulkan_core.h:7784
	NvFillRectangleSpecVersion = 1
	// NvFillRectangleExtensionName as defined in vulkan/vulkan_core.h:7785
	NvFillRectangleExtensionName = "VK_NV_fill_rectangle"
	// ExtPostDepthCoverage as defined in vulkan/vulkan_core.h:7788
	ExtPostDepthCoverage = 1
	// ExtPostDepthCoverageSpecVersion as defined in vulkan/vulkan_core.h:7789
	ExtPostDepthCoverageSpecVersion = 1
	// ExtPostDepthCoverageExtensionName as defined in vulkan/vulkan_core.h:7790
	ExtPostDepthCoverageExtensionName = "VK_EXT_post_depth_coverage"
	// ExtImageDrmFormatModifier as defined in vulkan/vulkan_core.h:7793
	ExtImageDrmFormatModifier = 1
	// ExtExtension159SpecVersion as defined in vulkan/vulkan_core.h:7794
	ExtExtension159SpecVersion = 0
	// ExtExtension159ExtensionName as defined in vulkan/vulkan_core.h:7795
	ExtExtension159ExtensionName = "VK_EXT_extension_159"
	// ExtImageDrmFormatModifierSpecVersion as defined in vulkan/vulkan_core.h:7796
	ExtImageDrmFormatModifierSpecVersion = 1
	// ExtImageDrmFormatModifierExtensionName as defined in vulkan/vulkan_core.h:7797
	ExtImageDrmFormatModifierExtensionName = "VK_EXT_image_drm_format_modifier"
	// ExtValidationCache as defined in vulkan/vulkan_core.h:7852
	ExtValidationCache = 1
	// ExtValidationCacheSpecVersion as defined in vulkan/vulkan_core.h:7855
	ExtValidationCacheSpecVersion = 1
	// ExtValidationCacheExtensionName as defined in vulkan/vulkan_core.h:7856
	ExtValidationCacheExtensionName = "VK_EXT_validation_cache"
	// ExtDescriptorIndexing as defined in vulkan/vulkan_core.h:7914
	ExtDescriptorIndexing = 1
	// ExtDescriptorIndexingSpecVersion as defined in vulkan/vulkan_core.h:7915
	ExtDescriptorIndexingSpecVersion = 2
	// ExtDescriptorIndexingExtensionName as defined in vulkan/vulkan_core.h:7916
	ExtDescriptorIndexingExtensionName = "VK_EXT_descriptor_indexing"
	// ExtShaderViewportIndexLayer as defined in vulkan/vulkan_core.h:8003
	ExtShaderViewportIndexLayer = 1
	// ExtShaderViewportIndexLayerSpecVersion as defined in vulkan/vulkan_core.h:8004
	ExtShaderViewportIndexLayerSpecVersion = 1
	// ExtShaderViewportIndexLayerExtensionName as defined in vulkan/vulkan_core.h:8005
	ExtShaderViewportIndexLayerExtensionName = "VK_EXT_shader_viewport_index_layer"
	// NvShadingRateImage as defined in vulkan/vulkan_core.h:8008
	NvShadingRateImage = 1
	// NvShadingRateImageSpecVersion as defined in vulkan/vulkan_core.h:8009
	NvShadingRateImageSpecVersion = 3
	// NvShadingRateImageExtensionName as defined in vulkan/vulkan_core.h:8010
	NvShadingRateImageExtensionName = "VK_NV_shading_rate_image"
	// NvxRaytracing as defined in vulkan/vulkan_core.h:8116
	NvxRaytracing = 1
	// NvxRaytracingSpecVersion as defined in vulkan/vulkan_core.h:8119
	NvxRaytracingSpecVersion = 1
	// NvxRaytracingExtensionName as defined in vulkan/vulkan_core.h:8120
	NvxRaytracingExtensionName = "VK_NVX_raytracing"
	// NvRepresentativeFragmentTest as defined in vulkan/vulkan_core.h:8381
	NvRepresentativeFragmentTest = 1
	// NvRepresentativeFragmentTestSpecVersion as defined in vulkan/vulkan_core.h:8382
	NvRepresentativeFragmentTestSpecVersion = 1
	// NvRepresentativeFragmentTestExtensionName as defined in vulkan/vulkan_core.h:8383
	NvRepresentativeFragmentTestExtensionName = "VK_NV_representative_fragment_test"
	// ExtGlobalPriority as defined in vulkan/vulkan_core.h:8399
	ExtGlobalPriority = 1
	// ExtGlobalPrioritySpecVersion as defined in vulkan/vulkan_core.h:8400
	ExtGlobalPrioritySpecVersion = 2
	// ExtGlobalPriorityExtensionName as defined in vulkan/vulkan_core.h:8401
	ExtGlobalPriorityExtensionName = "VK_EXT_global_priority"
	// ExtExternalMemoryHost as defined in vulkan/vulkan_core.h:8423
	ExtExternalMemoryHost = 1
	// ExtExternalMemoryHostSpecVersion as defined in vulkan/vulkan_core.h:8424
	ExtExternalMemoryHostSpecVersion = 1
	// ExtExternalMemoryHostExtensionName as defined in vulkan/vulkan_core.h:8425
	ExtExternalMemoryHostExtensionName = "VK_EXT_external_memory_host"
	// AmdBufferMarker as defined in vulkan/vulkan_core.h:8457
	AmdBufferMarker = 1
	// AmdBufferMarkerSpecVersion as defined in vulkan/vulkan_core.h:8458
	AmdBufferMarkerSpecVersion = 1
	// AmdBufferMarkerExtensionName as defined in vulkan/vulkan_core.h:8459
	AmdBufferMarkerExtensionName = "VK_AMD_buffer_marker"
	// ExtCalibratedTimestamps as defined in vulkan/vulkan_core.h:8472
	ExtCalibratedTimestamps = 1
	// ExtCalibratedTimestampsSpecVersion as defined in vulkan/vulkan_core.h:8473
	ExtCalibratedTimestampsSpecVersion = 1
	// ExtCalibratedTimestampsExtensionName as defined in vulkan/vulkan_core.h:8474
	ExtCalibratedTimestampsExtensionName = "VK_EXT_calibrated_timestamps"
	// AmdShaderCoreProperties as defined in vulkan/vulkan_core.h:8512
	AmdShaderCoreProperties = 1
	// AmdShaderCorePropertiesSpecVersion as defined in vulkan/vulkan_core.h:8513
	AmdShaderCorePropertiesSpecVersion = 1
	// AmdShaderCorePropertiesExtensionName as defined in vulkan/vulkan_core.h:8514
	AmdShaderCorePropertiesExtensionName = "VK_AMD_shader_core_properties"
	// ExtVertexAttributeDivisor as defined in vulkan/vulkan_core.h:8537
	ExtVertexAttributeDivisor = 1
	// ExtVertexAttributeDivisorSpecVersion as defined in vulkan/vulkan_core.h:8538
	ExtVertexAttributeDivisorSpecVersion = 3
	// ExtVertexAttributeDivisorExtensionName as defined in vulkan/vulkan_core.h:8539
	ExtVertexAttributeDivisorExtensionName = "VK_EXT_vertex_attribute_divisor"
	// NvShaderSubgroupPartitioned as defined in vulkan/vulkan_core.h:8568
	NvShaderSubgroupPartitioned = 1
	// NvShaderSubgroupPartitionedSpecVersion as defined in vulkan/vulkan_core.h:8569
	NvShaderSubgroupPartitionedSpecVersion = 1
	// NvShaderSubgroupPartitionedExtensionName as defined in vulkan/vulkan_core.h:8570
	NvShaderSubgroupPartitionedExtensionName = "VK_NV_shader_subgroup_partitioned"
	// NvComputeShaderDerivatives as defined in vulkan/vulkan_core.h:8573
	NvComputeShaderDerivatives = 1
	// NvComputeShaderDerivativesSpecVersion as defined in vulkan/vulkan_core.h:8574
	NvComputeShaderDerivativesSpecVersion = 1
	// NvComputeShaderDerivativesExtensionName as defined in vulkan/vulkan_core.h:8575
	NvComputeShaderDerivativesExtensionName = "VK_NV_compute_shader_derivatives"
	// NvMeshShader as defined in vulkan/vulkan_core.h:8586
	NvMeshShader = 1
	// NvMeshShaderSpecVersion as defined in vulkan/vulkan_core.h:8587
	NvMeshShaderSpecVersion = 1
	// NvMeshShaderExtensionName as defined in vulkan/vulkan_core.h:8588
	NvMeshShaderExtensionName = "VK_NV_mesh_shader"
	// NvFragmentShaderBarycentric as defined in vulkan/vulkan_core.h:8648
	NvFragmentShaderBarycentric = 1
	// NvFragmentShaderBarycentricSpecVersion as defined in vulkan/vulkan_core.h:8649
	NvFragmentShaderBarycentricSpecVersion = 1
	// NvFragmentShaderBarycentricExtensionName as defined in vulkan/vulkan_core.h:8650
	NvFragmentShaderBarycentricExtensionName = "VK_NV_fragment_shader_barycentric"
	// NvShaderImageFootprint as defined in vulkan/vulkan_core.h:8660
	NvShaderImageFootprint = 1
	// NvShaderImageFootprintSpecVersion as defined in vulkan/vulkan_core.h:8661
	NvShaderImageFootprintSpecVersion = 1
	// NvShaderImageFootprintExtensionName as defined in vulkan/vulkan_core.h:8662
	NvShaderImageFootprintExtensionName = "VK_NV_shader_image_footprint"
	// NvScissorExclusive as defined in vulkan/vulkan_core.h:8672
	NvScissorExclusive = 1
	// NvScissorExclusiveSpecVersion as defined in vulkan/vulkan_core.h:8673
	NvScissorExclusiveSpecVersion = 1
	// NvScissorExclusiveExtensionName as defined in vulkan/vulkan_core.h:8674
	NvScissorExclusiveExtensionName = "VK_NV_scissor_exclusive"
	// NvDeviceDiagnosticCheckpoints as defined in vulkan/vulkan_core.h:8700
	NvDeviceDiagnosticCheckpoints = 1
	// NvDeviceDiagnosticCheckpointsSpecVersion as defined in vulkan/vulkan_core.h:8701
	NvDeviceDiagnosticCheckpointsSpecVersion = 2
	// NvDeviceDiagnosticCheckpointsExtensionName as defined in vulkan/vulkan_core.h:8702
	NvDeviceDiagnosticCheckpointsExtensionName = "VK_NV_device_diagnostic_checkpoints"
	// ExtPciBusInfo as defined in vulkan/vulkan_core.h:8732
	ExtPciBusInfo = 1
	// ExtPciBusInfoSpecVersion as defined in vulkan/vulkan_core.h:8733
	ExtPciBusInfoSpecVersion = 1
	// ExtPciBusInfoExtensionName as defined in vulkan/vulkan_core.h:8734
	ExtPciBusInfoExtensionName = "VK_EXT_pci_bus_info"
	// GoogleHlslFunctionality1 as defined in vulkan/vulkan_core.h:8747
	GoogleHlslFunctionality1 = 1
	// GoogleHlslFunctionality1SpecVersion as defined in vulkan/vulkan_core.h:8748
	GoogleHlslFunctionality1SpecVersion = 0
	// GoogleHlslFunctionality1ExtensionName as defined in vulkan/vulkan_core.h:8749
	GoogleHlslFunctionality1ExtensionName = "VK_GOOGLE_hlsl_functionality1"
	// GoogleDecorateString as defined in vulkan/vulkan_core.h:8752
	GoogleDecorateString = 1
	// GoogleDecorateStringSpecVersion as defined in vulkan/vulkan_core.h:8753
	GoogleDecorateStringSpecVersion = 0
	// GoogleDecorateStringExtensionName as defined in vulkan/vulkan_core.h:8754
	GoogleDecorateStringExtensionName = "VK_GOOGLE_decorate_string"
)

Variables

View Source
var (
	MaxUint32 uint32 = 1<<32 - 1 // also ^uint32(0)
	MaxUint64 uint64 = 1<<64 - 1 // also ^uint64(0)
)

Max bounds of uint32 and uint64, declared as var so type would get checked.

View Source
var (
	// NullHandle defines a platform-specfic NULL handle.
	NullHandle unsafe.Pointer
	// NullSemaphore defines a platform-specfic NULL Semaphore.
	NullSemaphore Semaphore
	// NullFence defines a platform-specfic NULL Fence.
	NullFence Fence
	// NullDeviceMemory defines a platform-specfic NULL DeviceMemory.
	NullDeviceMemory DeviceMemory
	// NullBuffer defines a platform-specfic NULL Buffer.
	NullBuffer Buffer
	// NullImage defines a platform-specfic NULL Image.
	NullImage Image
	// NullEvent defines a platform-specfic NULL Event.
	NullEvent Event
	// NullQueryPool defines a platform-specfic NULL QueryPool.
	NullQueryPool QueryPool
	// NullBufferView defines a platform-specfic NULL BufferView.
	NullBufferView BufferView
	// NullImageView defines a platform-specfic NULL ImageView.
	NullImageView ImageView
	// NullShaderModule defines a platform-specfic NULL ShaderModule.
	NullShaderModule ShaderModule
	// NullPipelineCache defines a platform-specfic NULL PipelineCache.
	NullPipelineCache PipelineCache
	// NullPipelineLayout defines a platform-specfic NULL PipelineLayout.
	NullPipelineLayout PipelineLayout
	// NullRenderPass defines a platform-specfic NULL RenderPass.
	NullRenderPass RenderPass
	// NullPipeline defines a platform-specfic NULL Pipeline.
	NullPipeline Pipeline
	// NullDescriptorSetLayout defines a platform-specfic NULL DescriptorSetLayout.
	NullDescriptorSetLayout DescriptorSetLayout
	// NullSampler defines a platform-specfic NULL Sampler.
	NullSampler Sampler
	// NullDescriptorPool defines a platform-specfic NULL DescriptorPool.
	NullDescriptorPool DescriptorPool
	// NullDescriptorSet defines a platform-specfic NULL DescriptorSet.
	NullDescriptorSet DescriptorSet
	// NullFramebuffer defines a platform-specfic NULL Framebuffer.
	NullFramebuffer Framebuffer
	// NullCommandPool defines a platform-specfic NULL CommandPool.
	NullCommandPool CommandPool
	// NullSurface defines a platform-specfic NULL Surface.
	NullSurface Surface
	// NullSwapchain defines a platform-specfic NULL Swapchain.
	NullSwapchain Swapchain
	// NullDisplay defines a platform-specfic NULL Display.
	NullDisplay Display
	// NullDisplayMode defines a platform-specfic NULL DisplayMode.
	NullDisplayMode DisplayMode
	// NullDebugReportCallback defines a platform-specfic NULL DebugReportCallback.
	NullDebugReportCallback DebugReportCallback
)

Functions

func CmdBeginQuery

func CmdBeginQuery(commandBuffer CommandBuffer, queryPool QueryPool, query uint32, flags QueryControlFlags)

CmdBeginQuery function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBeginQuery.html

func CmdBeginRenderPass

func CmdBeginRenderPass(commandBuffer CommandBuffer, pRenderPassBegin *RenderPassBeginInfo, contents SubpassContents)

CmdBeginRenderPass function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBeginRenderPass.html

func CmdBindDescriptorSets

func CmdBindDescriptorSets(commandBuffer CommandBuffer, pipelineBindPoint PipelineBindPoint, layout PipelineLayout, firstSet uint32, descriptorSetCount uint32, pDescriptorSets *DescriptorSet, dynamicOffsetCount uint32, pDynamicOffsets *uint32)

CmdBindDescriptorSets function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBindDescriptorSets.html

func CmdBindIndexBuffer

func CmdBindIndexBuffer(commandBuffer CommandBuffer, buffer Buffer, offset DeviceSize, indexType IndexType)

CmdBindIndexBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBindIndexBuffer.html

func CmdBindPipeline

func CmdBindPipeline(commandBuffer CommandBuffer, pipelineBindPoint PipelineBindPoint, pipeline Pipeline)

CmdBindPipeline function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBindPipeline.html

func CmdBindVertexBuffers

func CmdBindVertexBuffers(commandBuffer CommandBuffer, firstBinding uint32, bindingCount uint32, pBuffers *Buffer, pOffsets *DeviceSize)

CmdBindVertexBuffers function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBindVertexBuffers.html

func CmdBlitImage

func CmdBlitImage(commandBuffer CommandBuffer, srcImage Image, srcImageLayout ImageLayout, dstImage Image, dstImageLayout ImageLayout, regionCount uint32, pRegions *ImageBlit, filter Filter)

CmdBlitImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdBlitImage.html

func CmdClearAttachments

func CmdClearAttachments(commandBuffer CommandBuffer, attachmentCount uint32, pAttachments *ClearAttachment, rectCount uint32, pRects *ClearRect)

CmdClearAttachments function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdClearAttachments.html

func CmdClearColorImage

func CmdClearColorImage(commandBuffer CommandBuffer, image Image, imageLayout ImageLayout, pColor *ClearColorValue, rangeCount uint32, pRanges *ImageSubresourceRange)

CmdClearColorImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdClearColorImage.html

func CmdClearDepthStencilImage

func CmdClearDepthStencilImage(commandBuffer CommandBuffer, image Image, imageLayout ImageLayout, pDepthStencil *ClearDepthStencilValue, rangeCount uint32, pRanges *ImageSubresourceRange)

CmdClearDepthStencilImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdClearDepthStencilImage.html

func CmdCopyBuffer

func CmdCopyBuffer(commandBuffer CommandBuffer, srcBuffer Buffer, dstBuffer Buffer, regionCount uint32, pRegions *BufferCopy)

CmdCopyBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdCopyBuffer.html

func CmdCopyBufferToImage

func CmdCopyBufferToImage(commandBuffer CommandBuffer, srcBuffer Buffer, dstImage Image, dstImageLayout ImageLayout, regionCount uint32, pRegions *BufferImageCopy)

CmdCopyBufferToImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdCopyBufferToImage.html

func CmdCopyImage

func CmdCopyImage(commandBuffer CommandBuffer, srcImage Image, srcImageLayout ImageLayout, dstImage Image, dstImageLayout ImageLayout, regionCount uint32, pRegions *ImageCopy)

CmdCopyImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdCopyImage.html

func CmdCopyImageToBuffer

func CmdCopyImageToBuffer(commandBuffer CommandBuffer, srcImage Image, srcImageLayout ImageLayout, dstBuffer Buffer, regionCount uint32, pRegions *BufferImageCopy)

CmdCopyImageToBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdCopyImageToBuffer.html

func CmdCopyQueryPoolResults

func CmdCopyQueryPoolResults(commandBuffer CommandBuffer, queryPool QueryPool, firstQuery uint32, queryCount uint32, dstBuffer Buffer, dstOffset DeviceSize, stride DeviceSize, flags QueryResultFlags)

CmdCopyQueryPoolResults function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdCopyQueryPoolResults.html

func CmdDispatch

func CmdDispatch(commandBuffer CommandBuffer, x uint32, y uint32, z uint32)

CmdDispatch function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDispatch.html

func CmdDispatchIndirect

func CmdDispatchIndirect(commandBuffer CommandBuffer, buffer Buffer, offset DeviceSize)

CmdDispatchIndirect function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDispatchIndirect.html

func CmdDraw

func CmdDraw(commandBuffer CommandBuffer, vertexCount uint32, instanceCount uint32, firstVertex uint32, firstInstance uint32)

CmdDraw function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDraw.html

func CmdDrawIndexed

func CmdDrawIndexed(commandBuffer CommandBuffer, indexCount uint32, instanceCount uint32, firstIndex uint32, vertexOffset int32, firstInstance uint32)

CmdDrawIndexed function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDrawIndexed.html

func CmdDrawIndexedIndirect

func CmdDrawIndexedIndirect(commandBuffer CommandBuffer, buffer Buffer, offset DeviceSize, drawCount uint32, stride uint32)

CmdDrawIndexedIndirect function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDrawIndexedIndirect.html

func CmdDrawIndirect

func CmdDrawIndirect(commandBuffer CommandBuffer, buffer Buffer, offset DeviceSize, drawCount uint32, stride uint32)

CmdDrawIndirect function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdDrawIndirect.html

func CmdEndQuery

func CmdEndQuery(commandBuffer CommandBuffer, queryPool QueryPool, query uint32)

CmdEndQuery function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdEndQuery.html

func CmdEndRenderPass

func CmdEndRenderPass(commandBuffer CommandBuffer)

CmdEndRenderPass function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdEndRenderPass.html

func CmdExecuteCommands

func CmdExecuteCommands(commandBuffer CommandBuffer, commandBufferCount uint32, pCommandBuffers *CommandBuffer)

CmdExecuteCommands function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdExecuteCommands.html

func CmdFillBuffer

func CmdFillBuffer(commandBuffer CommandBuffer, dstBuffer Buffer, dstOffset DeviceSize, size DeviceSize, data uint32)

CmdFillBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdFillBuffer.html

func CmdNextSubpass

func CmdNextSubpass(commandBuffer CommandBuffer, contents SubpassContents)

CmdNextSubpass function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdNextSubpass.html

func CmdPipelineBarrier

func CmdPipelineBarrier(commandBuffer CommandBuffer, srcStageMask PipelineStageFlags, dstStageMask PipelineStageFlags, dependencyFlags DependencyFlags, memoryBarrierCount uint32, pMemoryBarriers *MemoryBarrier, bufferMemoryBarrierCount uint32, pBufferMemoryBarriers *BufferMemoryBarrier, imageMemoryBarrierCount uint32, pImageMemoryBarriers *ImageMemoryBarrier)

CmdPipelineBarrier function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdPipelineBarrier.html

func CmdPushConstants

func CmdPushConstants(commandBuffer CommandBuffer, layout PipelineLayout, stageFlags ShaderStageFlags, offset uint32, size uint32, pValues unsafe.Pointer)

CmdPushConstants function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdPushConstants.html

func CmdResetEvent

func CmdResetEvent(commandBuffer CommandBuffer, event Event, stageMask PipelineStageFlags)

CmdResetEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdResetEvent.html

func CmdResetQueryPool

func CmdResetQueryPool(commandBuffer CommandBuffer, queryPool QueryPool, firstQuery uint32, queryCount uint32)

CmdResetQueryPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdResetQueryPool.html

func CmdResolveImage

func CmdResolveImage(commandBuffer CommandBuffer, srcImage Image, srcImageLayout ImageLayout, dstImage Image, dstImageLayout ImageLayout, regionCount uint32, pRegions *ImageResolve)

CmdResolveImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdResolveImage.html

func CmdSetBlendConstants

func CmdSetBlendConstants(commandBuffer CommandBuffer, blendConstants *[4]float32)

CmdSetBlendConstants function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetBlendConstants.html

func CmdSetDepthBias

func CmdSetDepthBias(commandBuffer CommandBuffer, depthBiasConstantFactor float32, depthBiasClamp float32, depthBiasSlopeFactor float32)

CmdSetDepthBias function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetDepthBias.html

func CmdSetDepthBounds

func CmdSetDepthBounds(commandBuffer CommandBuffer, minDepthBounds float32, maxDepthBounds float32)

CmdSetDepthBounds function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetDepthBounds.html

func CmdSetEvent

func CmdSetEvent(commandBuffer CommandBuffer, event Event, stageMask PipelineStageFlags)

CmdSetEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetEvent.html

func CmdSetLineWidth

func CmdSetLineWidth(commandBuffer CommandBuffer, lineWidth float32)

CmdSetLineWidth function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetLineWidth.html

func CmdSetScissor

func CmdSetScissor(commandBuffer CommandBuffer, firstScissor uint32, scissorCount uint32, pScissors *Rect2D)

CmdSetScissor function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetScissor.html

func CmdSetStencilCompareMask

func CmdSetStencilCompareMask(commandBuffer CommandBuffer, faceMask StencilFaceFlags, compareMask uint32)

CmdSetStencilCompareMask function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetStencilCompareMask.html

func CmdSetStencilReference

func CmdSetStencilReference(commandBuffer CommandBuffer, faceMask StencilFaceFlags, reference uint32)

CmdSetStencilReference function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetStencilReference.html

func CmdSetStencilWriteMask

func CmdSetStencilWriteMask(commandBuffer CommandBuffer, faceMask StencilFaceFlags, writeMask uint32)

CmdSetStencilWriteMask function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetStencilWriteMask.html

func CmdSetViewport

func CmdSetViewport(commandBuffer CommandBuffer, firstViewport uint32, viewportCount uint32, pViewports *Viewport)

CmdSetViewport function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdSetViewport.html

func CmdUpdateBuffer

func CmdUpdateBuffer(commandBuffer CommandBuffer, dstBuffer Buffer, dstOffset DeviceSize, dataSize DeviceSize, pData *uint32)

CmdUpdateBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdUpdateBuffer.html

func CmdWaitEvents

func CmdWaitEvents(commandBuffer CommandBuffer, eventCount uint32, pEvents *Event, srcStageMask PipelineStageFlags, dstStageMask PipelineStageFlags, memoryBarrierCount uint32, pMemoryBarriers *MemoryBarrier, bufferMemoryBarrierCount uint32, pBufferMemoryBarriers *BufferMemoryBarrier, imageMemoryBarrierCount uint32, pImageMemoryBarriers *ImageMemoryBarrier)

CmdWaitEvents function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdWaitEvents.html

func CmdWriteTimestamp

func CmdWriteTimestamp(commandBuffer CommandBuffer, pipelineStage PipelineStageFlagBits, queryPool QueryPool, query uint32)

CmdWriteTimestamp function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCmdWriteTimestamp.html

func DebugReportMessage

func DebugReportMessage(instance Instance, flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint, messageCode int32, pLayerPrefix *string, pMessage *string)

DebugReportMessage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDebugReportMessageEXT.html

func DestroyBuffer

func DestroyBuffer(device Device, buffer Buffer, pAllocator *AllocationCallbacks)

DestroyBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyBuffer.html

func DestroyBufferView

func DestroyBufferView(device Device, bufferView BufferView, pAllocator *AllocationCallbacks)

DestroyBufferView function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyBufferView.html

func DestroyCommandPool

func DestroyCommandPool(device Device, commandPool CommandPool, pAllocator *AllocationCallbacks)

DestroyCommandPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyCommandPool.html

func DestroyDebugReportCallback

func DestroyDebugReportCallback(instance Instance, callback DebugReportCallback, pAllocator *AllocationCallbacks)

DestroyDebugReportCallback function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyDebugReportCallbackEXT.html

func DestroyDescriptorPool

func DestroyDescriptorPool(device Device, descriptorPool DescriptorPool, pAllocator *AllocationCallbacks)

DestroyDescriptorPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyDescriptorPool.html

func DestroyDescriptorSetLayout

func DestroyDescriptorSetLayout(device Device, descriptorSetLayout DescriptorSetLayout, pAllocator *AllocationCallbacks)

DestroyDescriptorSetLayout function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyDescriptorSetLayout.html

func DestroyDevice

func DestroyDevice(device Device, pAllocator *AllocationCallbacks)

DestroyDevice function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyDevice.html

func DestroyEvent

func DestroyEvent(device Device, event Event, pAllocator *AllocationCallbacks)

DestroyEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyEvent.html

func DestroyFence

func DestroyFence(device Device, fence Fence, pAllocator *AllocationCallbacks)

DestroyFence function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyFence.html

func DestroyFramebuffer

func DestroyFramebuffer(device Device, framebuffer Framebuffer, pAllocator *AllocationCallbacks)

DestroyFramebuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyFramebuffer.html

func DestroyImage

func DestroyImage(device Device, image Image, pAllocator *AllocationCallbacks)

DestroyImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyImage.html

func DestroyImageView

func DestroyImageView(device Device, imageView ImageView, pAllocator *AllocationCallbacks)

DestroyImageView function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyImageView.html

func DestroyInstance

func DestroyInstance(instance Instance, pAllocator *AllocationCallbacks)

DestroyInstance function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyInstance.html

func DestroyPipeline

func DestroyPipeline(device Device, pipeline Pipeline, pAllocator *AllocationCallbacks)

DestroyPipeline function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyPipeline.html

func DestroyPipelineCache

func DestroyPipelineCache(device Device, pipelineCache PipelineCache, pAllocator *AllocationCallbacks)

DestroyPipelineCache function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyPipelineCache.html

func DestroyPipelineLayout

func DestroyPipelineLayout(device Device, pipelineLayout PipelineLayout, pAllocator *AllocationCallbacks)

DestroyPipelineLayout function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyPipelineLayout.html

func DestroyQueryPool

func DestroyQueryPool(device Device, queryPool QueryPool, pAllocator *AllocationCallbacks)

DestroyQueryPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyQueryPool.html

func DestroyRenderPass

func DestroyRenderPass(device Device, renderPass RenderPass, pAllocator *AllocationCallbacks)

DestroyRenderPass function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyRenderPass.html

func DestroySampler

func DestroySampler(device Device, sampler Sampler, pAllocator *AllocationCallbacks)

DestroySampler function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroySampler.html

func DestroySemaphore

func DestroySemaphore(device Device, semaphore Semaphore, pAllocator *AllocationCallbacks)

DestroySemaphore function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroySemaphore.html

func DestroyShaderModule

func DestroyShaderModule(device Device, shaderModule ShaderModule, pAllocator *AllocationCallbacks)

DestroyShaderModule function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDestroyShaderModule.html

func DestroySurface

func DestroySurface(instance Instance, surface Surface, pAllocator *AllocationCallbacks)

DestroySurface function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDestroySurfaceKHR

func DestroySwapchain

func DestroySwapchain(device Device, swapchain Swapchain, pAllocator *AllocationCallbacks)

DestroySwapchain function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDestroySwapchainKHR

func Error

func Error(result Result) error

func FreeCommandBuffers

func FreeCommandBuffers(device Device, commandPool CommandPool, commandBufferCount uint32, pCommandBuffers *CommandBuffer)

FreeCommandBuffers function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkFreeCommandBuffers.html

func FreeMemory

func FreeMemory(device Device, memory DeviceMemory, pAllocator *AllocationCallbacks)

FreeMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkFreeMemory.html

func GetBufferMemoryRequirements

func GetBufferMemoryRequirements(device Device, buffer Buffer, pMemoryRequirements *MemoryRequirements)

GetBufferMemoryRequirements function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetBufferMemoryRequirements.html

func GetDeviceMemoryCommitment

func GetDeviceMemoryCommitment(device Device, memory DeviceMemory, pCommittedMemoryInBytes *DeviceSize)

GetDeviceMemoryCommitment function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetDeviceMemoryCommitment.html

func GetDeviceQueue

func GetDeviceQueue(device Device, queueFamilyIndex uint32, queueIndex uint32, pQueue *Queue)

GetDeviceQueue function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetDeviceQueue.html

func GetImageMemoryRequirements

func GetImageMemoryRequirements(device Device, image Image, pMemoryRequirements *MemoryRequirements)

GetImageMemoryRequirements function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetImageMemoryRequirements.html

func GetImageSparseMemoryRequirements

func GetImageSparseMemoryRequirements(device Device, image Image, pSparseMemoryRequirementCount *uint32, pSparseMemoryRequirements *SparseImageMemoryRequirements)

GetImageSparseMemoryRequirements function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetImageSparseMemoryRequirements.html

func GetImageSubresourceLayout

func GetImageSubresourceLayout(device Device, image Image, pSubresource *ImageSubresource, pLayout *SubresourceLayout)

GetImageSubresourceLayout function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetImageSubresourceLayout.html

func GetPhysicalDeviceFeatures

func GetPhysicalDeviceFeatures(physicalDevice PhysicalDevice, pFeatures *PhysicalDeviceFeatures)

GetPhysicalDeviceFeatures function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceFeatures.html

func GetPhysicalDeviceFormatProperties

func GetPhysicalDeviceFormatProperties(physicalDevice PhysicalDevice, format Format, pFormatProperties *FormatProperties)

GetPhysicalDeviceFormatProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceFormatProperties.html

func GetPhysicalDeviceMemoryProperties

func GetPhysicalDeviceMemoryProperties(physicalDevice PhysicalDevice, pMemoryProperties *PhysicalDeviceMemoryProperties)

GetPhysicalDeviceMemoryProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceMemoryProperties.html

func GetPhysicalDeviceProperties

func GetPhysicalDeviceProperties(physicalDevice PhysicalDevice, pProperties *PhysicalDeviceProperties)

GetPhysicalDeviceProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceProperties.html

func GetPhysicalDeviceQueueFamilyProperties

func GetPhysicalDeviceQueueFamilyProperties(physicalDevice PhysicalDevice, pQueueFamilyPropertyCount *uint32, pQueueFamilyProperties *QueueFamilyProperties)

GetPhysicalDeviceQueueFamilyProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html

func GetPhysicalDeviceSparseImageFormatProperties

func GetPhysicalDeviceSparseImageFormatProperties(physicalDevice PhysicalDevice, format Format, kind ImageType, samples SampleCountFlagBits, usage ImageUsageFlags, tiling ImageTiling, pPropertyCount *uint32, pProperties *SparseImageFormatProperties)

GetPhysicalDeviceSparseImageFormatProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html

func GetRenderAreaGranularity

func GetRenderAreaGranularity(device Device, renderPass RenderPass, pGranularity *Extent2D)

GetRenderAreaGranularity function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetRenderAreaGranularity.html

func Init

func Init() error

Init checks for Vulkan support on the platform and obtains PFNs for global Vulkan API functions. Either SetGetInstanceProcAddr or SetDefaultGetInstanceProcAddr must have been called prior to calling Init.

func InitInstance

func InitInstance(instance Instance) error

InitInstance obtains instance PFNs for Vulkan API functions, this is necessary on OS X using MoltenVK, but for the other platforms it's an option.

func MakeVersion

func MakeVersion(major, minor, patch int) uint32

func Memcopy

func Memcopy(dst unsafe.Pointer, src []byte) int

Memcopy is like a Go's built-in copy function, it copies data from src slice, but into a destination pointer. Useful to copy data into device memory.

func SetDefaultGetInstanceProcAddr

func SetDefaultGetInstanceProcAddr() error

SetDefaultGetInstanceProcAddr looks for the Vulkan library in the system-specific default location and returns an error if it cannot be located. This function functions the same way as SetGetInstanceProcAddr but without relying on a separate windowing library to load Vulkan.

func SetGetInstanceProcAddr

func SetGetInstanceProcAddr(getProcAddr unsafe.Pointer)

SetGetInstanceProcAddr sets the GetInstanceProcAddr function pointer used to load Vulkan symbols. The function can be retrieved from GLFW using GetInstanceProcAddress or from SDL2 using VulkanGetVkGetInstanceProcAddr. This function must be called before Init().

func ToString

func ToString(buf []byte) string

func UnmapMemory

func UnmapMemory(device Device, memory DeviceMemory)

UnmapMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkUnmapMemory.html

func UpdateDescriptorSets

func UpdateDescriptorSets(device Device, descriptorWriteCount uint32, pDescriptorWrites *WriteDescriptorSet, descriptorCopyCount uint32, pDescriptorCopies *CopyDescriptorSet)

UpdateDescriptorSets function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkUpdateDescriptorSets.html

Types

type AccelerationStructureCreateInfoNVX

type AccelerationStructureCreateInfoNVX struct {
	SType         StructureType
	PNext         unsafe.Pointer
	Type          AccelerationStructureTypeNVX
	Flags         BuildAccelerationStructureFlagsNVX
	CompactedSize DeviceSize
	InstanceCount uint32
	GeometryCount uint32
	PGeometries   *GeometryNVX
}

AccelerationStructureCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureCreateInfoNVX

type AccelerationStructureMemoryRequirementsInfoNVX

type AccelerationStructureMemoryRequirementsInfoNVX struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	AccelerationStructure AccelerationStructureNVX
}

AccelerationStructureMemoryRequirementsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureMemoryRequirementsInfoNVX

type AccelerationStructureTypeNVX

type AccelerationStructureTypeNVX int32

AccelerationStructureTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureTypeNVX

const (
	AccelerationStructureTypeTopLevelNvx    AccelerationStructureTypeNVX = iota
	AccelerationStructureTypeBottomLevelNvx AccelerationStructureTypeNVX = 1
	AccelerationStructureTypeBeginRangeNvx  AccelerationStructureTypeNVX = 0
	AccelerationStructureTypeEndRangeNvx    AccelerationStructureTypeNVX = 1
	AccelerationStructureTypeRangeSizeNvx   AccelerationStructureTypeNVX = 2
	AccelerationStructureTypeMaxEnumNvx     AccelerationStructureTypeNVX = 2147483647
)

AccelerationStructureTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkAccelerationStructureTypeNVX

type AccessFlagBits

type AccessFlagBits int32

AccessFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html

const (
	AccessIndirectCommandReadBit            AccessFlagBits = 1
	AccessIndexReadBit                      AccessFlagBits = 2
	AccessVertexAttributeReadBit            AccessFlagBits = 4
	AccessUniformReadBit                    AccessFlagBits = 8
	AccessInputAttachmentReadBit            AccessFlagBits = 16
	AccessShaderReadBit                     AccessFlagBits = 32
	AccessShaderWriteBit                    AccessFlagBits = 64
	AccessColorAttachmentReadBit            AccessFlagBits = 128
	AccessColorAttachmentWriteBit           AccessFlagBits = 256
	AccessDepthStencilAttachmentReadBit     AccessFlagBits = 512
	AccessDepthStencilAttachmentWriteBit    AccessFlagBits = 1024
	AccessTransferReadBit                   AccessFlagBits = 2048
	AccessTransferWriteBit                  AccessFlagBits = 4096
	AccessHostReadBit                       AccessFlagBits = 8192
	AccessHostWriteBit                      AccessFlagBits = 16384
	AccessMemoryReadBit                     AccessFlagBits = 32768
	AccessMemoryWriteBit                    AccessFlagBits = 65536
	AccessTransformFeedbackWriteBit         AccessFlagBits = 33554432
	AccessTransformFeedbackCounterReadBit   AccessFlagBits = 67108864
	AccessTransformFeedbackCounterWriteBit  AccessFlagBits = 134217728
	AccessConditionalRenderingReadBit       AccessFlagBits = 1048576
	AccessCommandProcessReadBitNvx          AccessFlagBits = 131072
	AccessCommandProcessWriteBitNvx         AccessFlagBits = 262144
	AccessColorAttachmentReadNoncoherentBit AccessFlagBits = 524288
	AccessShadingRateImageReadBitNv         AccessFlagBits = 8388608
	AccessAccelerationStructureReadBitNvx   AccessFlagBits = 2097152
	AccessAccelerationStructureWriteBitNvx  AccessFlagBits = 4194304
	AccessFlagBitsMaxEnum                   AccessFlagBits = 2147483647
)

AccessFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAccessFlagBits.html

type AcquireNextImageInfo

type AcquireNextImageInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Swapchain  Swapchain
	Timeout    uint64
	Semaphore  Semaphore
	Fence      Fence
	DeviceMask uint32
}

AcquireNextImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireNextImageInfoKHR

type ApplicationInfo

type ApplicationInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	PApplicationName   *C.char
	ApplicationVersion uint32
	PEngineName        *C.char
	EngineVersion      uint32
	ApiVersion         uint32
}

ApplicationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkApplicationInfo.html

type AttachmentDescription

type AttachmentDescription struct {
	Flags          AttachmentDescriptionFlags
	Format         Format
	Samples        SampleCountFlagBits
	LoadOp         AttachmentLoadOp
	StoreOp        AttachmentStoreOp
	StencilLoadOp  AttachmentLoadOp
	StencilStoreOp AttachmentStoreOp
	InitialLayout  ImageLayout
	FinalLayout    ImageLayout
}

AttachmentDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescription.html

type AttachmentDescription2

type AttachmentDescription2 struct {
	SType          StructureType
	PNext          unsafe.Pointer
	Flags          AttachmentDescriptionFlags
	Format         Format
	Samples        SampleCountFlagBits
	LoadOp         AttachmentLoadOp
	StoreOp        AttachmentStoreOp
	StencilLoadOp  AttachmentLoadOp
	StencilStoreOp AttachmentStoreOp
	InitialLayout  ImageLayout
	FinalLayout    ImageLayout
}

AttachmentDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAttachmentDescription2KHR

type AttachmentDescriptionFlagBits

type AttachmentDescriptionFlagBits int32

AttachmentDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlagBits.html

const (
	AttachmentDescriptionMayAliasBit     AttachmentDescriptionFlagBits = 1
	AttachmentDescriptionFlagBitsMaxEnum AttachmentDescriptionFlagBits = 2147483647
)

AttachmentDescriptionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlagBits.html

type AttachmentDescriptionFlags

type AttachmentDescriptionFlags uint32

AttachmentDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentDescriptionFlags.html

type AttachmentLoadOp

type AttachmentLoadOp int32

AttachmentLoadOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentLoadOp.html

const (
	AttachmentLoadOpLoad       AttachmentLoadOp = iota
	AttachmentLoadOpClear      AttachmentLoadOp = 1
	AttachmentLoadOpDontCare   AttachmentLoadOp = 2
	AttachmentLoadOpBeginRange AttachmentLoadOp = 0
	AttachmentLoadOpEndRange   AttachmentLoadOp = 2
	AttachmentLoadOpRangeSize  AttachmentLoadOp = 3
	AttachmentLoadOpMaxEnum    AttachmentLoadOp = 2147483647
)

AttachmentLoadOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentLoadOp.html

type AttachmentReference

type AttachmentReference struct {
	Attachment uint32
	Layout     ImageLayout
}

AttachmentReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentReference.html

type AttachmentReference2

type AttachmentReference2 struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Attachment uint32
	Layout     ImageLayout
	AspectMask ImageAspectFlags
}

AttachmentReference2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAttachmentReference2KHR

type AttachmentSampleLocations

type AttachmentSampleLocations struct {
	AttachmentIndex     uint32
	SampleLocationsInfo SampleLocationsInfo
}

AttachmentSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentSampleLocationsEXT.html

type AttachmentStoreOp

type AttachmentStoreOp int32

AttachmentStoreOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentStoreOp.html

const (
	AttachmentStoreOpStore      AttachmentStoreOp = iota
	AttachmentStoreOpDontCare   AttachmentStoreOp = 1
	AttachmentStoreOpBeginRange AttachmentStoreOp = 0
	AttachmentStoreOpEndRange   AttachmentStoreOp = 1
	AttachmentStoreOpRangeSize  AttachmentStoreOp = 2
	AttachmentStoreOpMaxEnum    AttachmentStoreOp = 2147483647
)

AttachmentStoreOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkAttachmentStoreOp.html

type BaseInStructure

type BaseInStructure struct {
	SType StructureType
	PNext *BaseInStructure
}

BaseInStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseInStructure.html

type BaseOutStructure

type BaseOutStructure struct {
	SType StructureType
	PNext *BaseOutStructure
}

BaseOutStructure as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBaseOutStructure.html

type BindAccelerationStructureMemoryInfoNVX

type BindAccelerationStructureMemoryInfoNVX struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	AccelerationStructure AccelerationStructureNVX
	Memory                DeviceMemory
	MemoryOffset          DeviceSize
	DeviceIndexCount      uint32
	PDeviceIndices        *uint32
}

BindAccelerationStructureMemoryInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBindAccelerationStructureMemoryInfoNVX

type BindBufferMemoryDeviceGroupInfo

type BindBufferMemoryDeviceGroupInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	DeviceIndexCount uint32
	PDeviceIndices   *uint32
}

BindBufferMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryDeviceGroupInfo.html

type BindBufferMemoryInfo

type BindBufferMemoryInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	Buffer       Buffer
	Memory       DeviceMemory
	MemoryOffset DeviceSize
}

BindBufferMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindBufferMemoryInfo.html

type BindImageMemoryDeviceGroupInfo

type BindImageMemoryDeviceGroupInfo struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	DeviceIndexCount             uint32
	PDeviceIndices               *uint32
	SplitInstanceBindRegionCount uint32
	PSplitInstanceBindRegions    *Rect2D
}

BindImageMemoryDeviceGroupInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryDeviceGroupInfo.html

type BindImageMemoryInfo

type BindImageMemoryInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	Image        Image
	Memory       DeviceMemory
	MemoryOffset DeviceSize
}

BindImageMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImageMemoryInfo.html

type BindImageMemorySwapchainInfo

type BindImageMemorySwapchainInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Swapchain  Swapchain
	ImageIndex uint32
}

BindImageMemorySwapchainInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkBindImageMemorySwapchainInfoKHR

type BindImagePlaneMemoryInfo

type BindImagePlaneMemoryInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	PlaneAspect ImageAspectFlagBits
}

BindImagePlaneMemoryInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindImagePlaneMemoryInfo.html

type BindSparseInfo

type BindSparseInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	WaitSemaphoreCount   uint32
	PWaitSemaphores      *Semaphore
	BufferBindCount      uint32
	PBufferBinds         *SparseBufferMemoryBindInfo
	ImageOpaqueBindCount uint32
	PImageOpaqueBinds    *SparseImageOpaqueMemoryBindInfo
	ImageBindCount       uint32
	PImageBinds          *SparseImageMemoryBindInfo
	SignalSemaphoreCount uint32
	PSignalSemaphores    *Semaphore
}

BindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBindSparseInfo.html

type BlendFactor

type BlendFactor int32

BlendFactor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendFactor.html

const (
	BlendFactorZero                  BlendFactor = iota
	BlendFactorOne                   BlendFactor = 1
	BlendFactorSrcColor              BlendFactor = 2
	BlendFactorOneMinusSrcColor      BlendFactor = 3
	BlendFactorDstColor              BlendFactor = 4
	BlendFactorOneMinusDstColor      BlendFactor = 5
	BlendFactorSrcAlpha              BlendFactor = 6
	BlendFactorOneMinusSrcAlpha      BlendFactor = 7
	BlendFactorDstAlpha              BlendFactor = 8
	BlendFactorOneMinusDstAlpha      BlendFactor = 9
	BlendFactorConstantColor         BlendFactor = 10
	BlendFactorOneMinusConstantColor BlendFactor = 11
	BlendFactorConstantAlpha         BlendFactor = 12
	BlendFactorOneMinusConstantAlpha BlendFactor = 13
	BlendFactorSrcAlphaSaturate      BlendFactor = 14
	BlendFactorSrc1Color             BlendFactor = 15
	BlendFactorOneMinusSrc1Color     BlendFactor = 16
	BlendFactorSrc1Alpha             BlendFactor = 17
	BlendFactorOneMinusSrc1Alpha     BlendFactor = 18
	BlendFactorBeginRange            BlendFactor = 0
	BlendFactorEndRange              BlendFactor = 18
	BlendFactorRangeSize             BlendFactor = 19
	BlendFactorMaxEnum               BlendFactor = 2147483647
)

BlendFactor enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendFactor.html

type BlendOp

type BlendOp int32

BlendOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendOp.html

const (
	BlendOpAdd              BlendOp = iota
	BlendOpSubtract         BlendOp = 1
	BlendOpReverseSubtract  BlendOp = 2
	BlendOpMin              BlendOp = 3
	BlendOpMax              BlendOp = 4
	BlendOpZero             BlendOp = 1000148000
	BlendOpSrc              BlendOp = 1000148001
	BlendOpDst              BlendOp = 1000148002
	BlendOpSrcOver          BlendOp = 1000148003
	BlendOpDstOver          BlendOp = 1000148004
	BlendOpSrcIn            BlendOp = 1000148005
	BlendOpDstIn            BlendOp = 1000148006
	BlendOpSrcOut           BlendOp = 1000148007
	BlendOpDstOut           BlendOp = 1000148008
	BlendOpSrcAtop          BlendOp = 1000148009
	BlendOpDstAtop          BlendOp = 1000148010
	BlendOpXor              BlendOp = 1000148011
	BlendOpMultiply         BlendOp = 1000148012
	BlendOpScreen           BlendOp = 1000148013
	BlendOpOverlay          BlendOp = 1000148014
	BlendOpDarken           BlendOp = 1000148015
	BlendOpLighten          BlendOp = 1000148016
	BlendOpColordodge       BlendOp = 1000148017
	BlendOpColorburn        BlendOp = 1000148018
	BlendOpHardlight        BlendOp = 1000148019
	BlendOpSoftlight        BlendOp = 1000148020
	BlendOpDifference       BlendOp = 1000148021
	BlendOpExclusion        BlendOp = 1000148022
	BlendOpInvert           BlendOp = 1000148023
	BlendOpInvertRgb        BlendOp = 1000148024
	BlendOpLineardodge      BlendOp = 1000148025
	BlendOpLinearburn       BlendOp = 1000148026
	BlendOpVividlight       BlendOp = 1000148027
	BlendOpLinearlight      BlendOp = 1000148028
	BlendOpPinlight         BlendOp = 1000148029
	BlendOpHardmix          BlendOp = 1000148030
	BlendOpHslHue           BlendOp = 1000148031
	BlendOpHslSaturation    BlendOp = 1000148032
	BlendOpHslColor         BlendOp = 1000148033
	BlendOpHslLuminosity    BlendOp = 1000148034
	BlendOpPlus             BlendOp = 1000148035
	BlendOpPlusClamped      BlendOp = 1000148036
	BlendOpPlusClampedAlpha BlendOp = 1000148037
	BlendOpPlusDarker       BlendOp = 1000148038
	BlendOpMinus            BlendOp = 1000148039
	BlendOpMinusClamped     BlendOp = 1000148040
	BlendOpContrast         BlendOp = 1000148041
	BlendOpInvertOvg        BlendOp = 1000148042
	BlendOpRed              BlendOp = 1000148043
	BlendOpGreen            BlendOp = 1000148044
	BlendOpBlue             BlendOp = 1000148045
	BlendOpBeginRange       BlendOp = 0
	BlendOpEndRange         BlendOp = 4
	BlendOpRangeSize        BlendOp = 5
	BlendOpMaxEnum          BlendOp = 2147483647
)

BlendOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendOp.html

type BlendOverlap

type BlendOverlap int32

BlendOverlap as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendOverlapEXT.html

const (
	BlendOverlapUncorrelated BlendOverlap = iota
	BlendOverlapDisjoint     BlendOverlap = 1
	BlendOverlapConjoint     BlendOverlap = 2
	BlendOverlapBeginRange   BlendOverlap = 0
	BlendOverlapEndRange     BlendOverlap = 2
	BlendOverlapRangeSize    BlendOverlap = 3
	BlendOverlapMaxEnum      BlendOverlap = 2147483647
)

BlendOverlap enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBlendOverlapEXT.html

type Bool32

type Bool32 uint32

Bool32 type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBool32.html

func (Bool32) B

func (b Bool32) B() bool

type BorderColor

type BorderColor int32

BorderColor as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html

const (
	BorderColorFloatTransparentBlack BorderColor = iota
	BorderColorIntTransparentBlack   BorderColor = 1
	BorderColorFloatOpaqueBlack      BorderColor = 2
	BorderColorIntOpaqueBlack        BorderColor = 3
	BorderColorFloatOpaqueWhite      BorderColor = 4
	BorderColorIntOpaqueWhite        BorderColor = 5
	BorderColorBeginRange            BorderColor = 0
	BorderColorEndRange              BorderColor = 5
	BorderColorRangeSize             BorderColor = 6
	BorderColorMaxEnum               BorderColor = 2147483647
)

BorderColor enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBorderColor.html

type BufferCopy

type BufferCopy struct {
	SrcOffset DeviceSize
	DstOffset DeviceSize
	Size      DeviceSize
}

BufferCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCopy.html

type BufferCreateFlagBits

type BufferCreateFlagBits int32

BufferCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateFlagBits.html

const (
	BufferCreateSparseBindingBit   BufferCreateFlagBits = 1
	BufferCreateSparseResidencyBit BufferCreateFlagBits = 2
	BufferCreateSparseAliasedBit   BufferCreateFlagBits = 4
	BufferCreateProtectedBit       BufferCreateFlagBits = 8
	BufferCreateFlagBitsMaxEnum    BufferCreateFlagBits = 2147483647
)

BufferCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateFlagBits.html

type BufferCreateInfo

type BufferCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 BufferCreateFlags
	Size                  DeviceSize
	Usage                 BufferUsageFlags
	SharingMode           SharingMode
	QueueFamilyIndexCount uint32
	PQueueFamilyIndices   *uint32
}

BufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferCreateInfo.html

type BufferImageCopy

type BufferImageCopy struct {
	BufferOffset      DeviceSize
	BufferRowLength   uint32
	BufferImageHeight uint32
	ImageSubresource  ImageSubresourceLayers
	ImageOffset       Offset3D
	ImageExtent       Extent3D
}

BufferImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferImageCopy.html

type BufferMemoryBarrier

type BufferMemoryBarrier struct {
	SType               StructureType
	PNext               unsafe.Pointer
	SrcAccessMask       AccessFlags
	DstAccessMask       AccessFlags
	SrcQueueFamilyIndex uint32
	DstQueueFamilyIndex uint32
	Buffer              Buffer
	Offset              DeviceSize
	Size                DeviceSize
}

BufferMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryBarrier.html

type BufferMemoryRequirementsInfo2

type BufferMemoryRequirementsInfo2 struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Buffer Buffer
}

BufferMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferMemoryRequirementsInfo2.html

type BufferUsageFlagBits

type BufferUsageFlagBits int32

BufferUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferUsageFlagBits.html

const (
	BufferUsageTransferSrcBit                    BufferUsageFlagBits = 1
	BufferUsageTransferDstBit                    BufferUsageFlagBits = 2
	BufferUsageUniformTexelBufferBit             BufferUsageFlagBits = 4
	BufferUsageStorageTexelBufferBit             BufferUsageFlagBits = 8
	BufferUsageUniformBufferBit                  BufferUsageFlagBits = 16
	BufferUsageStorageBufferBit                  BufferUsageFlagBits = 32
	BufferUsageIndexBufferBit                    BufferUsageFlagBits = 64
	BufferUsageVertexBufferBit                   BufferUsageFlagBits = 128
	BufferUsageIndirectBufferBit                 BufferUsageFlagBits = 256
	BufferUsageTransformFeedbackBufferBit        BufferUsageFlagBits = 2048
	BufferUsageTransformFeedbackCounterBufferBit BufferUsageFlagBits = 4096
	BufferUsageConditionalRenderingBit           BufferUsageFlagBits = 512
	BufferUsageRaytracingBitNvx                  BufferUsageFlagBits = 1024
	BufferUsageFlagBitsMaxEnum                   BufferUsageFlagBits = 2147483647
)

BufferUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferUsageFlagBits.html

type BufferViewCreateFlags

type BufferViewCreateFlags uint32

BufferViewCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferViewCreateFlags.html

type BufferViewCreateInfo

type BufferViewCreateInfo struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Flags  BufferViewCreateFlags
	Buffer Buffer
	Format Format
	Offset DeviceSize
	Range  DeviceSize
}

BufferViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkBufferViewCreateInfo.html

type BuildAccelerationStructureFlagBitsNVX

type BuildAccelerationStructureFlagBitsNVX int32

BuildAccelerationStructureFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagBitsNVX

const (
	BuildAccelerationStructureAllowUpdateBitNvx     BuildAccelerationStructureFlagBitsNVX = 1
	BuildAccelerationStructureAllowCompactionBitNvx BuildAccelerationStructureFlagBitsNVX = 2
	BuildAccelerationStructurePreferFastTraceBitNvx BuildAccelerationStructureFlagBitsNVX = 4
	BuildAccelerationStructurePreferFastBuildBitNvx BuildAccelerationStructureFlagBitsNVX = 8
	BuildAccelerationStructureLowMemoryBitNvx       BuildAccelerationStructureFlagBitsNVX = 16
	BuildAccelerationStructureFlagBitsMaxEnumNvx    BuildAccelerationStructureFlagBitsNVX = 2147483647
)

BuildAccelerationStructureFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagBitsNVX

type BuildAccelerationStructureFlagsNVX

type BuildAccelerationStructureFlagsNVX uint32

BuildAccelerationStructureFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkBuildAccelerationStructureFlagsNVX

type CalibratedTimestampInfo

type CalibratedTimestampInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	TimeDomain TimeDomain
}

CalibratedTimestampInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCalibratedTimestampInfoEXT.html

type Char added in v1.1.1

type Char = C.char

type CheckpointDataNV

type CheckpointDataNV struct {
	SType             StructureType
	PNext             unsafe.Pointer
	Stage             PipelineStageFlagBits
	PCheckpointMarker unsafe.Pointer
}

CheckpointDataNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCheckpointDataNV.html

type ChromaLocation

type ChromaLocation int32

ChromaLocation as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkChromaLocation.html

const (
	ChromaLocationCositedEven ChromaLocation = iota
	ChromaLocationMidpoint    ChromaLocation = 1
	ChromaLocationBeginRange  ChromaLocation = 0
	ChromaLocationEndRange    ChromaLocation = 1
	ChromaLocationRangeSize   ChromaLocation = 2
	ChromaLocationMaxEnum     ChromaLocation = 2147483647
)

ChromaLocation enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkChromaLocation.html

type ClearAttachment

type ClearAttachment struct {
	AspectMask      ImageAspectFlags
	ColorAttachment uint32
	ClearValue      ClearValue
}

ClearAttachment as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearAttachment.html

type ClearColorValue

type ClearColorValue [sizeofClearColorValue]byte

type ClearDepthStencilValue

type ClearDepthStencilValue struct {
	Depth   float32
	Stencil uint32
}

ClearDepthStencilValue as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearDepthStencilValue.html

type ClearRect

type ClearRect struct {
	Rect           Rect2D
	BaseArrayLayer uint32
	LayerCount     uint32
}

ClearRect as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkClearRect.html

type ClearValue

type ClearValue [sizeofClearValue]byte

func NewClearDepthStencil

func NewClearDepthStencil(depth float32, stencil uint32) ClearValue

func NewClearValue

func NewClearValue(color []float32) ClearValue

func (*ClearValue) SetColor

func (cv *ClearValue) SetColor(color []float32)

func (*ClearValue) SetDepthStencil

func (cv *ClearValue) SetDepthStencil(depth float32, stencil uint32)

type CmdProcessCommandsInfoNVX

type CmdProcessCommandsInfoNVX struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	ObjectTable                ObjectTableNVX
	IndirectCommandsLayout     IndirectCommandsLayoutNVX
	IndirectCommandsTokenCount uint32
	PIndirectCommandsTokens    *IndirectCommandsTokenNVX
	MaxSequencesCount          uint32
	TargetCommandBuffer        CommandBuffer
	SequencesCountBuffer       Buffer
	SequencesCountOffset       DeviceSize
	SequencesIndexBuffer       Buffer
	SequencesIndexOffset       DeviceSize
}

CmdProcessCommandsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCmdProcessCommandsInfoNVX

type CmdReserveSpaceForCommandsInfoNVX

type CmdReserveSpaceForCommandsInfoNVX struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	ObjectTable            ObjectTableNVX
	IndirectCommandsLayout IndirectCommandsLayoutNVX
	MaxSequencesCount      uint32
}

CmdReserveSpaceForCommandsInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCmdReserveSpaceForCommandsInfoNVX

type CoarseSampleLocationNV

type CoarseSampleLocationNV struct {
	PixelX uint32
	PixelY uint32
	Sample uint32
}

CoarseSampleLocationNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleLocationNV.html

type CoarseSampleOrderCustomNV

type CoarseSampleOrderCustomNV struct {
	ShadingRate         ShadingRatePaletteEntryNV
	SampleCount         uint32
	SampleLocationCount uint32
	PSampleLocations    *CoarseSampleLocationNV
}

CoarseSampleOrderCustomNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleOrderCustomNV.html

type CoarseSampleOrderTypeNV

type CoarseSampleOrderTypeNV int32

CoarseSampleOrderTypeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleOrderTypeNV.html

const (
	CoarseSampleOrderTypeDefaultNv     CoarseSampleOrderTypeNV = iota
	CoarseSampleOrderTypeCustomNv      CoarseSampleOrderTypeNV = 1
	CoarseSampleOrderTypePixelMajorNv  CoarseSampleOrderTypeNV = 2
	CoarseSampleOrderTypeSampleMajorNv CoarseSampleOrderTypeNV = 3
	CoarseSampleOrderTypeBeginRangeNv  CoarseSampleOrderTypeNV = 0
	CoarseSampleOrderTypeEndRangeNv    CoarseSampleOrderTypeNV = 3
	CoarseSampleOrderTypeRangeSizeNv   CoarseSampleOrderTypeNV = 4
	CoarseSampleOrderTypeMaxEnumNv     CoarseSampleOrderTypeNV = 2147483647
)

CoarseSampleOrderTypeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoarseSampleOrderTypeNV.html

type ColorComponentFlagBits

type ColorComponentFlagBits int32

ColorComponentFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html

const (
	ColorComponentRBit            ColorComponentFlagBits = 1
	ColorComponentGBit            ColorComponentFlagBits = 2
	ColorComponentBBit            ColorComponentFlagBits = 4
	ColorComponentABit            ColorComponentFlagBits = 8
	ColorComponentFlagBitsMaxEnum ColorComponentFlagBits = 2147483647
)

ColorComponentFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlagBits.html

type ColorComponentFlags

type ColorComponentFlags uint32

ColorComponentFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkColorComponentFlags.html

type ColorSpace

type ColorSpace int32

ColorSpace as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkColorSpaceKHR

const (
	ColorSpaceSrgbNonlinear         ColorSpace = iota
	ColorSpaceDisplayP3Nonlinear    ColorSpace = 1000104001
	ColorSpaceExtendedSrgbLinear    ColorSpace = 1000104002
	ColorSpaceDciP3Linear           ColorSpace = 1000104003
	ColorSpaceDciP3Nonlinear        ColorSpace = 1000104004
	ColorSpaceBt709Linear           ColorSpace = 1000104005
	ColorSpaceBt709Nonlinear        ColorSpace = 1000104006
	ColorSpaceBt2020Linear          ColorSpace = 1000104007
	ColorSpaceHdr10St2084           ColorSpace = 1000104008
	ColorSpaceDolbyvision           ColorSpace = 1000104009
	ColorSpaceHdr10Hlg              ColorSpace = 1000104010
	ColorSpaceAdobergbLinear        ColorSpace = 1000104011
	ColorSpaceAdobergbNonlinear     ColorSpace = 1000104012
	ColorSpacePassThrough           ColorSpace = 1000104013
	ColorSpaceExtendedSrgbNonlinear ColorSpace = 1000104014
	ColorspaceSrgbNonlinear         ColorSpace = 0
	ColorSpaceBeginRange            ColorSpace = 0
	ColorSpaceEndRange              ColorSpace = 0
	ColorSpaceRangeSize             ColorSpace = 1
	ColorSpaceMaxEnum               ColorSpace = 2147483647
)

ColorSpace enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkColorSpaceKHR

type CommandBufferAllocateInfo

type CommandBufferAllocateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	CommandPool        CommandPool
	Level              CommandBufferLevel
	CommandBufferCount uint32
}

CommandBufferAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferAllocateInfo.html

type CommandBufferBeginInfo

type CommandBufferBeginInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            CommandBufferUsageFlags
	PInheritanceInfo *CommandBufferInheritanceInfo
}

CommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferBeginInfo.html

type CommandBufferInheritanceConditionalRenderingInfo

type CommandBufferInheritanceConditionalRenderingInfo struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	ConditionalRenderingEnable Bool32
}

CommandBufferInheritanceConditionalRenderingInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceConditionalRenderingInfoEXT.html

type CommandBufferInheritanceInfo

type CommandBufferInheritanceInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	RenderPass           RenderPass
	Subpass              uint32
	Framebuffer          Framebuffer
	OcclusionQueryEnable Bool32
	QueryFlags           QueryControlFlags
	PipelineStatistics   QueryPipelineStatisticFlags
}

CommandBufferInheritanceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferInheritanceInfo.html

type CommandBufferLevel

type CommandBufferLevel int32

CommandBufferLevel as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferLevel.html

const (
	CommandBufferLevelPrimary    CommandBufferLevel = iota
	CommandBufferLevelSecondary  CommandBufferLevel = 1
	CommandBufferLevelBeginRange CommandBufferLevel = 0
	CommandBufferLevelEndRange   CommandBufferLevel = 1
	CommandBufferLevelRangeSize  CommandBufferLevel = 2
	CommandBufferLevelMaxEnum    CommandBufferLevel = 2147483647
)

CommandBufferLevel enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferLevel.html

type CommandBufferResetFlagBits

type CommandBufferResetFlagBits int32

CommandBufferResetFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferResetFlagBits.html

const (
	CommandBufferResetReleaseResourcesBit CommandBufferResetFlagBits = 1
	CommandBufferResetFlagBitsMaxEnum     CommandBufferResetFlagBits = 2147483647
)

CommandBufferResetFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferResetFlagBits.html

type CommandBufferResetFlags

type CommandBufferResetFlags uint32

CommandBufferResetFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferResetFlags.html

type CommandBufferUsageFlagBits

type CommandBufferUsageFlagBits int32

CommandBufferUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferUsageFlagBits.html

const (
	CommandBufferUsageOneTimeSubmitBit      CommandBufferUsageFlagBits = 1
	CommandBufferUsageRenderPassContinueBit CommandBufferUsageFlagBits = 2
	CommandBufferUsageSimultaneousUseBit    CommandBufferUsageFlagBits = 4
	CommandBufferUsageFlagBitsMaxEnum       CommandBufferUsageFlagBits = 2147483647
)

CommandBufferUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferUsageFlagBits.html

type CommandBufferUsageFlags

type CommandBufferUsageFlags uint32

CommandBufferUsageFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandBufferUsageFlags.html

type CommandPoolCreateFlagBits

type CommandPoolCreateFlagBits int32

CommandPoolCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateFlagBits.html

const (
	CommandPoolCreateTransientBit          CommandPoolCreateFlagBits = 1
	CommandPoolCreateResetCommandBufferBit CommandPoolCreateFlagBits = 2
	CommandPoolCreateProtectedBit          CommandPoolCreateFlagBits = 4
	CommandPoolCreateFlagBitsMaxEnum       CommandPoolCreateFlagBits = 2147483647
)

CommandPoolCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateFlagBits.html

type CommandPoolCreateFlags

type CommandPoolCreateFlags uint32

CommandPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateFlags.html

type CommandPoolCreateInfo

type CommandPoolCreateInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            CommandPoolCreateFlags
	QueueFamilyIndex uint32
}

CommandPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolCreateInfo.html

type CommandPoolResetFlagBits

type CommandPoolResetFlagBits int32

CommandPoolResetFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolResetFlagBits.html

const (
	CommandPoolResetReleaseResourcesBit CommandPoolResetFlagBits = 1
	CommandPoolResetFlagBitsMaxEnum     CommandPoolResetFlagBits = 2147483647
)

CommandPoolResetFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolResetFlagBits.html

type CommandPoolResetFlags

type CommandPoolResetFlags uint32

CommandPoolResetFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolResetFlags.html

type CommandPoolTrimFlags

type CommandPoolTrimFlags uint32

CommandPoolTrimFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCommandPoolTrimFlags.html

type CompareOp

type CompareOp int32

CompareOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html

const (
	CompareOpNever          CompareOp = iota
	CompareOpLess           CompareOp = 1
	CompareOpEqual          CompareOp = 2
	CompareOpLessOrEqual    CompareOp = 3
	CompareOpGreater        CompareOp = 4
	CompareOpNotEqual       CompareOp = 5
	CompareOpGreaterOrEqual CompareOp = 6
	CompareOpAlways         CompareOp = 7
	CompareOpBeginRange     CompareOp = 0
	CompareOpEndRange       CompareOp = 7
	CompareOpRangeSize      CompareOp = 8
	CompareOpMaxEnum        CompareOp = 2147483647
)

CompareOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCompareOp.html

type ComponentSwizzle

type ComponentSwizzle int32

ComponentSwizzle as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentSwizzle.html

const (
	ComponentSwizzleIdentity   ComponentSwizzle = iota
	ComponentSwizzleZero       ComponentSwizzle = 1
	ComponentSwizzleOne        ComponentSwizzle = 2
	ComponentSwizzleR          ComponentSwizzle = 3
	ComponentSwizzleG          ComponentSwizzle = 4
	ComponentSwizzleB          ComponentSwizzle = 5
	ComponentSwizzleA          ComponentSwizzle = 6
	ComponentSwizzleBeginRange ComponentSwizzle = 0
	ComponentSwizzleEndRange   ComponentSwizzle = 6
	ComponentSwizzleRangeSize  ComponentSwizzle = 7
	ComponentSwizzleMaxEnum    ComponentSwizzle = 2147483647
)

ComponentSwizzle enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComponentSwizzle.html

type CompositeAlphaFlagBits

type CompositeAlphaFlagBits int32

CompositeAlphaFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCompositeAlphaFlagBitsKHR

const (
	CompositeAlphaOpaqueBit         CompositeAlphaFlagBits = 1
	CompositeAlphaPreMultipliedBit  CompositeAlphaFlagBits = 2
	CompositeAlphaPostMultipliedBit CompositeAlphaFlagBits = 4
	CompositeAlphaInheritBit        CompositeAlphaFlagBits = 8
	CompositeAlphaFlagBitsMaxEnum   CompositeAlphaFlagBits = 2147483647
)

CompositeAlphaFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCompositeAlphaFlagBitsKHR

type ComputePipelineCreateInfo

type ComputePipelineCreateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	Flags              PipelineCreateFlags
	Stage              PipelineShaderStageCreateInfo
	Layout             PipelineLayout
	BasePipelineHandle Pipeline
	BasePipelineIndex  int32
}

ComputePipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkComputePipelineCreateInfo.html

type ConditionalRenderingBeginInfo

type ConditionalRenderingBeginInfo struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Buffer Buffer
	Offset DeviceSize
	Flags  ConditionalRenderingFlags
}

ConditionalRenderingBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingBeginInfoEXT.html

type ConditionalRenderingFlagBits

type ConditionalRenderingFlagBits int32

ConditionalRenderingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html

const (
	ConditionalRenderingInvertedBit     ConditionalRenderingFlagBits = 1
	ConditionalRenderingFlagBitsMaxEnum ConditionalRenderingFlagBits = 2147483647
)

ConditionalRenderingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagBitsEXT.html

type ConditionalRenderingFlags

type ConditionalRenderingFlags uint32

ConditionalRenderingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConditionalRenderingFlagsEXT.html

type ConformanceVersion

type ConformanceVersion struct {
	Major    byte
	Minor    byte
	Subminor byte
	Patch    byte
}

ConformanceVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkConformanceVersionKHR

type ConservativeRasterizationMode

type ConservativeRasterizationMode int32

ConservativeRasterizationMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConservativeRasterizationModeEXT.html

const (
	ConservativeRasterizationModeDisabled      ConservativeRasterizationMode = iota
	ConservativeRasterizationModeOverestimate  ConservativeRasterizationMode = 1
	ConservativeRasterizationModeUnderestimate ConservativeRasterizationMode = 2
	ConservativeRasterizationModeBeginRange    ConservativeRasterizationMode = 0
	ConservativeRasterizationModeEndRange      ConservativeRasterizationMode = 2
	ConservativeRasterizationModeRangeSize     ConservativeRasterizationMode = 3
	ConservativeRasterizationModeMaxEnum       ConservativeRasterizationMode = 2147483647
)

ConservativeRasterizationMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkConservativeRasterizationModeEXT.html

type CopyAccelerationStructureModeNVX

type CopyAccelerationStructureModeNVX int32

CopyAccelerationStructureModeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCopyAccelerationStructureModeNVX

const (
	CopyAccelerationStructureModeCloneNvx      CopyAccelerationStructureModeNVX = iota
	CopyAccelerationStructureModeCompactNvx    CopyAccelerationStructureModeNVX = 1
	CopyAccelerationStructureModeBeginRangeNvx CopyAccelerationStructureModeNVX = 0
	CopyAccelerationStructureModeEndRangeNvx   CopyAccelerationStructureModeNVX = 1
	CopyAccelerationStructureModeRangeSizeNvx  CopyAccelerationStructureModeNVX = 2
	CopyAccelerationStructureModeMaxEnumNvx    CopyAccelerationStructureModeNVX = 2147483647
)

CopyAccelerationStructureModeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkCopyAccelerationStructureModeNVX

type CopyDescriptorSet

type CopyDescriptorSet struct {
	SType           StructureType
	PNext           unsafe.Pointer
	SrcSet          DescriptorSet
	SrcBinding      uint32
	SrcArrayElement uint32
	DstSet          DescriptorSet
	DstBinding      uint32
	DstArrayElement uint32
	DescriptorCount uint32
}

CopyDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCopyDescriptorSet.html

type CoverageModulationModeNV

type CoverageModulationModeNV int32

CoverageModulationModeNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoverageModulationModeNV.html

const (
	CoverageModulationModeNoneNv       CoverageModulationModeNV = iota
	CoverageModulationModeRgbNv        CoverageModulationModeNV = 1
	CoverageModulationModeAlphaNv      CoverageModulationModeNV = 2
	CoverageModulationModeRgbaNv       CoverageModulationModeNV = 3
	CoverageModulationModeBeginRangeNv CoverageModulationModeNV = 0
	CoverageModulationModeEndRangeNv   CoverageModulationModeNV = 3
	CoverageModulationModeRangeSizeNv  CoverageModulationModeNV = 4
	CoverageModulationModeMaxEnumNv    CoverageModulationModeNV = 2147483647
)

CoverageModulationModeNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCoverageModulationModeNV.html

type CullModeFlagBits

type CullModeFlagBits int32

CullModeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCullModeFlagBits.html

const (
	CullModeNone            CullModeFlagBits = iota
	CullModeFrontBit        CullModeFlagBits = 1
	CullModeBackBit         CullModeFlagBits = 2
	CullModeFrontAndBack    CullModeFlagBits = 3
	CullModeFlagBitsMaxEnum CullModeFlagBits = 2147483647
)

CullModeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkCullModeFlagBits.html

type DebugMarkerMarkerInfo

type DebugMarkerMarkerInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	PMarkerName *C.char
	Color       [4]float32
}

DebugMarkerMarkerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerMarkerInfoEXT.html

type DebugMarkerObjectNameInfo

type DebugMarkerObjectNameInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	ObjectType  DebugReportObjectType
	Object      uint64
	PObjectName *C.char
}

DebugMarkerObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectNameInfoEXT.html

type DebugMarkerObjectTagInfo

type DebugMarkerObjectTagInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	ObjectType DebugReportObjectType
	Object     uint64
	TagName    uint64
	TagSize    uint
	PTag       unsafe.Pointer
}

DebugMarkerObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugMarkerObjectTagInfoEXT.html

type DebugReportCallbackCreateInfo

type DebugReportCallbackCreateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	Flags       DebugReportFlags
	PfnCallback DebugReportCallbackFunc
	PUserData   unsafe.Pointer
}

DebugReportCallbackCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportCallbackCreateInfoEXT.html

type DebugReportCallbackFunc

type DebugReportCallbackFunc func(flags DebugReportFlags, objectType DebugReportObjectType, object uint64, location uint, messageCode int32, pLayerPrefix string, pMessage string, pUserData unsafe.Pointer) Bool32

DebugReportCallbackFunc type as declared in vulkan/vulkan_core.h:6207

type DebugReportFlagBits

type DebugReportFlagBits int32

DebugReportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportFlagBitsEXT.html

const (
	DebugReportInformationBit        DebugReportFlagBits = 1
	DebugReportWarningBit            DebugReportFlagBits = 2
	DebugReportPerformanceWarningBit DebugReportFlagBits = 4
	DebugReportErrorBit              DebugReportFlagBits = 8
	DebugReportDebugBit              DebugReportFlagBits = 16
	DebugReportFlagBitsMaxEnum       DebugReportFlagBits = 2147483647
)

DebugReportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportFlagBitsEXT.html

type DebugReportObjectType

type DebugReportObjectType int32

DebugReportObjectType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportObjectTypeEXT.html

const (
	DebugReportObjectTypeUnknown                     DebugReportObjectType = iota
	DebugReportObjectTypeInstance                    DebugReportObjectType = 1
	DebugReportObjectTypePhysicalDevice              DebugReportObjectType = 2
	DebugReportObjectTypeDevice                      DebugReportObjectType = 3
	DebugReportObjectTypeQueue                       DebugReportObjectType = 4
	DebugReportObjectTypeSemaphore                   DebugReportObjectType = 5
	DebugReportObjectTypeCommandBuffer               DebugReportObjectType = 6
	DebugReportObjectTypeFence                       DebugReportObjectType = 7
	DebugReportObjectTypeDeviceMemory                DebugReportObjectType = 8
	DebugReportObjectTypeBuffer                      DebugReportObjectType = 9
	DebugReportObjectTypeImage                       DebugReportObjectType = 10
	DebugReportObjectTypeEvent                       DebugReportObjectType = 11
	DebugReportObjectTypeQueryPool                   DebugReportObjectType = 12
	DebugReportObjectTypeBufferView                  DebugReportObjectType = 13
	DebugReportObjectTypeImageView                   DebugReportObjectType = 14
	DebugReportObjectTypeShaderModule                DebugReportObjectType = 15
	DebugReportObjectTypePipelineCache               DebugReportObjectType = 16
	DebugReportObjectTypePipelineLayout              DebugReportObjectType = 17
	DebugReportObjectTypeRenderPass                  DebugReportObjectType = 18
	DebugReportObjectTypePipeline                    DebugReportObjectType = 19
	DebugReportObjectTypeDescriptorSetLayout         DebugReportObjectType = 20
	DebugReportObjectTypeSampler                     DebugReportObjectType = 21
	DebugReportObjectTypeDescriptorPool              DebugReportObjectType = 22
	DebugReportObjectTypeDescriptorSet               DebugReportObjectType = 23
	DebugReportObjectTypeFramebuffer                 DebugReportObjectType = 24
	DebugReportObjectTypeCommandPool                 DebugReportObjectType = 25
	DebugReportObjectTypeSurfaceKhr                  DebugReportObjectType = 26
	DebugReportObjectTypeSwapchainKhr                DebugReportObjectType = 27
	DebugReportObjectTypeDebugReportCallbackExt      DebugReportObjectType = 28
	DebugReportObjectTypeDisplayKhr                  DebugReportObjectType = 29
	DebugReportObjectTypeDisplayModeKhr              DebugReportObjectType = 30
	DebugReportObjectTypeObjectTableNvx              DebugReportObjectType = 31
	DebugReportObjectTypeIndirectCommandsLayoutNvx   DebugReportObjectType = 32
	DebugReportObjectTypeValidationCacheExt          DebugReportObjectType = 33
	DebugReportObjectTypeSamplerYcbcrConversion      DebugReportObjectType = 1000156000
	DebugReportObjectTypeDescriptorUpdateTemplate    DebugReportObjectType = 1000085000
	DebugReportObjectTypeAccelerationStructureNvx    DebugReportObjectType = 1000165000
	DebugReportObjectTypeDebugReport                 DebugReportObjectType = 28
	DebugReportObjectTypeValidationCache             DebugReportObjectType = 33
	DebugReportObjectTypeDescriptorUpdateTemplateKhr DebugReportObjectType = 1000085000
	DebugReportObjectTypeSamplerYcbcrConversionKhr   DebugReportObjectType = 1000156000
	DebugReportObjectTypeBeginRange                  DebugReportObjectType = 0
	DebugReportObjectTypeEndRange                    DebugReportObjectType = 33
	DebugReportObjectTypeRangeSize                   DebugReportObjectType = 34
	DebugReportObjectTypeMaxEnum                     DebugReportObjectType = 2147483647
)

DebugReportObjectType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugReportObjectTypeEXT.html

type DebugUtilsLabel

type DebugUtilsLabel struct {
	SType      StructureType
	PNext      unsafe.Pointer
	PLabelName *C.char
	Color      [4]float32
}

DebugUtilsLabel as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsLabelEXT.html

type DebugUtilsMessageSeverityFlagBits

type DebugUtilsMessageSeverityFlagBits int32

DebugUtilsMessageSeverityFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageSeverityFlagBitsEXT.html

const (
	DebugUtilsMessageSeverityVerboseBit      DebugUtilsMessageSeverityFlagBits = 1
	DebugUtilsMessageSeverityInfoBit         DebugUtilsMessageSeverityFlagBits = 16
	DebugUtilsMessageSeverityWarningBit      DebugUtilsMessageSeverityFlagBits = 256
	DebugUtilsMessageSeverityErrorBit        DebugUtilsMessageSeverityFlagBits = 4096
	DebugUtilsMessageSeverityFlagBitsMaxEnum DebugUtilsMessageSeverityFlagBits = 2147483647
)

DebugUtilsMessageSeverityFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageSeverityFlagBitsEXT.html

type DebugUtilsMessageSeverityFlags

type DebugUtilsMessageSeverityFlags uint32

DebugUtilsMessageSeverityFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageSeverityFlagsEXT.html

type DebugUtilsMessageTypeFlagBits

type DebugUtilsMessageTypeFlagBits int32

DebugUtilsMessageTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagBitsEXT.html

const (
	DebugUtilsMessageTypeGeneralBit      DebugUtilsMessageTypeFlagBits = 1
	DebugUtilsMessageTypeValidationBit   DebugUtilsMessageTypeFlagBits = 2
	DebugUtilsMessageTypePerformanceBit  DebugUtilsMessageTypeFlagBits = 4
	DebugUtilsMessageTypeFlagBitsMaxEnum DebugUtilsMessageTypeFlagBits = 2147483647
)

DebugUtilsMessageTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagBitsEXT.html

type DebugUtilsMessageTypeFlags

type DebugUtilsMessageTypeFlags uint32

DebugUtilsMessageTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsMessageTypeFlagsEXT.html

type DebugUtilsObjectNameInfo

type DebugUtilsObjectNameInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	ObjectType   ObjectType
	ObjectHandle uint64
	PObjectName  *C.char
}

DebugUtilsObjectNameInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectNameInfoEXT.html

type DebugUtilsObjectTagInfo

type DebugUtilsObjectTagInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	ObjectType   ObjectType
	ObjectHandle uint64
	TagName      uint64
	TagSize      uint
	PTag         unsafe.Pointer
}

DebugUtilsObjectTagInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDebugUtilsObjectTagInfoEXT.html

type DedicatedAllocationBufferCreateInfoNV

type DedicatedAllocationBufferCreateInfoNV struct {
	SType               StructureType
	PNext               unsafe.Pointer
	DedicatedAllocation Bool32
}

DedicatedAllocationBufferCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationBufferCreateInfoNV.html

type DedicatedAllocationImageCreateInfoNV

type DedicatedAllocationImageCreateInfoNV struct {
	SType               StructureType
	PNext               unsafe.Pointer
	DedicatedAllocation Bool32
}

DedicatedAllocationImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationImageCreateInfoNV.html

type DedicatedAllocationMemoryAllocateInfoNV

type DedicatedAllocationMemoryAllocateInfoNV struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Image  Image
	Buffer Buffer
}

DedicatedAllocationMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDedicatedAllocationMemoryAllocateInfoNV.html

type DependencyFlagBits

type DependencyFlagBits int32

DependencyFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html

const (
	DependencyByRegionBit     DependencyFlagBits = 1
	DependencyDeviceGroupBit  DependencyFlagBits = 4
	DependencyViewLocalBit    DependencyFlagBits = 2
	DependencyFlagBitsMaxEnum DependencyFlagBits = 2147483647
)

DependencyFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDependencyFlagBits.html

type DescriptorAccelerationStructureInfoNVX

type DescriptorAccelerationStructureInfoNVX struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	AccelerationStructureCount uint32
	PAccelerationStructures    *AccelerationStructureNVX
}

DescriptorAccelerationStructureInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDescriptorAccelerationStructureInfoNVX

type DescriptorBindingFlagBits

type DescriptorBindingFlagBits int32

DescriptorBindingFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBitsEXT.html

const (
	DescriptorBindingUpdateAfterBindBit          DescriptorBindingFlagBits = 1
	DescriptorBindingUpdateUnusedWhilePendingBit DescriptorBindingFlagBits = 2
	DescriptorBindingPartiallyBoundBit           DescriptorBindingFlagBits = 4
	DescriptorBindingVariableDescriptorCountBit  DescriptorBindingFlagBits = 8
	DescriptorBindingFlagBitsMaxEnum             DescriptorBindingFlagBits = 2147483647
)

DescriptorBindingFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagBitsEXT.html

type DescriptorBindingFlags

type DescriptorBindingFlags uint32

DescriptorBindingFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBindingFlagsEXT.html

type DescriptorBufferInfo

type DescriptorBufferInfo struct {
	Buffer Buffer
	Offset DeviceSize
	Range  DeviceSize
}

DescriptorBufferInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorBufferInfo.html

type DescriptorImageInfo

type DescriptorImageInfo struct {
	Sampler     Sampler
	ImageView   ImageView
	ImageLayout ImageLayout
}

DescriptorImageInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorImageInfo.html

type DescriptorPoolCreateFlagBits

type DescriptorPoolCreateFlagBits int32

DescriptorPoolCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateFlagBits.html

const (
	DescriptorPoolCreateFreeDescriptorSetBit DescriptorPoolCreateFlagBits = 1
	DescriptorPoolCreateUpdateAfterBindBit   DescriptorPoolCreateFlagBits = 2
	DescriptorPoolCreateFlagBitsMaxEnum      DescriptorPoolCreateFlagBits = 2147483647
)

DescriptorPoolCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateFlagBits.html

type DescriptorPoolCreateFlags

type DescriptorPoolCreateFlags uint32

DescriptorPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateFlags.html

type DescriptorPoolCreateInfo

type DescriptorPoolCreateInfo struct {
	SType         StructureType
	PNext         unsafe.Pointer
	Flags         DescriptorPoolCreateFlags
	MaxSets       uint32
	PoolSizeCount uint32
	PPoolSizes    *DescriptorPoolSize
}

DescriptorPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolCreateInfo.html

type DescriptorPoolInlineUniformBlockCreateInfo

type DescriptorPoolInlineUniformBlockCreateInfo struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	MaxInlineUniformBlockBindings uint32
}

DescriptorPoolInlineUniformBlockCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolInlineUniformBlockCreateInfoEXT.html

type DescriptorPoolResetFlags

type DescriptorPoolResetFlags uint32

DescriptorPoolResetFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolResetFlags.html

type DescriptorPoolSize

type DescriptorPoolSize struct {
	Type            DescriptorType
	DescriptorCount uint32
}

DescriptorPoolSize as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorPoolSize.html

type DescriptorSetAllocateInfo

type DescriptorSetAllocateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	DescriptorPool     DescriptorPool
	DescriptorSetCount uint32
	PSetLayouts        *DescriptorSetLayout
}

DescriptorSetAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetAllocateInfo.html

type DescriptorSetLayoutBinding

type DescriptorSetLayoutBinding struct {
	Binding            uint32
	DescriptorType     DescriptorType
	DescriptorCount    uint32
	StageFlags         ShaderStageFlags
	PImmutableSamplers *Sampler
}

DescriptorSetLayoutBinding as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBinding.html

type DescriptorSetLayoutBindingFlagsCreateInfo

type DescriptorSetLayoutBindingFlagsCreateInfo struct {
	SType         StructureType
	PNext         unsafe.Pointer
	BindingCount  uint32
	PBindingFlags *DescriptorBindingFlags
}

DescriptorSetLayoutBindingFlagsCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutBindingFlagsCreateInfoEXT.html

type DescriptorSetLayoutCreateFlagBits

type DescriptorSetLayoutCreateFlagBits int32

DescriptorSetLayoutCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html

const (
	DescriptorSetLayoutCreatePushDescriptorBit      DescriptorSetLayoutCreateFlagBits = 1
	DescriptorSetLayoutCreateUpdateAfterBindPoolBit DescriptorSetLayoutCreateFlagBits = 2
	DescriptorSetLayoutCreateFlagBitsMaxEnum        DescriptorSetLayoutCreateFlagBits = 2147483647
)

DescriptorSetLayoutCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlagBits.html

type DescriptorSetLayoutCreateFlags

type DescriptorSetLayoutCreateFlags uint32

DescriptorSetLayoutCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateFlags.html

type DescriptorSetLayoutCreateInfo

type DescriptorSetLayoutCreateInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	Flags        DescriptorSetLayoutCreateFlags
	BindingCount uint32
	PBindings    *DescriptorSetLayoutBinding
}

DescriptorSetLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutCreateInfo.html

type DescriptorSetLayoutSupport

type DescriptorSetLayoutSupport struct {
	SType     StructureType
	PNext     unsafe.Pointer
	Supported Bool32
}

DescriptorSetLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetLayoutSupport.html

type DescriptorSetVariableDescriptorCountAllocateInfo

type DescriptorSetVariableDescriptorCountAllocateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	DescriptorSetCount uint32
	PDescriptorCounts  *uint32
}

DescriptorSetVariableDescriptorCountAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountAllocateInfoEXT.html

type DescriptorSetVariableDescriptorCountLayoutSupport

type DescriptorSetVariableDescriptorCountLayoutSupport struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	MaxVariableDescriptorCount uint32
}

DescriptorSetVariableDescriptorCountLayoutSupport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorSetVariableDescriptorCountLayoutSupportEXT.html

type DescriptorType

type DescriptorType int32

DescriptorType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorType.html

const (
	DescriptorTypeSampler                  DescriptorType = iota
	DescriptorTypeCombinedImageSampler     DescriptorType = 1
	DescriptorTypeSampledImage             DescriptorType = 2
	DescriptorTypeStorageImage             DescriptorType = 3
	DescriptorTypeUniformTexelBuffer       DescriptorType = 4
	DescriptorTypeStorageTexelBuffer       DescriptorType = 5
	DescriptorTypeUniformBuffer            DescriptorType = 6
	DescriptorTypeStorageBuffer            DescriptorType = 7
	DescriptorTypeUniformBufferDynamic     DescriptorType = 8
	DescriptorTypeStorageBufferDynamic     DescriptorType = 9
	DescriptorTypeInputAttachment          DescriptorType = 10
	DescriptorTypeInlineUniformBlock       DescriptorType = 1000138000
	DescriptorTypeAccelerationStructureNvx DescriptorType = 1000165000
	DescriptorTypeBeginRange               DescriptorType = 0
	DescriptorTypeEndRange                 DescriptorType = 10
	DescriptorTypeRangeSize                DescriptorType = 11
	DescriptorTypeMaxEnum                  DescriptorType = 2147483647
)

DescriptorType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorType.html

type DescriptorUpdateTemplateCreateFlags

type DescriptorUpdateTemplateCreateFlags uint32

DescriptorUpdateTemplateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateFlags.html

type DescriptorUpdateTemplateCreateInfo

type DescriptorUpdateTemplateCreateInfo struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	Flags                      DescriptorUpdateTemplateCreateFlags
	DescriptorUpdateEntryCount uint32
	PDescriptorUpdateEntries   *DescriptorUpdateTemplateEntry
	TemplateType               DescriptorUpdateTemplateType
	DescriptorSetLayout        DescriptorSetLayout
	PipelineBindPoint          PipelineBindPoint
	PipelineLayout             PipelineLayout
	Set                        uint32
}

DescriptorUpdateTemplateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateCreateInfo.html

type DescriptorUpdateTemplateEntry

type DescriptorUpdateTemplateEntry struct {
	DstBinding      uint32
	DstArrayElement uint32
	DescriptorCount uint32
	DescriptorType  DescriptorType
	Offset          uint
	Stride          uint
}

DescriptorUpdateTemplateEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateEntry.html

type DescriptorUpdateTemplateType

type DescriptorUpdateTemplateType int32

DescriptorUpdateTemplateType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateType.html

const (
	DescriptorUpdateTemplateTypeDescriptorSet   DescriptorUpdateTemplateType = iota
	DescriptorUpdateTemplateTypePushDescriptors DescriptorUpdateTemplateType = 1
	DescriptorUpdateTemplateTypeBeginRange      DescriptorUpdateTemplateType = 0
	DescriptorUpdateTemplateTypeEndRange        DescriptorUpdateTemplateType = 0
	DescriptorUpdateTemplateTypeRangeSize       DescriptorUpdateTemplateType = 1
	DescriptorUpdateTemplateTypeMaxEnum         DescriptorUpdateTemplateType = 2147483647
)

DescriptorUpdateTemplateType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDescriptorUpdateTemplateType.html

type DeviceCreateInfo

type DeviceCreateInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	Flags                DeviceCreateFlags
	QueueCreateInfoCount uint32
	PQueueCreateInfos    *DeviceQueueCreateInfo

	PEnabledFeatures *PhysicalDeviceFeatures
	// contains filtered or unexported fields
}

DeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceCreateInfo.html

func (*DeviceCreateInfo) Free

func (s *DeviceCreateInfo) Free()

func (*DeviceCreateInfo) SetEnabledExtensionNames added in v1.1.1

func (s *DeviceCreateInfo) SetEnabledExtensionNames(names []string)

func (*DeviceCreateInfo) SetEnabledLayerNames added in v1.1.1

func (s *DeviceCreateInfo) SetEnabledLayerNames(names []string)

type DeviceEventInfo

type DeviceEventInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	DeviceEvent DeviceEventType
}

DeviceEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventInfoEXT.html

type DeviceEventType

type DeviceEventType int32

DeviceEventType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventTypeEXT.html

const (
	DeviceEventTypeDisplayHotplug DeviceEventType = iota
	DeviceEventTypeBeginRange     DeviceEventType = 0
	DeviceEventTypeEndRange       DeviceEventType = 0
	DeviceEventTypeRangeSize      DeviceEventType = 1
	DeviceEventTypeMaxEnum        DeviceEventType = 2147483647
)

DeviceEventType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceEventTypeEXT.html

type DeviceGeneratedCommandsFeaturesNVX

type DeviceGeneratedCommandsFeaturesNVX struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	ComputeBindingPointSupport Bool32
}

DeviceGeneratedCommandsFeaturesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDeviceGeneratedCommandsFeaturesNVX

type DeviceGeneratedCommandsLimitsNVX

type DeviceGeneratedCommandsLimitsNVX struct {
	SType                                 StructureType
	PNext                                 unsafe.Pointer
	MaxIndirectCommandsLayoutTokenCount   uint32
	MaxObjectEntryCounts                  uint32
	MinSequenceCountBufferOffsetAlignment uint32
	MinSequenceIndexBufferOffsetAlignment uint32
	MinCommandsTokenBufferOffsetAlignment uint32
}

DeviceGeneratedCommandsLimitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkDeviceGeneratedCommandsLimitsNVX

type DeviceGroupBindSparseInfo

type DeviceGroupBindSparseInfo struct {
	SType               StructureType
	PNext               unsafe.Pointer
	ResourceDeviceIndex uint32
	MemoryDeviceIndex   uint32
}

DeviceGroupBindSparseInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupBindSparseInfo.html

type DeviceGroupCommandBufferBeginInfo

type DeviceGroupCommandBufferBeginInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	DeviceMask uint32
}

DeviceGroupCommandBufferBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupCommandBufferBeginInfo.html

type DeviceGroupDeviceCreateInfo

type DeviceGroupDeviceCreateInfo struct {
	SType               StructureType
	PNext               unsafe.Pointer
	PhysicalDeviceCount uint32
	PPhysicalDevices    *PhysicalDevice
}

DeviceGroupDeviceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupDeviceCreateInfo.html

type DeviceGroupPresentCapabilities

type DeviceGroupPresentCapabilities struct {
	SType       StructureType
	PNext       unsafe.Pointer
	PresentMask [32]uint32
	Modes       DeviceGroupPresentModeFlags
}

DeviceGroupPresentCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentCapabilitiesKHR

type DeviceGroupPresentInfo

type DeviceGroupPresentInfo struct {
	SType          StructureType
	PNext          unsafe.Pointer
	SwapchainCount uint32
	PDeviceMasks   *uint32
	Mode           DeviceGroupPresentModeFlagBits
}

DeviceGroupPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentInfoKHR

type DeviceGroupPresentModeFlagBits

type DeviceGroupPresentModeFlagBits int32

DeviceGroupPresentModeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentModeFlagBitsKHR

const (
	DeviceGroupPresentModeLocalBit            DeviceGroupPresentModeFlagBits = 1
	DeviceGroupPresentModeRemoteBit           DeviceGroupPresentModeFlagBits = 2
	DeviceGroupPresentModeSumBit              DeviceGroupPresentModeFlagBits = 4
	DeviceGroupPresentModeLocalMultiDeviceBit DeviceGroupPresentModeFlagBits = 8
	DeviceGroupPresentModeFlagBitsMaxEnum     DeviceGroupPresentModeFlagBits = 2147483647
)

DeviceGroupPresentModeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDeviceGroupPresentModeFlagBitsKHR

type DeviceGroupRenderPassBeginInfo

type DeviceGroupRenderPassBeginInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	DeviceMask            uint32
	DeviceRenderAreaCount uint32
	PDeviceRenderAreas    *Rect2D
}

DeviceGroupRenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupRenderPassBeginInfo.html

type DeviceGroupSubmitInfo

type DeviceGroupSubmitInfo struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	WaitSemaphoreCount            uint32
	PWaitSemaphoreDeviceIndices   *uint32
	CommandBufferCount            uint32
	PCommandBufferDeviceMasks     *uint32
	SignalSemaphoreCount          uint32
	PSignalSemaphoreDeviceIndices *uint32
}

DeviceGroupSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceGroupSubmitInfo.html

type DeviceQueueCreateFlagBits

type DeviceQueueCreateFlagBits int32

DeviceQueueCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateFlagBits.html

const (
	DeviceQueueCreateProtectedBit    DeviceQueueCreateFlagBits = 1
	DeviceQueueCreateFlagBitsMaxEnum DeviceQueueCreateFlagBits = 2147483647
)

DeviceQueueCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateFlagBits.html

type DeviceQueueCreateFlags

type DeviceQueueCreateFlags uint32

DeviceQueueCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateFlags.html

type DeviceQueueCreateInfo

type DeviceQueueCreateInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            DeviceQueueCreateFlags
	QueueFamilyIndex uint32
	QueueCount       uint32
	PQueuePriorities *float32
}

DeviceQueueCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueCreateInfo.html

type DeviceQueueGlobalPriorityCreateInfo

type DeviceQueueGlobalPriorityCreateInfo struct {
	SType          StructureType
	PNext          unsafe.Pointer
	GlobalPriority QueueGlobalPriority
}

DeviceQueueGlobalPriorityCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueGlobalPriorityCreateInfoEXT.html

type DeviceQueueInfo2

type DeviceQueueInfo2 struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            DeviceQueueCreateFlags
	QueueFamilyIndex uint32
	QueueIndex       uint32
}

DeviceQueueInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDeviceQueueInfo2.html

type DiscardRectangleMode

type DiscardRectangleMode int32

DiscardRectangleMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDiscardRectangleModeEXT.html

const (
	DiscardRectangleModeInclusive  DiscardRectangleMode = iota
	DiscardRectangleModeExclusive  DiscardRectangleMode = 1
	DiscardRectangleModeBeginRange DiscardRectangleMode = 0
	DiscardRectangleModeEndRange   DiscardRectangleMode = 1
	DiscardRectangleModeRangeSize  DiscardRectangleMode = 2
	DiscardRectangleModeMaxEnum    DiscardRectangleMode = 2147483647
)

DiscardRectangleMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDiscardRectangleModeEXT.html

type DispatchIndirectCommand

type DispatchIndirectCommand struct {
	X uint32
	Y uint32
	Z uint32
}

DispatchIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDispatchIndirectCommand.html

type DisplayEventInfo

type DisplayEventInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	DisplayEvent DisplayEventType
}

DisplayEventInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventInfoEXT.html

type DisplayEventType

type DisplayEventType int32

DisplayEventType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventTypeEXT.html

const (
	DisplayEventTypeFirstPixelOut DisplayEventType = iota
	DisplayEventTypeBeginRange    DisplayEventType = 0
	DisplayEventTypeEndRange      DisplayEventType = 0
	DisplayEventTypeRangeSize     DisplayEventType = 1
	DisplayEventTypeMaxEnum       DisplayEventType = 2147483647
)

DisplayEventType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayEventTypeEXT.html

type DisplayModeParameters

type DisplayModeParameters struct {
	VisibleRegion Extent2D
	RefreshRate   uint32
}

DisplayModeParameters as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeParametersKHR

type DisplayModeProperties2

type DisplayModeProperties2 struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	DisplayModeProperties DisplayModeProperties
}

DisplayModeProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayModeProperties2KHR

type DisplayPlaneAlphaFlagBits

type DisplayPlaneAlphaFlagBits int32

DisplayPlaneAlphaFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneAlphaFlagBitsKHR

const (
	DisplayPlaneAlphaOpaqueBit                DisplayPlaneAlphaFlagBits = 1
	DisplayPlaneAlphaGlobalBit                DisplayPlaneAlphaFlagBits = 2
	DisplayPlaneAlphaPerPixelBit              DisplayPlaneAlphaFlagBits = 4
	DisplayPlaneAlphaPerPixelPremultipliedBit DisplayPlaneAlphaFlagBits = 8
	DisplayPlaneAlphaFlagBitsMaxEnum          DisplayPlaneAlphaFlagBits = 2147483647
)

DisplayPlaneAlphaFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneAlphaFlagBitsKHR

type DisplayPlaneCapabilities

type DisplayPlaneCapabilities struct {
	SupportedAlpha DisplayPlaneAlphaFlags
	MinSrcPosition Offset2D
	MaxSrcPosition Offset2D
	MinSrcExtent   Extent2D
	MaxSrcExtent   Extent2D
	MinDstPosition Offset2D
	MaxDstPosition Offset2D
	MinDstExtent   Extent2D
	MaxDstExtent   Extent2D
}

DisplayPlaneCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneCapabilitiesKHR

type DisplayPlaneProperties

type DisplayPlaneProperties struct {
	CurrentDisplay    Display
	CurrentStackIndex uint32
}

DisplayPlaneProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlanePropertiesKHR

type DisplayPlaneProperties2

type DisplayPlaneProperties2 struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	DisplayPlaneProperties DisplayPlaneProperties
}

DisplayPlaneProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPlaneProperties2KHR

type DisplayPowerInfo

type DisplayPowerInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	PowerState DisplayPowerState
}

DisplayPowerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerInfoEXT.html

type DisplayPowerState

type DisplayPowerState int32

DisplayPowerState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerStateEXT.html

const (
	DisplayPowerStateOff        DisplayPowerState = iota
	DisplayPowerStateSuspend    DisplayPowerState = 1
	DisplayPowerStateOn         DisplayPowerState = 2
	DisplayPowerStateBeginRange DisplayPowerState = 0
	DisplayPowerStateEndRange   DisplayPowerState = 2
	DisplayPowerStateRangeSize  DisplayPowerState = 3
	DisplayPowerStateMaxEnum    DisplayPowerState = 2147483647
)

DisplayPowerState enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDisplayPowerStateEXT.html

type DisplayPresentInfo

type DisplayPresentInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	SrcRect    Rect2D
	DstRect    Rect2D
	Persistent Bool32
}

DisplayPresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPresentInfoKHR

type DisplayProperties

type DisplayProperties struct {
	Display              Display
	DisplayName          *C.char
	PhysicalDimensions   Extent2D
	PhysicalResolution   Extent2D
	SupportedTransforms  SurfaceTransformFlags
	PlaneReorderPossible Bool32
	PersistentContent    Bool32
}

DisplayProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplayPropertiesKHR

type DisplaySurfaceCreateInfo

type DisplaySurfaceCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           DisplaySurfaceCreateFlags
	DisplayMode     DisplayMode
	PlaneIndex      uint32
	PlaneStackIndex uint32
	Transform       SurfaceTransformFlagBits
	GlobalAlpha     float32
	AlphaMode       DisplayPlaneAlphaFlagBits
	ImageExtent     Extent2D
}

DisplaySurfaceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDisplaySurfaceCreateInfoKHR

type DrawIndexedIndirectCommand

type DrawIndexedIndirectCommand struct {
	IndexCount    uint32
	InstanceCount uint32
	FirstIndex    uint32
	VertexOffset  int32
	FirstInstance uint32
}

DrawIndexedIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndexedIndirectCommand.html

type DrawIndirectCommand

type DrawIndirectCommand struct {
	VertexCount   uint32
	InstanceCount uint32
	FirstVertex   uint32
	FirstInstance uint32
}

DrawIndirectCommand as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawIndirectCommand.html

type DrawMeshTasksIndirectCommandNV

type DrawMeshTasksIndirectCommandNV struct {
	TaskCount uint32
	FirstTask uint32
}

DrawMeshTasksIndirectCommandNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrawMeshTasksIndirectCommandNV.html

type DriverId

type DriverId int32

DriverId as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDriverIdKHR

const (
	DriverIdAmdProprietary          DriverId = 1
	DriverIdAmdOpenSource           DriverId = 2
	DriverIdMesaRadv                DriverId = 3
	DriverIdNvidiaProprietary       DriverId = 4
	DriverIdIntelProprietaryWindows DriverId = 5
	DriverIdIntelOpenSourceMesa     DriverId = 6
	DriverIdImaginationProprietary  DriverId = 7
	DriverIdQualcommProprietary     DriverId = 8
	DriverIdArmProprietary          DriverId = 9
	DriverIdBeginRange              DriverId = 1
	DriverIdEndRange                DriverId = 9
	DriverIdRangeSize               DriverId = 9
	DriverIdMaxEnum                 DriverId = 2147483647
)

DriverId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkDriverIdKHR

type DrmFormatModifierProperties

type DrmFormatModifierProperties struct {
	DrmFormatModifier               uint64
	DrmFormatModifierPlaneCount     uint32
	DrmFormatModifierTilingFeatures FormatFeatureFlags
}

DrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesEXT.html

type DrmFormatModifierPropertiesList

type DrmFormatModifierPropertiesList struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	DrmFormatModifierCount       uint32
	PDrmFormatModifierProperties *DrmFormatModifierProperties
}

DrmFormatModifierPropertiesList as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDrmFormatModifierPropertiesListEXT.html

type DynamicState

type DynamicState int32

DynamicState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html

const (
	DynamicStateViewport                     DynamicState = iota
	DynamicStateScissor                      DynamicState = 1
	DynamicStateLineWidth                    DynamicState = 2
	DynamicStateDepthBias                    DynamicState = 3
	DynamicStateBlendConstants               DynamicState = 4
	DynamicStateDepthBounds                  DynamicState = 5
	DynamicStateStencilCompareMask           DynamicState = 6
	DynamicStateStencilWriteMask             DynamicState = 7
	DynamicStateStencilReference             DynamicState = 8
	DynamicStateViewportWScalingNv           DynamicState = 1000087000
	DynamicStateDiscardRectangle             DynamicState = 1000099000
	DynamicStateSampleLocations              DynamicState = 1000143000
	DynamicStateViewportShadingRatePaletteNv DynamicState = 1000164004
	DynamicStateViewportCoarseSampleOrderNv  DynamicState = 1000164006
	DynamicStateExclusiveScissorNv           DynamicState = 1000205001
	DynamicStateBeginRange                   DynamicState = 0
	DynamicStateEndRange                     DynamicState = 8
	DynamicStateRangeSize                    DynamicState = 9
	DynamicStateMaxEnum                      DynamicState = 2147483647
)

DynamicState enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkDynamicState.html

type EventCreateInfo

type EventCreateInfo struct {
	SType StructureType
	PNext unsafe.Pointer
	Flags EventCreateFlags
}

EventCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkEventCreateInfo.html

type ExportFenceCreateInfo

type ExportFenceCreateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalFenceHandleTypeFlags
}

ExportFenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportFenceCreateInfo.html

type ExportMemoryAllocateInfo

type ExportMemoryAllocateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalMemoryHandleTypeFlags
}

ExportMemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfo.html

type ExportMemoryAllocateInfoNV

type ExportMemoryAllocateInfoNV struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalMemoryHandleTypeFlagsNV
}

ExportMemoryAllocateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportMemoryAllocateInfoNV.html

type ExportSemaphoreCreateInfo

type ExportSemaphoreCreateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalSemaphoreHandleTypeFlags
}

ExportSemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExportSemaphoreCreateInfo.html

type ExtensionProperties

type ExtensionProperties struct {
	ExtensionName [256]byte
	SpecVersion   uint32
}

ExtensionProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtensionProperties.html

type Extent2D

type Extent2D struct {
	Width  uint32
	Height uint32
}

Extent2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtent2D.html

type Extent3D

type Extent3D struct {
	Width  uint32
	Height uint32
	Depth  uint32
}

Extent3D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExtent3D.html

type ExternalBufferProperties

type ExternalBufferProperties struct {
	SType                    StructureType
	PNext                    unsafe.Pointer
	ExternalMemoryProperties ExternalMemoryProperties
}

ExternalBufferProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalBufferProperties.html

type ExternalFenceFeatureFlagBits

type ExternalFenceFeatureFlagBits int32

ExternalFenceFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html

const (
	ExternalFenceFeatureExportableBit   ExternalFenceFeatureFlagBits = 1
	ExternalFenceFeatureImportableBit   ExternalFenceFeatureFlagBits = 2
	ExternalFenceFeatureFlagBitsMaxEnum ExternalFenceFeatureFlagBits = 2147483647
)

ExternalFenceFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlagBits.html

type ExternalFenceFeatureFlags

type ExternalFenceFeatureFlags uint32

ExternalFenceFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceFeatureFlags.html

type ExternalFenceHandleTypeFlagBits

type ExternalFenceHandleTypeFlagBits int32

ExternalFenceHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlagBits.html

const (
	ExternalFenceHandleTypeOpaqueFdBit       ExternalFenceHandleTypeFlagBits = 1
	ExternalFenceHandleTypeOpaqueWin32Bit    ExternalFenceHandleTypeFlagBits = 2
	ExternalFenceHandleTypeOpaqueWin32KmtBit ExternalFenceHandleTypeFlagBits = 4
	ExternalFenceHandleTypeSyncFdBit         ExternalFenceHandleTypeFlagBits = 8
	ExternalFenceHandleTypeFlagBitsMaxEnum   ExternalFenceHandleTypeFlagBits = 2147483647
)

ExternalFenceHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlagBits.html

type ExternalFenceHandleTypeFlags

type ExternalFenceHandleTypeFlags uint32

ExternalFenceHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceHandleTypeFlags.html

type ExternalFenceProperties

type ExternalFenceProperties struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	ExportFromImportedHandleTypes ExternalFenceHandleTypeFlags
	CompatibleHandleTypes         ExternalFenceHandleTypeFlags
	ExternalFenceFeatures         ExternalFenceFeatureFlags
}

ExternalFenceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalFenceProperties.html

type ExternalImageFormatProperties

type ExternalImageFormatProperties struct {
	SType                    StructureType
	PNext                    unsafe.Pointer
	ExternalMemoryProperties ExternalMemoryProperties
}

ExternalImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatProperties.html

type ExternalImageFormatPropertiesNV

type ExternalImageFormatPropertiesNV struct {
	ImageFormatProperties         ImageFormatProperties
	ExternalMemoryFeatures        ExternalMemoryFeatureFlagsNV
	ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlagsNV
	CompatibleHandleTypes         ExternalMemoryHandleTypeFlagsNV
}

ExternalImageFormatPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalImageFormatPropertiesNV.html

type ExternalMemoryBufferCreateInfo

type ExternalMemoryBufferCreateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalMemoryHandleTypeFlags
}

ExternalMemoryBufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryBufferCreateInfo.html

type ExternalMemoryFeatureFlagBits

type ExternalMemoryFeatureFlagBits int32

ExternalMemoryFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagBits.html

const (
	ExternalMemoryFeatureDedicatedOnlyBit ExternalMemoryFeatureFlagBits = 1
	ExternalMemoryFeatureExportableBit    ExternalMemoryFeatureFlagBits = 2
	ExternalMemoryFeatureImportableBit    ExternalMemoryFeatureFlagBits = 4
	ExternalMemoryFeatureFlagBitsMaxEnum  ExternalMemoryFeatureFlagBits = 2147483647
)

ExternalMemoryFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagBits.html

type ExternalMemoryFeatureFlagBitsNV

type ExternalMemoryFeatureFlagBitsNV int32

ExternalMemoryFeatureFlagBitsNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagBitsNV.html

const (
	ExternalMemoryFeatureDedicatedOnlyBitNv ExternalMemoryFeatureFlagBitsNV = 1
	ExternalMemoryFeatureExportableBitNv    ExternalMemoryFeatureFlagBitsNV = 2
	ExternalMemoryFeatureImportableBitNv    ExternalMemoryFeatureFlagBitsNV = 4
	ExternalMemoryFeatureFlagBitsMaxEnumNv  ExternalMemoryFeatureFlagBitsNV = 2147483647
)

ExternalMemoryFeatureFlagBitsNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagBitsNV.html

type ExternalMemoryFeatureFlags

type ExternalMemoryFeatureFlags uint32

ExternalMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlags.html

type ExternalMemoryFeatureFlagsNV

type ExternalMemoryFeatureFlagsNV uint32

ExternalMemoryFeatureFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryFeatureFlagsNV.html

type ExternalMemoryHandleTypeFlagBits

type ExternalMemoryHandleTypeFlagBits int32

ExternalMemoryHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagBits.html

const (
	ExternalMemoryHandleTypeOpaqueFdBit                     ExternalMemoryHandleTypeFlagBits = 1
	ExternalMemoryHandleTypeOpaqueWin32Bit                  ExternalMemoryHandleTypeFlagBits = 2
	ExternalMemoryHandleTypeOpaqueWin32KmtBit               ExternalMemoryHandleTypeFlagBits = 4
	ExternalMemoryHandleTypeD3d11TextureBit                 ExternalMemoryHandleTypeFlagBits = 8
	ExternalMemoryHandleTypeD3d11TextureKmtBit              ExternalMemoryHandleTypeFlagBits = 16
	ExternalMemoryHandleTypeD3d12HeapBit                    ExternalMemoryHandleTypeFlagBits = 32
	ExternalMemoryHandleTypeD3d12ResourceBit                ExternalMemoryHandleTypeFlagBits = 64
	ExternalMemoryHandleTypeDmaBufBit                       ExternalMemoryHandleTypeFlagBits = 512
	ExternalMemoryHandleTypeAndroidHardwareBufferBitAndroid ExternalMemoryHandleTypeFlagBits = 1024
	ExternalMemoryHandleTypeHostAllocationBit               ExternalMemoryHandleTypeFlagBits = 128
	ExternalMemoryHandleTypeHostMappedForeignMemoryBit      ExternalMemoryHandleTypeFlagBits = 256
	ExternalMemoryHandleTypeFlagBitsMaxEnum                 ExternalMemoryHandleTypeFlagBits = 2147483647
)

ExternalMemoryHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagBits.html

type ExternalMemoryHandleTypeFlagBitsNV

type ExternalMemoryHandleTypeFlagBitsNV int32

ExternalMemoryHandleTypeFlagBitsNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagBitsNV.html

const (
	ExternalMemoryHandleTypeOpaqueWin32BitNv    ExternalMemoryHandleTypeFlagBitsNV = 1
	ExternalMemoryHandleTypeOpaqueWin32KmtBitNv ExternalMemoryHandleTypeFlagBitsNV = 2
	ExternalMemoryHandleTypeD3d11ImageBitNv     ExternalMemoryHandleTypeFlagBitsNV = 4
	ExternalMemoryHandleTypeD3d11ImageKmtBitNv  ExternalMemoryHandleTypeFlagBitsNV = 8
	ExternalMemoryHandleTypeFlagBitsMaxEnumNv   ExternalMemoryHandleTypeFlagBitsNV = 2147483647
)

ExternalMemoryHandleTypeFlagBitsNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagBitsNV.html

type ExternalMemoryHandleTypeFlags

type ExternalMemoryHandleTypeFlags uint32

ExternalMemoryHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlags.html

type ExternalMemoryHandleTypeFlagsNV

type ExternalMemoryHandleTypeFlagsNV uint32

ExternalMemoryHandleTypeFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryHandleTypeFlagsNV.html

type ExternalMemoryImageCreateInfo

type ExternalMemoryImageCreateInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalMemoryHandleTypeFlags
}

ExternalMemoryImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfo.html

type ExternalMemoryImageCreateInfoNV

type ExternalMemoryImageCreateInfoNV struct {
	SType       StructureType
	PNext       unsafe.Pointer
	HandleTypes ExternalMemoryHandleTypeFlagsNV
}

ExternalMemoryImageCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryImageCreateInfoNV.html

type ExternalMemoryProperties

type ExternalMemoryProperties struct {
	ExternalMemoryFeatures        ExternalMemoryFeatureFlags
	ExportFromImportedHandleTypes ExternalMemoryHandleTypeFlags
	CompatibleHandleTypes         ExternalMemoryHandleTypeFlags
}

ExternalMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalMemoryProperties.html

type ExternalSemaphoreFeatureFlagBits

type ExternalSemaphoreFeatureFlagBits int32

ExternalSemaphoreFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html

const (
	ExternalSemaphoreFeatureExportableBit   ExternalSemaphoreFeatureFlagBits = 1
	ExternalSemaphoreFeatureImportableBit   ExternalSemaphoreFeatureFlagBits = 2
	ExternalSemaphoreFeatureFlagBitsMaxEnum ExternalSemaphoreFeatureFlagBits = 2147483647
)

ExternalSemaphoreFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlagBits.html

type ExternalSemaphoreFeatureFlags

type ExternalSemaphoreFeatureFlags uint32

ExternalSemaphoreFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreFeatureFlags.html

type ExternalSemaphoreHandleTypeFlagBits

type ExternalSemaphoreHandleTypeFlagBits int32

ExternalSemaphoreHandleTypeFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html

const (
	ExternalSemaphoreHandleTypeOpaqueFdBit       ExternalSemaphoreHandleTypeFlagBits = 1
	ExternalSemaphoreHandleTypeOpaqueWin32Bit    ExternalSemaphoreHandleTypeFlagBits = 2
	ExternalSemaphoreHandleTypeOpaqueWin32KmtBit ExternalSemaphoreHandleTypeFlagBits = 4
	ExternalSemaphoreHandleTypeD3d12FenceBit     ExternalSemaphoreHandleTypeFlagBits = 8
	ExternalSemaphoreHandleTypeSyncFdBit         ExternalSemaphoreHandleTypeFlagBits = 16
	ExternalSemaphoreHandleTypeFlagBitsMaxEnum   ExternalSemaphoreHandleTypeFlagBits = 2147483647
)

ExternalSemaphoreHandleTypeFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlagBits.html

type ExternalSemaphoreHandleTypeFlags

type ExternalSemaphoreHandleTypeFlags uint32

ExternalSemaphoreHandleTypeFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreHandleTypeFlags.html

type ExternalSemaphoreProperties

type ExternalSemaphoreProperties struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	ExportFromImportedHandleTypes ExternalSemaphoreHandleTypeFlags
	CompatibleHandleTypes         ExternalSemaphoreHandleTypeFlags
	ExternalSemaphoreFeatures     ExternalSemaphoreFeatureFlags
}

ExternalSemaphoreProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkExternalSemaphoreProperties.html

type FenceCreateFlagBits

type FenceCreateFlagBits int32

FenceCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateFlagBits.html

const (
	FenceCreateSignaledBit     FenceCreateFlagBits = 1
	FenceCreateFlagBitsMaxEnum FenceCreateFlagBits = 2147483647
)

FenceCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateFlagBits.html

type FenceCreateInfo

type FenceCreateInfo struct {
	SType StructureType
	PNext unsafe.Pointer
	Flags FenceCreateFlags
}

FenceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceCreateInfo.html

type FenceImportFlagBits

type FenceImportFlagBits int32

FenceImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html

const (
	FenceImportTemporaryBit    FenceImportFlagBits = 1
	FenceImportFlagBitsMaxEnum FenceImportFlagBits = 2147483647
)

FenceImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFenceImportFlagBits.html

type Filter

type Filter int32

Filter as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html

const (
	FilterNearest    Filter = iota
	FilterLinear     Filter = 1
	FilterCubicImg   Filter = 1000015000
	FilterBeginRange Filter = 0
	FilterEndRange   Filter = 1
	FilterRangeSize  Filter = 2
	FilterMaxEnum    Filter = 2147483647
)

Filter enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFilter.html

type Format

type Format int32

Format as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormat.html

const (
	FormatUndefined                            Format = iota
	FormatR4g4UnormPack8                       Format = 1
	FormatR4g4b4a4UnormPack16                  Format = 2
	FormatB4g4r4a4UnormPack16                  Format = 3
	FormatR5g6b5UnormPack16                    Format = 4
	FormatB5g6r5UnormPack16                    Format = 5
	FormatR5g5b5a1UnormPack16                  Format = 6
	FormatB5g5r5a1UnormPack16                  Format = 7
	FormatA1r5g5b5UnormPack16                  Format = 8
	FormatR8Unorm                              Format = 9
	FormatR8Snorm                              Format = 10
	FormatR8Uscaled                            Format = 11
	FormatR8Sscaled                            Format = 12
	FormatR8Uint                               Format = 13
	FormatR8Sint                               Format = 14
	FormatR8Srgb                               Format = 15
	FormatR8g8Unorm                            Format = 16
	FormatR8g8Snorm                            Format = 17
	FormatR8g8Uscaled                          Format = 18
	FormatR8g8Sscaled                          Format = 19
	FormatR8g8Uint                             Format = 20
	FormatR8g8Sint                             Format = 21
	FormatR8g8Srgb                             Format = 22
	FormatR8g8b8Unorm                          Format = 23
	FormatR8g8b8Snorm                          Format = 24
	FormatR8g8b8Uscaled                        Format = 25
	FormatR8g8b8Sscaled                        Format = 26
	FormatR8g8b8Uint                           Format = 27
	FormatR8g8b8Sint                           Format = 28
	FormatR8g8b8Srgb                           Format = 29
	FormatB8g8r8Unorm                          Format = 30
	FormatB8g8r8Snorm                          Format = 31
	FormatB8g8r8Uscaled                        Format = 32
	FormatB8g8r8Sscaled                        Format = 33
	FormatB8g8r8Uint                           Format = 34
	FormatB8g8r8Sint                           Format = 35
	FormatB8g8r8Srgb                           Format = 36
	FormatR8g8b8a8Unorm                        Format = 37
	FormatR8g8b8a8Snorm                        Format = 38
	FormatR8g8b8a8Uscaled                      Format = 39
	FormatR8g8b8a8Sscaled                      Format = 40
	FormatR8g8b8a8Uint                         Format = 41
	FormatR8g8b8a8Sint                         Format = 42
	FormatR8g8b8a8Srgb                         Format = 43
	FormatB8g8r8a8Unorm                        Format = 44
	FormatB8g8r8a8Snorm                        Format = 45
	FormatB8g8r8a8Uscaled                      Format = 46
	FormatB8g8r8a8Sscaled                      Format = 47
	FormatB8g8r8a8Uint                         Format = 48
	FormatB8g8r8a8Sint                         Format = 49
	FormatB8g8r8a8Srgb                         Format = 50
	FormatA8b8g8r8UnormPack32                  Format = 51
	FormatA8b8g8r8SnormPack32                  Format = 52
	FormatA8b8g8r8UscaledPack32                Format = 53
	FormatA8b8g8r8SscaledPack32                Format = 54
	FormatA8b8g8r8UintPack32                   Format = 55
	FormatA8b8g8r8SintPack32                   Format = 56
	FormatA8b8g8r8SrgbPack32                   Format = 57
	FormatA2r10g10b10UnormPack32               Format = 58
	FormatA2r10g10b10SnormPack32               Format = 59
	FormatA2r10g10b10UscaledPack32             Format = 60
	FormatA2r10g10b10SscaledPack32             Format = 61
	FormatA2r10g10b10UintPack32                Format = 62
	FormatA2r10g10b10SintPack32                Format = 63
	FormatA2b10g10r10UnormPack32               Format = 64
	FormatA2b10g10r10SnormPack32               Format = 65
	FormatA2b10g10r10UscaledPack32             Format = 66
	FormatA2b10g10r10SscaledPack32             Format = 67
	FormatA2b10g10r10UintPack32                Format = 68
	FormatA2b10g10r10SintPack32                Format = 69
	FormatR16Unorm                             Format = 70
	FormatR16Snorm                             Format = 71
	FormatR16Uscaled                           Format = 72
	FormatR16Sscaled                           Format = 73
	FormatR16Uint                              Format = 74
	FormatR16Sint                              Format = 75
	FormatR16Sfloat                            Format = 76
	FormatR16g16Unorm                          Format = 77
	FormatR16g16Snorm                          Format = 78
	FormatR16g16Uscaled                        Format = 79
	FormatR16g16Sscaled                        Format = 80
	FormatR16g16Uint                           Format = 81
	FormatR16g16Sint                           Format = 82
	FormatR16g16Sfloat                         Format = 83
	FormatR16g16b16Unorm                       Format = 84
	FormatR16g16b16Snorm                       Format = 85
	FormatR16g16b16Uscaled                     Format = 86
	FormatR16g16b16Sscaled                     Format = 87
	FormatR16g16b16Uint                        Format = 88
	FormatR16g16b16Sint                        Format = 89
	FormatR16g16b16Sfloat                      Format = 90
	FormatR16g16b16a16Unorm                    Format = 91
	FormatR16g16b16a16Snorm                    Format = 92
	FormatR16g16b16a16Uscaled                  Format = 93
	FormatR16g16b16a16Sscaled                  Format = 94
	FormatR16g16b16a16Uint                     Format = 95
	FormatR16g16b16a16Sint                     Format = 96
	FormatR16g16b16a16Sfloat                   Format = 97
	FormatR32Uint                              Format = 98
	FormatR32Sint                              Format = 99
	FormatR32Sfloat                            Format = 100
	FormatR32g32Uint                           Format = 101
	FormatR32g32Sint                           Format = 102
	FormatR32g32Sfloat                         Format = 103
	FormatR32g32b32Uint                        Format = 104
	FormatR32g32b32Sint                        Format = 105
	FormatR32g32b32Sfloat                      Format = 106
	FormatR32g32b32a32Uint                     Format = 107
	FormatR32g32b32a32Sint                     Format = 108
	FormatR32g32b32a32Sfloat                   Format = 109
	FormatR64Uint                              Format = 110
	FormatR64Sint                              Format = 111
	FormatR64Sfloat                            Format = 112
	FormatR64g64Uint                           Format = 113
	FormatR64g64Sint                           Format = 114
	FormatR64g64Sfloat                         Format = 115
	FormatR64g64b64Uint                        Format = 116
	FormatR64g64b64Sint                        Format = 117
	FormatR64g64b64Sfloat                      Format = 118
	FormatR64g64b64a64Uint                     Format = 119
	FormatR64g64b64a64Sint                     Format = 120
	FormatR64g64b64a64Sfloat                   Format = 121
	FormatB10g11r11UfloatPack32                Format = 122
	FormatE5b9g9r9UfloatPack32                 Format = 123
	FormatD16Unorm                             Format = 124
	FormatX8D24UnormPack32                     Format = 125
	FormatD32Sfloat                            Format = 126
	FormatS8Uint                               Format = 127
	FormatD16UnormS8Uint                       Format = 128
	FormatD24UnormS8Uint                       Format = 129
	FormatD32SfloatS8Uint                      Format = 130
	FormatBc1RgbUnormBlock                     Format = 131
	FormatBc1RgbSrgbBlock                      Format = 132
	FormatBc1RgbaUnormBlock                    Format = 133
	FormatBc1RgbaSrgbBlock                     Format = 134
	FormatBc2UnormBlock                        Format = 135
	FormatBc2SrgbBlock                         Format = 136
	FormatBc3UnormBlock                        Format = 137
	FormatBc3SrgbBlock                         Format = 138
	FormatBc4UnormBlock                        Format = 139
	FormatBc4SnormBlock                        Format = 140
	FormatBc5UnormBlock                        Format = 141
	FormatBc5SnormBlock                        Format = 142
	FormatBc6hUfloatBlock                      Format = 143
	FormatBc6hSfloatBlock                      Format = 144
	FormatBc7UnormBlock                        Format = 145
	FormatBc7SrgbBlock                         Format = 146
	FormatEtc2R8g8b8UnormBlock                 Format = 147
	FormatEtc2R8g8b8SrgbBlock                  Format = 148
	FormatEtc2R8g8b8a1UnormBlock               Format = 149
	FormatEtc2R8g8b8a1SrgbBlock                Format = 150
	FormatEtc2R8g8b8a8UnormBlock               Format = 151
	FormatEtc2R8g8b8a8SrgbBlock                Format = 152
	FormatEacR11UnormBlock                     Format = 153
	FormatEacR11SnormBlock                     Format = 154
	FormatEacR11g11UnormBlock                  Format = 155
	FormatEacR11g11SnormBlock                  Format = 156
	FormatAstc4x4UnormBlock                    Format = 157
	FormatAstc4x4SrgbBlock                     Format = 158
	FormatAstc5x4UnormBlock                    Format = 159
	FormatAstc5x4SrgbBlock                     Format = 160
	FormatAstc5x5UnormBlock                    Format = 161
	FormatAstc5x5SrgbBlock                     Format = 162
	FormatAstc6x5UnormBlock                    Format = 163
	FormatAstc6x5SrgbBlock                     Format = 164
	FormatAstc6x6UnormBlock                    Format = 165
	FormatAstc6x6SrgbBlock                     Format = 166
	FormatAstc8x5UnormBlock                    Format = 167
	FormatAstc8x5SrgbBlock                     Format = 168
	FormatAstc8x6UnormBlock                    Format = 169
	FormatAstc8x6SrgbBlock                     Format = 170
	FormatAstc8x8UnormBlock                    Format = 171
	FormatAstc8x8SrgbBlock                     Format = 172
	FormatAstc10x5UnormBlock                   Format = 173
	FormatAstc10x5SrgbBlock                    Format = 174
	FormatAstc10x6UnormBlock                   Format = 175
	FormatAstc10x6SrgbBlock                    Format = 176
	FormatAstc10x8UnormBlock                   Format = 177
	FormatAstc10x8SrgbBlock                    Format = 178
	FormatAstc10x10UnormBlock                  Format = 179
	FormatAstc10x10SrgbBlock                   Format = 180
	FormatAstc12x10UnormBlock                  Format = 181
	FormatAstc12x10SrgbBlock                   Format = 182
	FormatAstc12x12UnormBlock                  Format = 183
	FormatAstc12x12SrgbBlock                   Format = 184
	FormatG8b8g8r8422Unorm                     Format = 1000156000
	FormatB8g8r8g8422Unorm                     Format = 1000156001
	FormatG8B8R83plane420Unorm                 Format = 1000156002
	FormatG8B8r82plane420Unorm                 Format = 1000156003
	FormatG8B8R83plane422Unorm                 Format = 1000156004
	FormatG8B8r82plane422Unorm                 Format = 1000156005
	FormatG8B8R83plane444Unorm                 Format = 1000156006
	FormatR10x6UnormPack16                     Format = 1000156007
	FormatR10x6g10x6Unorm2pack16               Format = 1000156008
	FormatR10x6g10x6b10x6a10x6Unorm4pack16     Format = 1000156009
	FormatG10x6b10x6g10x6r10x6422Unorm4pack16  Format = 1000156010
	FormatB10x6g10x6r10x6g10x6422Unorm4pack16  Format = 1000156011
	FormatG10x6B10x6R10x63plane420Unorm3pack16 Format = 1000156012
	FormatG10x6B10x6r10x62plane420Unorm3pack16 Format = 1000156013
	FormatG10x6B10x6R10x63plane422Unorm3pack16 Format = 1000156014
	FormatG10x6B10x6r10x62plane422Unorm3pack16 Format = 1000156015
	FormatG10x6B10x6R10x63plane444Unorm3pack16 Format = 1000156016
	FormatR12x4UnormPack16                     Format = 1000156017
	FormatR12x4g12x4Unorm2pack16               Format = 1000156018
	FormatR12x4g12x4b12x4a12x4Unorm4pack16     Format = 1000156019
	FormatG12x4b12x4g12x4r12x4422Unorm4pack16  Format = 1000156020
	FormatB12x4g12x4r12x4g12x4422Unorm4pack16  Format = 1000156021
	FormatG12x4B12x4R12x43plane420Unorm3pack16 Format = 1000156022
	FormatG12x4B12x4r12x42plane420Unorm3pack16 Format = 1000156023
	FormatG12x4B12x4R12x43plane422Unorm3pack16 Format = 1000156024
	FormatG12x4B12x4r12x42plane422Unorm3pack16 Format = 1000156025
	FormatG12x4B12x4R12x43plane444Unorm3pack16 Format = 1000156026
	FormatG16b16g16r16422Unorm                 Format = 1000156027
	FormatB16g16r16g16422Unorm                 Format = 1000156028
	FormatG16B16R163plane420Unorm              Format = 1000156029
	FormatG16B16r162plane420Unorm              Format = 1000156030
	FormatG16B16R163plane422Unorm              Format = 1000156031
	FormatG16B16r162plane422Unorm              Format = 1000156032
	FormatG16B16R163plane444Unorm              Format = 1000156033
	FormatPvrtc12bppUnormBlockImg              Format = 1000054000
	FormatPvrtc14bppUnormBlockImg              Format = 1000054001
	FormatPvrtc22bppUnormBlockImg              Format = 1000054002
	FormatPvrtc24bppUnormBlockImg              Format = 1000054003
	FormatPvrtc12bppSrgbBlockImg               Format = 1000054004
	FormatPvrtc14bppSrgbBlockImg               Format = 1000054005
	FormatPvrtc22bppSrgbBlockImg               Format = 1000054006
	FormatPvrtc24bppSrgbBlockImg               Format = 1000054007
	FormatBeginRange                           Format = 0
	FormatEndRange                             Format = 184
	FormatRangeSize                            Format = 185
	FormatMaxEnum                              Format = 2147483647
)

Format enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormat.html

type FormatFeatureFlagBits

type FormatFeatureFlagBits int32

FormatFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlagBits.html

const (
	FormatFeatureSampledImageBit                                                     FormatFeatureFlagBits = 1
	FormatFeatureStorageImageBit                                                     FormatFeatureFlagBits = 2
	FormatFeatureStorageImageAtomicBit                                               FormatFeatureFlagBits = 4
	FormatFeatureUniformTexelBufferBit                                               FormatFeatureFlagBits = 8
	FormatFeatureStorageTexelBufferBit                                               FormatFeatureFlagBits = 16
	FormatFeatureStorageTexelBufferAtomicBit                                         FormatFeatureFlagBits = 32
	FormatFeatureVertexBufferBit                                                     FormatFeatureFlagBits = 64
	FormatFeatureColorAttachmentBit                                                  FormatFeatureFlagBits = 128
	FormatFeatureColorAttachmentBlendBit                                             FormatFeatureFlagBits = 256
	FormatFeatureDepthStencilAttachmentBit                                           FormatFeatureFlagBits = 512
	FormatFeatureBlitSrcBit                                                          FormatFeatureFlagBits = 1024
	FormatFeatureBlitDstBit                                                          FormatFeatureFlagBits = 2048
	FormatFeatureSampledImageFilterLinearBit                                         FormatFeatureFlagBits = 4096
	FormatFeatureTransferSrcBit                                                      FormatFeatureFlagBits = 16384
	FormatFeatureTransferDstBit                                                      FormatFeatureFlagBits = 32768
	FormatFeatureMidpointChromaSamplesBit                                            FormatFeatureFlagBits = 131072
	FormatFeatureSampledImageYcbcrConversionLinearFilterBit                          FormatFeatureFlagBits = 262144
	FormatFeatureSampledImageYcbcrConversionSeparateReconstructionFilterBit          FormatFeatureFlagBits = 524288
	FormatFeatureSampledImageYcbcrConversionChromaReconstructionExplicitBit          FormatFeatureFlagBits = 1048576
	FormatFeatureSampledImageYcbcrConversionChromaReconstructionExplicitForceableBit FormatFeatureFlagBits = 2097152
	FormatFeatureDisjointBit                                                         FormatFeatureFlagBits = 4194304
	FormatFeatureCositedChromaSamplesBit                                             FormatFeatureFlagBits = 8388608
	FormatFeatureSampledImageFilterCubicBitImg                                       FormatFeatureFlagBits = 8192
	FormatFeatureSampledImageFilterMinmaxBit                                         FormatFeatureFlagBits = 65536
	FormatFeatureFlagBitsMaxEnum                                                     FormatFeatureFlagBits = 2147483647
)

FormatFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatFeatureFlagBits.html

type FormatProperties

type FormatProperties struct {
	LinearTilingFeatures  FormatFeatureFlags
	OptimalTilingFeatures FormatFeatureFlags
	BufferFeatures        FormatFeatureFlags
}

FormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties.html

type FormatProperties2

type FormatProperties2 struct {
	SType            StructureType
	PNext            unsafe.Pointer
	FormatProperties FormatProperties
}

FormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFormatProperties2.html

type FramebufferCreateFlags

type FramebufferCreateFlags uint32

FramebufferCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateFlags.html

type FramebufferCreateInfo

type FramebufferCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           FramebufferCreateFlags
	RenderPass      RenderPass
	AttachmentCount uint32
	PAttachments    *ImageView
	Width           uint32
	Height          uint32
	Layers          uint32
}

FramebufferCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFramebufferCreateInfo.html

type FrontFace

type FrontFace int32

FrontFace as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html

const (
	FrontFaceCounterClockwise FrontFace = iota
	FrontFaceClockwise        FrontFace = 1
	FrontFaceBeginRange       FrontFace = 0
	FrontFaceEndRange         FrontFace = 1
	FrontFaceRangeSize        FrontFace = 2
	FrontFaceMaxEnum          FrontFace = 2147483647
)

FrontFace enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkFrontFace.html

type GeometryAABBNVX

type GeometryAABBNVX struct {
	SType    StructureType
	PNext    unsafe.Pointer
	AabbData Buffer
	NumAABBs uint32
	Stride   uint32
	Offset   DeviceSize
}

GeometryAABBNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryAABBNVX

type GeometryFlagBitsNVX

type GeometryFlagBitsNVX int32

GeometryFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryFlagBitsNVX

const (
	GeometryOpaqueBitNvx                      GeometryFlagBitsNVX = 1
	GeometryNoDuplicateAnyHitInvocationBitNvx GeometryFlagBitsNVX = 2
	GeometryFlagBitsMaxEnumNvx                GeometryFlagBitsNVX = 2147483647
)

GeometryFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryFlagBitsNVX

type GeometryInstanceFlagBitsNVX

type GeometryInstanceFlagBitsNVX int32

GeometryInstanceFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryInstanceFlagBitsNVX

const (
	GeometryInstanceTriangleCullDisableBitNvx     GeometryInstanceFlagBitsNVX = 1
	GeometryInstanceTriangleCullFlipWindingBitNvx GeometryInstanceFlagBitsNVX = 2
	GeometryInstanceForceOpaqueBitNvx             GeometryInstanceFlagBitsNVX = 4
	GeometryInstanceForceNoOpaqueBitNvx           GeometryInstanceFlagBitsNVX = 8
	GeometryInstanceFlagBitsMaxEnumNvx            GeometryInstanceFlagBitsNVX = 2147483647
)

GeometryInstanceFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryInstanceFlagBitsNVX

type GeometryTrianglesNVX

type GeometryTrianglesNVX struct {
	SType           StructureType
	PNext           unsafe.Pointer
	VertexData      Buffer
	VertexOffset    DeviceSize
	VertexCount     uint32
	VertexStride    DeviceSize
	VertexFormat    Format
	IndexData       Buffer
	IndexOffset     DeviceSize
	IndexCount      uint32
	IndexType       IndexType
	TransformData   Buffer
	TransformOffset DeviceSize
}

GeometryTrianglesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTrianglesNVX

type GeometryTypeNVX

type GeometryTypeNVX int32

GeometryTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTypeNVX

const (
	GeometryTypeTrianglesNvx  GeometryTypeNVX = iota
	GeometryTypeAabbsNvx      GeometryTypeNVX = 1
	GeometryTypeBeginRangeNvx GeometryTypeNVX = 0
	GeometryTypeEndRangeNvx   GeometryTypeNVX = 1
	GeometryTypeRangeSizeNvx  GeometryTypeNVX = 2
	GeometryTypeMaxEnumNvx    GeometryTypeNVX = 2147483647
)

GeometryTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkGeometryTypeNVX

type GraphicsPipelineCreateInfo

type GraphicsPipelineCreateInfo struct {
	SType               StructureType
	PNext               unsafe.Pointer
	Flags               PipelineCreateFlags
	StageCount          uint32
	PStages             *PipelineShaderStageCreateInfo
	PVertexInputState   *PipelineVertexInputStateCreateInfo
	PInputAssemblyState *PipelineInputAssemblyStateCreateInfo
	PTessellationState  *PipelineTessellationStateCreateInfo
	PViewportState      *PipelineViewportStateCreateInfo
	PRasterizationState *PipelineRasterizationStateCreateInfo
	PMultisampleState   *PipelineMultisampleStateCreateInfo
	PDepthStencilState  *PipelineDepthStencilStateCreateInfo
	PColorBlendState    *PipelineColorBlendStateCreateInfo
	PDynamicState       *PipelineDynamicStateCreateInfo
	Layout              PipelineLayout
	RenderPass          RenderPass
	Subpass             uint32
	BasePipelineHandle  Pipeline
	BasePipelineIndex   int32
}

GraphicsPipelineCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkGraphicsPipelineCreateInfo.html

type HdrMetadata

type HdrMetadata struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	DisplayPrimaryRed         XYColor
	DisplayPrimaryGreen       XYColor
	DisplayPrimaryBlue        XYColor
	WhitePoint                XYColor
	MaxLuminance              float32
	MinLuminance              float32
	MaxContentLightLevel      float32
	MaxFrameAverageLightLevel float32
}

HdrMetadata as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkHdrMetadataEXT.html

type ImageAspectFlagBits

type ImageAspectFlagBits int32

ImageAspectFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html

const (
	ImageAspectColorBit        ImageAspectFlagBits = 1
	ImageAspectDepthBit        ImageAspectFlagBits = 2
	ImageAspectStencilBit      ImageAspectFlagBits = 4
	ImageAspectMetadataBit     ImageAspectFlagBits = 8
	ImageAspectPlane0Bit       ImageAspectFlagBits = 16
	ImageAspectPlane1Bit       ImageAspectFlagBits = 32
	ImageAspectPlane2Bit       ImageAspectFlagBits = 64
	ImageAspectMemoryPlane0Bit ImageAspectFlagBits = 128
	ImageAspectMemoryPlane1Bit ImageAspectFlagBits = 256
	ImageAspectMemoryPlane2Bit ImageAspectFlagBits = 512
	ImageAspectMemoryPlane3Bit ImageAspectFlagBits = 1024
	ImageAspectFlagBitsMaxEnum ImageAspectFlagBits = 2147483647
)

ImageAspectFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageAspectFlagBits.html

type ImageBlit

type ImageBlit struct {
	SrcSubresource ImageSubresourceLayers
	SrcOffsets     [2]Offset3D
	DstSubresource ImageSubresourceLayers
	DstOffsets     [2]Offset3D
}

ImageBlit as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageBlit.html

type ImageCopy

type ImageCopy struct {
	SrcSubresource ImageSubresourceLayers
	SrcOffset      Offset3D
	DstSubresource ImageSubresourceLayers
	DstOffset      Offset3D
	Extent         Extent3D
}

ImageCopy as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCopy.html

type ImageCreateFlagBits

type ImageCreateFlagBits int32

ImageCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateFlagBits.html

const (
	ImageCreateSparseBindingBit                  ImageCreateFlagBits = 1
	ImageCreateSparseResidencyBit                ImageCreateFlagBits = 2
	ImageCreateSparseAliasedBit                  ImageCreateFlagBits = 4
	ImageCreateMutableFormatBit                  ImageCreateFlagBits = 8
	ImageCreateCubeCompatibleBit                 ImageCreateFlagBits = 16
	ImageCreateAliasBit                          ImageCreateFlagBits = 1024
	ImageCreateSplitInstanceBindRegionsBit       ImageCreateFlagBits = 64
	ImageCreate2dArrayCompatibleBit              ImageCreateFlagBits = 32
	ImageCreateBlockTexelViewCompatibleBit       ImageCreateFlagBits = 128
	ImageCreateExtendedUsageBit                  ImageCreateFlagBits = 256
	ImageCreateProtectedBit                      ImageCreateFlagBits = 2048
	ImageCreateDisjointBit                       ImageCreateFlagBits = 512
	ImageCreateCornerSampledBitNv                ImageCreateFlagBits = 8192
	ImageCreateSampleLocationsCompatibleDepthBit ImageCreateFlagBits = 4096
	ImageCreateFlagBitsMaxEnum                   ImageCreateFlagBits = 2147483647
)

ImageCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateFlagBits.html

type ImageCreateInfo

type ImageCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 ImageCreateFlags
	ImageType             ImageType
	Format                Format
	Extent                Extent3D
	MipLevels             uint32
	ArrayLayers           uint32
	Samples               SampleCountFlagBits
	Tiling                ImageTiling
	Usage                 ImageUsageFlags
	SharingMode           SharingMode
	QueueFamilyIndexCount uint32
	PQueueFamilyIndices   *uint32
	InitialLayout         ImageLayout
}

ImageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageCreateInfo.html

type ImageDrmFormatModifierExplicitCreateInfo

type ImageDrmFormatModifierExplicitCreateInfo struct {
	SType                       StructureType
	PNext                       unsafe.Pointer
	DrmFormatModifier           uint64
	DrmFormatModifierPlaneCount uint32
	PPlaneLayouts               *SubresourceLayout
}

ImageDrmFormatModifierExplicitCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierExplicitCreateInfoEXT.html

type ImageDrmFormatModifierListCreateInfo

type ImageDrmFormatModifierListCreateInfo struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	DrmFormatModifierCount uint32
	PDrmFormatModifiers    *uint64
}

ImageDrmFormatModifierListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierListCreateInfoEXT.html

type ImageDrmFormatModifierProperties

type ImageDrmFormatModifierProperties struct {
	SType             StructureType
	PNext             unsafe.Pointer
	DrmFormatModifier uint64
}

ImageDrmFormatModifierProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageDrmFormatModifierPropertiesEXT.html

type ImageFormatListCreateInfo

type ImageFormatListCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	ViewFormatCount uint32
	PViewFormats    *Format
}

ImageFormatListCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImageFormatListCreateInfoKHR

type ImageFormatProperties

type ImageFormatProperties struct {
	MaxExtent       Extent3D
	MaxMipLevels    uint32
	MaxArrayLayers  uint32
	SampleCounts    SampleCountFlags
	MaxResourceSize DeviceSize
}

ImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties.html

type ImageFormatProperties2

type ImageFormatProperties2 struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	ImageFormatProperties ImageFormatProperties
}

ImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageFormatProperties2.html

type ImageLayout

type ImageLayout int32

ImageLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html

const (
	ImageLayoutUndefined                             ImageLayout = iota
	ImageLayoutGeneral                               ImageLayout = 1
	ImageLayoutColorAttachmentOptimal                ImageLayout = 2
	ImageLayoutDepthStencilAttachmentOptimal         ImageLayout = 3
	ImageLayoutDepthStencilReadOnlyOptimal           ImageLayout = 4
	ImageLayoutShaderReadOnlyOptimal                 ImageLayout = 5
	ImageLayoutTransferSrcOptimal                    ImageLayout = 6
	ImageLayoutTransferDstOptimal                    ImageLayout = 7
	ImageLayoutPreinitialized                        ImageLayout = 8
	ImageLayoutDepthReadOnlyStencilAttachmentOptimal ImageLayout = 1000117000
	ImageLayoutDepthAttachmentStencilReadOnlyOptimal ImageLayout = 1000117001
	ImageLayoutPresentSrc                            ImageLayout = 1000001002
	ImageLayoutSharedPresent                         ImageLayout = 1000111000
	ImageLayoutShadingRateOptimalNv                  ImageLayout = 1000164003
	ImageLayoutBeginRange                            ImageLayout = 0
	ImageLayoutEndRange                              ImageLayout = 8
	ImageLayoutRangeSize                             ImageLayout = 9
	ImageLayoutMaxEnum                               ImageLayout = 2147483647
)

ImageLayout enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageLayout.html

type ImageMemoryBarrier

type ImageMemoryBarrier struct {
	SType               StructureType
	PNext               unsafe.Pointer
	SrcAccessMask       AccessFlags
	DstAccessMask       AccessFlags
	OldLayout           ImageLayout
	NewLayout           ImageLayout
	SrcQueueFamilyIndex uint32
	DstQueueFamilyIndex uint32
	Image               Image
	SubresourceRange    ImageSubresourceRange
}

ImageMemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryBarrier.html

type ImageMemoryRequirementsInfo2

type ImageMemoryRequirementsInfo2 struct {
	SType StructureType
	PNext unsafe.Pointer
	Image Image
}

ImageMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageMemoryRequirementsInfo2.html

type ImagePlaneMemoryRequirementsInfo

type ImagePlaneMemoryRequirementsInfo struct {
	SType       StructureType
	PNext       unsafe.Pointer
	PlaneAspect ImageAspectFlagBits
}

ImagePlaneMemoryRequirementsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImagePlaneMemoryRequirementsInfo.html

type ImageResolve

type ImageResolve struct {
	SrcSubresource ImageSubresourceLayers
	SrcOffset      Offset3D
	DstSubresource ImageSubresourceLayers
	DstOffset      Offset3D
	Extent         Extent3D
}

ImageResolve as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageResolve.html

type ImageSparseMemoryRequirementsInfo2

type ImageSparseMemoryRequirementsInfo2 struct {
	SType StructureType
	PNext unsafe.Pointer
	Image Image
}

ImageSparseMemoryRequirementsInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSparseMemoryRequirementsInfo2.html

type ImageSubresource

type ImageSubresource struct {
	AspectMask ImageAspectFlags
	MipLevel   uint32
	ArrayLayer uint32
}

ImageSubresource as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresource.html

type ImageSubresourceLayers

type ImageSubresourceLayers struct {
	AspectMask     ImageAspectFlags
	MipLevel       uint32
	BaseArrayLayer uint32
	LayerCount     uint32
}

ImageSubresourceLayers as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceLayers.html

type ImageSubresourceRange

type ImageSubresourceRange struct {
	AspectMask     ImageAspectFlags
	BaseMipLevel   uint32
	LevelCount     uint32
	BaseArrayLayer uint32
	LayerCount     uint32
}

ImageSubresourceRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageSubresourceRange.html

type ImageSwapchainCreateInfo

type ImageSwapchainCreateInfo struct {
	SType     StructureType
	PNext     unsafe.Pointer
	Swapchain Swapchain
}

ImageSwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkImageSwapchainCreateInfoKHR

type ImageTiling

type ImageTiling int32

ImageTiling as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageTiling.html

const (
	ImageTilingOptimal           ImageTiling = iota
	ImageTilingLinear            ImageTiling = 1
	ImageTilingDrmFormatModifier ImageTiling = 1000158000
	ImageTilingBeginRange        ImageTiling = 0
	ImageTilingEndRange          ImageTiling = 1
	ImageTilingRangeSize         ImageTiling = 2
	ImageTilingMaxEnum           ImageTiling = 2147483647
)

ImageTiling enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageTiling.html

type ImageType

type ImageType int32

ImageType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html

const (
	ImageType1d         ImageType = iota
	ImageType2d         ImageType = 1
	ImageType3d         ImageType = 2
	ImageTypeBeginRange ImageType = 0
	ImageTypeEndRange   ImageType = 2
	ImageTypeRangeSize  ImageType = 3
	ImageTypeMaxEnum    ImageType = 2147483647
)

ImageType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageType.html

type ImageUsageFlagBits

type ImageUsageFlagBits int32

ImageUsageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html

const (
	ImageUsageTransferSrcBit            ImageUsageFlagBits = 1
	ImageUsageTransferDstBit            ImageUsageFlagBits = 2
	ImageUsageSampledBit                ImageUsageFlagBits = 4
	ImageUsageStorageBit                ImageUsageFlagBits = 8
	ImageUsageColorAttachmentBit        ImageUsageFlagBits = 16
	ImageUsageDepthStencilAttachmentBit ImageUsageFlagBits = 32
	ImageUsageTransientAttachmentBit    ImageUsageFlagBits = 64
	ImageUsageInputAttachmentBit        ImageUsageFlagBits = 128
	ImageUsageShadingRateImageBitNv     ImageUsageFlagBits = 256
	ImageUsageFlagBitsMaxEnum           ImageUsageFlagBits = 2147483647
)

ImageUsageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageUsageFlagBits.html

type ImageViewASTCDecodeMode

type ImageViewASTCDecodeMode struct {
	SType      StructureType
	PNext      unsafe.Pointer
	DecodeMode Format
}

ImageViewASTCDecodeMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewASTCDecodeModeEXT.html

type ImageViewCreateFlags

type ImageViewCreateFlags uint32

ImageViewCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateFlags.html

type ImageViewCreateInfo

type ImageViewCreateInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            ImageViewCreateFlags
	Image            Image
	ViewType         ImageViewType
	Format           Format
	Components       ComponentMapping
	SubresourceRange ImageSubresourceRange
}

ImageViewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewCreateInfo.html

type ImageViewType

type ImageViewType int32

ImageViewType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html

const (
	ImageViewType1d         ImageViewType = iota
	ImageViewType2d         ImageViewType = 1
	ImageViewType3d         ImageViewType = 2
	ImageViewTypeCube       ImageViewType = 3
	ImageViewType1dArray    ImageViewType = 4
	ImageViewType2dArray    ImageViewType = 5
	ImageViewTypeCubeArray  ImageViewType = 6
	ImageViewTypeBeginRange ImageViewType = 0
	ImageViewTypeEndRange   ImageViewType = 6
	ImageViewTypeRangeSize  ImageViewType = 7
	ImageViewTypeMaxEnum    ImageViewType = 2147483647
)

ImageViewType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewType.html

type ImageViewUsageCreateInfo

type ImageViewUsageCreateInfo struct {
	SType StructureType
	PNext unsafe.Pointer
	Usage ImageUsageFlags
}

ImageViewUsageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImageViewUsageCreateInfo.html

type ImportMemoryHostPointerInfo

type ImportMemoryHostPointerInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	HandleType   ExternalMemoryHandleTypeFlagBits
	PHostPointer unsafe.Pointer
}

ImportMemoryHostPointerInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkImportMemoryHostPointerInfoEXT.html

type IndexType

type IndexType int32

IndexType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndexType.html

const (
	IndexTypeUint16     IndexType = iota
	IndexTypeUint32     IndexType = 1
	IndexTypeBeginRange IndexType = 0
	IndexTypeEndRange   IndexType = 1
	IndexTypeRangeSize  IndexType = 2
	IndexTypeMaxEnum    IndexType = 2147483647
)

IndexType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkIndexType.html

type IndirectCommandsLayoutTokenNVX

type IndirectCommandsLayoutTokenNVX struct {
	TokenType    IndirectCommandsTokenTypeNVX
	BindingUnit  uint32
	DynamicCount uint32
	Divisor      uint32
}

IndirectCommandsLayoutTokenNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutTokenNVX

type IndirectCommandsLayoutUsageFlagBitsNVX

type IndirectCommandsLayoutUsageFlagBitsNVX int32

IndirectCommandsLayoutUsageFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagBitsNVX

const (
	IndirectCommandsLayoutUsageUnorderedSequencesBitNvx IndirectCommandsLayoutUsageFlagBitsNVX = 1
	IndirectCommandsLayoutUsageSparseSequencesBitNvx    IndirectCommandsLayoutUsageFlagBitsNVX = 2
	IndirectCommandsLayoutUsageEmptyExecutionsBitNvx    IndirectCommandsLayoutUsageFlagBitsNVX = 4
	IndirectCommandsLayoutUsageIndexedSequencesBitNvx   IndirectCommandsLayoutUsageFlagBitsNVX = 8
	IndirectCommandsLayoutUsageFlagBitsMaxEnumNvx       IndirectCommandsLayoutUsageFlagBitsNVX = 2147483647
)

IndirectCommandsLayoutUsageFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagBitsNVX

type IndirectCommandsLayoutUsageFlagsNVX

type IndirectCommandsLayoutUsageFlagsNVX uint32

IndirectCommandsLayoutUsageFlagsNVX type as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsLayoutUsageFlagsNVX

type IndirectCommandsTokenNVX

type IndirectCommandsTokenNVX struct {
	TokenType IndirectCommandsTokenTypeNVX
	Buffer    Buffer
	Offset    DeviceSize
}

IndirectCommandsTokenNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenNVX

type IndirectCommandsTokenTypeNVX

type IndirectCommandsTokenTypeNVX int32

IndirectCommandsTokenTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenTypeNVX

const (
	IndirectCommandsTokenTypePipelineNvx      IndirectCommandsTokenTypeNVX = iota
	IndirectCommandsTokenTypeDescriptorSetNvx IndirectCommandsTokenTypeNVX = 1
	IndirectCommandsTokenTypeIndexBufferNvx   IndirectCommandsTokenTypeNVX = 2
	IndirectCommandsTokenTypeVertexBufferNvx  IndirectCommandsTokenTypeNVX = 3
	IndirectCommandsTokenTypePushConstantNvx  IndirectCommandsTokenTypeNVX = 4
	IndirectCommandsTokenTypeDrawIndexedNvx   IndirectCommandsTokenTypeNVX = 5
	IndirectCommandsTokenTypeDrawNvx          IndirectCommandsTokenTypeNVX = 6
	IndirectCommandsTokenTypeDispatchNvx      IndirectCommandsTokenTypeNVX = 7
	IndirectCommandsTokenTypeBeginRangeNvx    IndirectCommandsTokenTypeNVX = 0
	IndirectCommandsTokenTypeEndRangeNvx      IndirectCommandsTokenTypeNVX = 7
	IndirectCommandsTokenTypeRangeSizeNvx     IndirectCommandsTokenTypeNVX = 8
	IndirectCommandsTokenTypeMaxEnumNvx       IndirectCommandsTokenTypeNVX = 2147483647
)

IndirectCommandsTokenTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkIndirectCommandsTokenTypeNVX

type InputAttachmentAspectReference

type InputAttachmentAspectReference struct {
	Subpass              uint32
	InputAttachmentIndex uint32
	AspectMask           ImageAspectFlags
}

InputAttachmentAspectReference as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInputAttachmentAspectReference.html

type InstanceCreateFlags

type InstanceCreateFlags uint32

InstanceCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateFlags.html

type InstanceCreateInfo

type InstanceCreateInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	Flags            InstanceCreateFlags
	PApplicationInfo *ApplicationInfo
	// contains filtered or unexported fields
}

InstanceCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInstanceCreateInfo.html

func (*InstanceCreateInfo) Free

func (s *InstanceCreateInfo) Free()

func (*InstanceCreateInfo) SetEnabledExtensionNames added in v1.1.1

func (s *InstanceCreateInfo) SetEnabledExtensionNames(names []string)

func (*InstanceCreateInfo) SetEnabledLayerNames added in v1.1.1

func (s *InstanceCreateInfo) SetEnabledLayerNames(names []string)

type InternalAllocationType

type InternalAllocationType int32

InternalAllocationType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInternalAllocationType.html

const (
	InternalAllocationTypeExecutable InternalAllocationType = iota
	InternalAllocationTypeBeginRange InternalAllocationType = 0
	InternalAllocationTypeEndRange   InternalAllocationType = 0
	InternalAllocationTypeRangeSize  InternalAllocationType = 1
	InternalAllocationTypeMaxEnum    InternalAllocationType = 2147483647
)

InternalAllocationType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkInternalAllocationType.html

type LayerProperties

type LayerProperties struct {
	LayerName             [256]byte
	SpecVersion           uint32
	ImplementationVersion uint32
	Description           [256]byte
}

LayerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLayerProperties.html

type LogicOp

type LogicOp int32

LogicOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html

const (
	LogicOpClear        LogicOp = iota
	LogicOpAnd          LogicOp = 1
	LogicOpAndReverse   LogicOp = 2
	LogicOpCopy         LogicOp = 3
	LogicOpAndInverted  LogicOp = 4
	LogicOpNoOp         LogicOp = 5
	LogicOpXor          LogicOp = 6
	LogicOpOr           LogicOp = 7
	LogicOpNor          LogicOp = 8
	LogicOpEquivalent   LogicOp = 9
	LogicOpInvert       LogicOp = 10
	LogicOpOrReverse    LogicOp = 11
	LogicOpCopyInverted LogicOp = 12
	LogicOpOrInverted   LogicOp = 13
	LogicOpNand         LogicOp = 14
	LogicOpSet          LogicOp = 15
	LogicOpBeginRange   LogicOp = 0
	LogicOpEndRange     LogicOp = 15
	LogicOpRangeSize    LogicOp = 16
	LogicOpMaxEnum      LogicOp = 2147483647
)

LogicOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkLogicOp.html

type MappedMemoryRange

type MappedMemoryRange struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Memory DeviceMemory
	Offset DeviceSize
	Size   DeviceSize
}

MappedMemoryRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMappedMemoryRange.html

type MemoryAllocateFlagBits

type MemoryAllocateFlagBits int32

MemoryAllocateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagBits.html

const (
	MemoryAllocateDeviceMaskBit   MemoryAllocateFlagBits = 1
	MemoryAllocateFlagBitsMaxEnum MemoryAllocateFlagBits = 2147483647
)

MemoryAllocateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagBits.html

type MemoryAllocateFlags

type MemoryAllocateFlags uint32

MemoryAllocateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlags.html

type MemoryAllocateFlagsInfo

type MemoryAllocateFlagsInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Flags      MemoryAllocateFlags
	DeviceMask uint32
}

MemoryAllocateFlagsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateFlagsInfo.html

type MemoryAllocateInfo

type MemoryAllocateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	AllocationSize  DeviceSize
	MemoryTypeIndex uint32
}

MemoryAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryAllocateInfo.html

type MemoryBarrier

type MemoryBarrier struct {
	SType         StructureType
	PNext         unsafe.Pointer
	SrcAccessMask AccessFlags
	DstAccessMask AccessFlags
}

MemoryBarrier as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryBarrier.html

type MemoryDedicatedAllocateInfo

type MemoryDedicatedAllocateInfo struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Image  Image
	Buffer Buffer
}

MemoryDedicatedAllocateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedAllocateInfo.html

type MemoryDedicatedRequirements

type MemoryDedicatedRequirements struct {
	SType                       StructureType
	PNext                       unsafe.Pointer
	PrefersDedicatedAllocation  Bool32
	RequiresDedicatedAllocation Bool32
}

MemoryDedicatedRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryDedicatedRequirements.html

type MemoryFdProperties

type MemoryFdProperties struct {
	SType          StructureType
	PNext          unsafe.Pointer
	MemoryTypeBits uint32
}

MemoryFdProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkMemoryFdPropertiesKHR

type MemoryHeapFlagBits

type MemoryHeapFlagBits int32

MemoryHeapFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html

const (
	MemoryHeapDeviceLocalBit   MemoryHeapFlagBits = 1
	MemoryHeapMultiInstanceBit MemoryHeapFlagBits = 2
	MemoryHeapFlagBitsMaxEnum  MemoryHeapFlagBits = 2147483647
)

MemoryHeapFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHeapFlagBits.html

type MemoryHostPointerProperties

type MemoryHostPointerProperties struct {
	SType          StructureType
	PNext          unsafe.Pointer
	MemoryTypeBits uint32
}

MemoryHostPointerProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryHostPointerPropertiesEXT.html

type MemoryPropertyFlagBits

type MemoryPropertyFlagBits int32

MemoryPropertyFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlagBits.html

const (
	MemoryPropertyDeviceLocalBit     MemoryPropertyFlagBits = 1
	MemoryPropertyHostVisibleBit     MemoryPropertyFlagBits = 2
	MemoryPropertyHostCoherentBit    MemoryPropertyFlagBits = 4
	MemoryPropertyHostCachedBit      MemoryPropertyFlagBits = 8
	MemoryPropertyLazilyAllocatedBit MemoryPropertyFlagBits = 16
	MemoryPropertyProtectedBit       MemoryPropertyFlagBits = 32
	MemoryPropertyFlagBitsMaxEnum    MemoryPropertyFlagBits = 2147483647
)

MemoryPropertyFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlagBits.html

type MemoryPropertyFlags

type MemoryPropertyFlags uint32

MemoryPropertyFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryPropertyFlags.html

type MemoryRequirements

type MemoryRequirements struct {
	Size           DeviceSize
	Alignment      DeviceSize
	MemoryTypeBits uint32
}

MemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements.html

type MemoryRequirements2

type MemoryRequirements2 struct {
	SType              StructureType
	PNext              unsafe.Pointer
	MemoryRequirements MemoryRequirements
}

MemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryRequirements2.html

type MemoryType

type MemoryType struct {
	PropertyFlags MemoryPropertyFlags
	HeapIndex     uint32
}

MemoryType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMemoryType.html

type MultisampleProperties

type MultisampleProperties struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	MaxSampleLocationGridSize Extent2D
}

MultisampleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkMultisamplePropertiesEXT.html

type ObjectEntryTypeNVX

type ObjectEntryTypeNVX int32

ObjectEntryTypeNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryTypeNVX

const (
	ObjectEntryTypeDescriptorSetNvx ObjectEntryTypeNVX = iota
	ObjectEntryTypePipelineNvx      ObjectEntryTypeNVX = 1
	ObjectEntryTypeIndexBufferNvx   ObjectEntryTypeNVX = 2
	ObjectEntryTypeVertexBufferNvx  ObjectEntryTypeNVX = 3
	ObjectEntryTypePushConstantNvx  ObjectEntryTypeNVX = 4
	ObjectEntryTypeBeginRangeNvx    ObjectEntryTypeNVX = 0
	ObjectEntryTypeEndRangeNvx      ObjectEntryTypeNVX = 4
	ObjectEntryTypeRangeSizeNvx     ObjectEntryTypeNVX = 5
	ObjectEntryTypeMaxEnumNvx       ObjectEntryTypeNVX = 2147483647
)

ObjectEntryTypeNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryTypeNVX

type ObjectEntryUsageFlagBitsNVX

type ObjectEntryUsageFlagBitsNVX int32

ObjectEntryUsageFlagBitsNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryUsageFlagBitsNVX

const (
	ObjectEntryUsageGraphicsBitNvx     ObjectEntryUsageFlagBitsNVX = 1
	ObjectEntryUsageComputeBitNvx      ObjectEntryUsageFlagBitsNVX = 2
	ObjectEntryUsageFlagBitsMaxEnumNvx ObjectEntryUsageFlagBitsNVX = 2147483647
)

ObjectEntryUsageFlagBitsNVX enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectEntryUsageFlagBitsNVX

type ObjectTableCreateInfoNVX

type ObjectTableCreateInfoNVX struct {
	SType                          StructureType
	PNext                          unsafe.Pointer
	ObjectCount                    uint32
	PObjectEntryTypes              *ObjectEntryTypeNVX
	PObjectEntryCounts             *uint32
	PObjectEntryUsageFlags         *ObjectEntryUsageFlagsNVX
	MaxUniformBuffersPerDescriptor uint32
	MaxStorageBuffersPerDescriptor uint32
	MaxStorageImagesPerDescriptor  uint32
	MaxSampledImagesPerDescriptor  uint32
	MaxPipelineLayouts             uint32
}

ObjectTableCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableCreateInfoNVX

type ObjectTableDescriptorSetEntryNVX

type ObjectTableDescriptorSetEntryNVX struct {
	Type           ObjectEntryTypeNVX
	Flags          ObjectEntryUsageFlagsNVX
	PipelineLayout PipelineLayout
	DescriptorSet  DescriptorSet
}

ObjectTableDescriptorSetEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableDescriptorSetEntryNVX

type ObjectTableIndexBufferEntryNVX

type ObjectTableIndexBufferEntryNVX struct {
	Type      ObjectEntryTypeNVX
	Flags     ObjectEntryUsageFlagsNVX
	Buffer    Buffer
	IndexType IndexType
}

ObjectTableIndexBufferEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTableIndexBufferEntryNVX

type ObjectTablePushConstantEntryNVX

type ObjectTablePushConstantEntryNVX struct {
	Type           ObjectEntryTypeNVX
	Flags          ObjectEntryUsageFlagsNVX
	PipelineLayout PipelineLayout
	StageFlags     ShaderStageFlags
}

ObjectTablePushConstantEntryNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkObjectTablePushConstantEntryNVX

type ObjectType

type ObjectType int32

ObjectType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html

const (
	ObjectTypeUnknown                   ObjectType = iota
	ObjectTypeInstance                  ObjectType = 1
	ObjectTypePhysicalDevice            ObjectType = 2
	ObjectTypeDevice                    ObjectType = 3
	ObjectTypeQueue                     ObjectType = 4
	ObjectTypeSemaphore                 ObjectType = 5
	ObjectTypeCommandBuffer             ObjectType = 6
	ObjectTypeFence                     ObjectType = 7
	ObjectTypeDeviceMemory              ObjectType = 8
	ObjectTypeBuffer                    ObjectType = 9
	ObjectTypeImage                     ObjectType = 10
	ObjectTypeEvent                     ObjectType = 11
	ObjectTypeQueryPool                 ObjectType = 12
	ObjectTypeBufferView                ObjectType = 13
	ObjectTypeImageView                 ObjectType = 14
	ObjectTypeShaderModule              ObjectType = 15
	ObjectTypePipelineCache             ObjectType = 16
	ObjectTypePipelineLayout            ObjectType = 17
	ObjectTypeRenderPass                ObjectType = 18
	ObjectTypePipeline                  ObjectType = 19
	ObjectTypeDescriptorSetLayout       ObjectType = 20
	ObjectTypeSampler                   ObjectType = 21
	ObjectTypeDescriptorPool            ObjectType = 22
	ObjectTypeDescriptorSet             ObjectType = 23
	ObjectTypeFramebuffer               ObjectType = 24
	ObjectTypeCommandPool               ObjectType = 25
	ObjectTypeSamplerYcbcrConversion    ObjectType = 1000156000
	ObjectTypeDescriptorUpdateTemplate  ObjectType = 1000085000
	ObjectTypeSurface                   ObjectType = 1000000000
	ObjectTypeSwapchain                 ObjectType = 1000001000
	ObjectTypeDisplay                   ObjectType = 1000002000
	ObjectTypeDisplayMode               ObjectType = 1000002001
	ObjectTypeDebugReportCallback       ObjectType = 1000011000
	ObjectTypeObjectTableNvx            ObjectType = 1000086000
	ObjectTypeIndirectCommandsLayoutNvx ObjectType = 1000086001
	ObjectTypeDebugUtilsMessenger       ObjectType = 1000128000
	ObjectTypeValidationCache           ObjectType = 1000160000
	ObjectTypeAccelerationStructureNvx  ObjectType = 1000165000
	ObjectTypeBeginRange                ObjectType = 0
	ObjectTypeEndRange                  ObjectType = 25
	ObjectTypeRangeSize                 ObjectType = 26
	ObjectTypeMaxEnum                   ObjectType = 2147483647
)

ObjectType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkObjectType.html

type Offset2D

type Offset2D struct {
	X int32
	Y int32
}

Offset2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset2D.html

type Offset3D

type Offset3D struct {
	X int32
	Y int32
	Z int32
}

Offset3D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkOffset3D.html

type PastPresentationTimingGOOGLE

type PastPresentationTimingGOOGLE struct {
	PresentID           uint32
	DesiredPresentTime  uint64
	ActualPresentTime   uint64
	EarliestPresentTime uint64
	PresentMargin       uint64
}

PastPresentationTimingGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPastPresentationTimingGOOGLE.html

type PeerMemoryFeatureFlagBits

type PeerMemoryFeatureFlagBits int32

PeerMemoryFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPeerMemoryFeatureFlagBits.html

const (
	PeerMemoryFeatureCopySrcBit      PeerMemoryFeatureFlagBits = 1
	PeerMemoryFeatureCopyDstBit      PeerMemoryFeatureFlagBits = 2
	PeerMemoryFeatureGenericSrcBit   PeerMemoryFeatureFlagBits = 4
	PeerMemoryFeatureGenericDstBit   PeerMemoryFeatureFlagBits = 8
	PeerMemoryFeatureFlagBitsMaxEnum PeerMemoryFeatureFlagBits = 2147483647
)

PeerMemoryFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPeerMemoryFeatureFlagBits.html

type PeerMemoryFeatureFlags

type PeerMemoryFeatureFlags uint32

PeerMemoryFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPeerMemoryFeatureFlags.html

type PhysicalDevice16BitStorageFeatures

type PhysicalDevice16BitStorageFeatures struct {
	SType                              StructureType
	PNext                              unsafe.Pointer
	StorageBuffer16BitAccess           Bool32
	UniformAndStorageBuffer16BitAccess Bool32
	StoragePushConstant16              Bool32
	StorageInputOutput16               Bool32
}

PhysicalDevice16BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevice16BitStorageFeatures.html

type PhysicalDevice8BitStorageFeatures

type PhysicalDevice8BitStorageFeatures struct {
	SType                             StructureType
	PNext                             unsafe.Pointer
	StorageBuffer8BitAccess           Bool32
	UniformAndStorageBuffer8BitAccess Bool32
	StoragePushConstant8              Bool32
}

PhysicalDevice8BitStorageFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevice8BitStorageFeaturesKHR

type PhysicalDeviceASTCDecodeFeatures

type PhysicalDeviceASTCDecodeFeatures struct {
	SType                    StructureType
	PNext                    unsafe.Pointer
	DecodeModeSharedExponent Bool32
}

PhysicalDeviceASTCDecodeFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceASTCDecodeFeaturesEXT.html

type PhysicalDeviceBlendOperationAdvancedFeatures

type PhysicalDeviceBlendOperationAdvancedFeatures struct {
	SType                           StructureType
	PNext                           unsafe.Pointer
	AdvancedBlendCoherentOperations Bool32
}

PhysicalDeviceBlendOperationAdvancedFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.html

type PhysicalDeviceBlendOperationAdvancedProperties

type PhysicalDeviceBlendOperationAdvancedProperties struct {
	SType                                 StructureType
	PNext                                 unsafe.Pointer
	AdvancedBlendMaxColorAttachments      uint32
	AdvancedBlendIndependentBlend         Bool32
	AdvancedBlendNonPremultipliedSrcColor Bool32
	AdvancedBlendNonPremultipliedDstColor Bool32
	AdvancedBlendCorrelatedOverlap        Bool32
	AdvancedBlendAllOperations            Bool32
}

PhysicalDeviceBlendOperationAdvancedProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.html

type PhysicalDeviceComputeShaderDerivativesFeaturesNV

type PhysicalDeviceComputeShaderDerivativesFeaturesNV struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	ComputeDerivativeGroupQuads  Bool32
	ComputeDerivativeGroupLinear Bool32
}

PhysicalDeviceComputeShaderDerivativesFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceComputeShaderDerivativesFeaturesNV.html

type PhysicalDeviceConditionalRenderingFeatures

type PhysicalDeviceConditionalRenderingFeatures struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	ConditionalRendering          Bool32
	InheritedConditionalRendering Bool32
}

PhysicalDeviceConditionalRenderingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConditionalRenderingFeaturesEXT.html

type PhysicalDeviceConservativeRasterizationProperties

type PhysicalDeviceConservativeRasterizationProperties struct {
	SType                                       StructureType
	PNext                                       unsafe.Pointer
	PrimitiveOverestimationSize                 float32
	MaxExtraPrimitiveOverestimationSize         float32
	ExtraPrimitiveOverestimationSizeGranularity float32
	PrimitiveUnderestimation                    Bool32
	ConservativePointAndLineRasterization       Bool32
	DegenerateTrianglesRasterized               Bool32
	DegenerateLinesRasterized                   Bool32
	FullyCoveredFragmentShaderInputVariable     Bool32
	ConservativeRasterizationPostDepthCoverage  Bool32
}

PhysicalDeviceConservativeRasterizationProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceConservativeRasterizationPropertiesEXT.html

type PhysicalDeviceCornerSampledImageFeaturesNV

type PhysicalDeviceCornerSampledImageFeaturesNV struct {
	SType              StructureType
	PNext              unsafe.Pointer
	CornerSampledImage Bool32
}

PhysicalDeviceCornerSampledImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceCornerSampledImageFeaturesNV.html

type PhysicalDeviceDescriptorIndexingFeatures

type PhysicalDeviceDescriptorIndexingFeatures struct {
	SType                                              StructureType
	PNext                                              unsafe.Pointer
	ShaderInputAttachmentArrayDynamicIndexing          Bool32
	ShaderUniformTexelBufferArrayDynamicIndexing       Bool32
	ShaderStorageTexelBufferArrayDynamicIndexing       Bool32
	ShaderUniformBufferArrayNonUniformIndexing         Bool32
	ShaderSampledImageArrayNonUniformIndexing          Bool32
	ShaderStorageBufferArrayNonUniformIndexing         Bool32
	ShaderStorageImageArrayNonUniformIndexing          Bool32
	ShaderInputAttachmentArrayNonUniformIndexing       Bool32
	ShaderUniformTexelBufferArrayNonUniformIndexing    Bool32
	ShaderStorageTexelBufferArrayNonUniformIndexing    Bool32
	DescriptorBindingUniformBufferUpdateAfterBind      Bool32
	DescriptorBindingSampledImageUpdateAfterBind       Bool32
	DescriptorBindingStorageImageUpdateAfterBind       Bool32
	DescriptorBindingStorageBufferUpdateAfterBind      Bool32
	DescriptorBindingUniformTexelBufferUpdateAfterBind Bool32
	DescriptorBindingStorageTexelBufferUpdateAfterBind Bool32
	DescriptorBindingUpdateUnusedWhilePending          Bool32
	DescriptorBindingPartiallyBound                    Bool32
	DescriptorBindingVariableDescriptorCount           Bool32
	RuntimeDescriptorArray                             Bool32
}

PhysicalDeviceDescriptorIndexingFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingFeaturesEXT.html

type PhysicalDeviceDescriptorIndexingProperties

type PhysicalDeviceDescriptorIndexingProperties struct {
	SType                                                StructureType
	PNext                                                unsafe.Pointer
	MaxUpdateAfterBindDescriptorsInAllPools              uint32
	ShaderUniformBufferArrayNonUniformIndexingNative     Bool32
	ShaderSampledImageArrayNonUniformIndexingNative      Bool32
	ShaderStorageBufferArrayNonUniformIndexingNative     Bool32
	ShaderStorageImageArrayNonUniformIndexingNative      Bool32
	ShaderInputAttachmentArrayNonUniformIndexingNative   Bool32
	RobustBufferAccessUpdateAfterBind                    Bool32
	QuadDivergentImplicitLod                             Bool32
	MaxPerStageDescriptorUpdateAfterBindSamplers         uint32
	MaxPerStageDescriptorUpdateAfterBindUniformBuffers   uint32
	MaxPerStageDescriptorUpdateAfterBindStorageBuffers   uint32
	MaxPerStageDescriptorUpdateAfterBindSampledImages    uint32
	MaxPerStageDescriptorUpdateAfterBindStorageImages    uint32
	MaxPerStageDescriptorUpdateAfterBindInputAttachments uint32
	MaxPerStageUpdateAfterBindResources                  uint32
	MaxDescriptorSetUpdateAfterBindSamplers              uint32
	MaxDescriptorSetUpdateAfterBindUniformBuffers        uint32
	MaxDescriptorSetUpdateAfterBindUniformBuffersDynamic uint32
	MaxDescriptorSetUpdateAfterBindStorageBuffers        uint32
	MaxDescriptorSetUpdateAfterBindStorageBuffersDynamic uint32
	MaxDescriptorSetUpdateAfterBindSampledImages         uint32
	MaxDescriptorSetUpdateAfterBindStorageImages         uint32
	MaxDescriptorSetUpdateAfterBindInputAttachments      uint32
}

PhysicalDeviceDescriptorIndexingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDescriptorIndexingPropertiesEXT.html

type PhysicalDeviceDiscardRectangleProperties

type PhysicalDeviceDiscardRectangleProperties struct {
	SType                StructureType
	PNext                unsafe.Pointer
	MaxDiscardRectangles uint32
}

PhysicalDeviceDiscardRectangleProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceDiscardRectanglePropertiesEXT.html

type PhysicalDeviceDriverProperties

type PhysicalDeviceDriverProperties struct {
	SType              StructureType
	PNext              unsafe.Pointer
	DriverID           DriverId
	DriverName         [256]byte
	DriverInfo         [256]byte
	ConformanceVersion ConformanceVersion
}

PhysicalDeviceDriverProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceDriverPropertiesKHR

type PhysicalDeviceExclusiveScissorFeaturesNV

type PhysicalDeviceExclusiveScissorFeaturesNV struct {
	SType            StructureType
	PNext            unsafe.Pointer
	ExclusiveScissor Bool32
}

PhysicalDeviceExclusiveScissorFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExclusiveScissorFeaturesNV.html

type PhysicalDeviceExternalFenceInfo

type PhysicalDeviceExternalFenceInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	HandleType ExternalFenceHandleTypeFlagBits
}

PhysicalDeviceExternalFenceInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalFenceInfo.html

type PhysicalDeviceExternalImageFormatInfo

type PhysicalDeviceExternalImageFormatInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	HandleType ExternalMemoryHandleTypeFlagBits
}

PhysicalDeviceExternalImageFormatInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalImageFormatInfo.html

type PhysicalDeviceExternalMemoryHostProperties

type PhysicalDeviceExternalMemoryHostProperties struct {
	SType                           StructureType
	PNext                           unsafe.Pointer
	MinImportedHostPointerAlignment DeviceSize
}

PhysicalDeviceExternalMemoryHostProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalMemoryHostPropertiesEXT.html

type PhysicalDeviceExternalSemaphoreInfo

type PhysicalDeviceExternalSemaphoreInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	HandleType ExternalSemaphoreHandleTypeFlagBits
}

PhysicalDeviceExternalSemaphoreInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceExternalSemaphoreInfo.html

type PhysicalDeviceFeatures

type PhysicalDeviceFeatures struct {
	RobustBufferAccess                      Bool32
	FullDrawIndexUint32                     Bool32
	ImageCubeArray                          Bool32
	IndependentBlend                        Bool32
	GeometryShader                          Bool32
	TessellationShader                      Bool32
	SampleRateShading                       Bool32
	DualSrcBlend                            Bool32
	LogicOp                                 Bool32
	MultiDrawIndirect                       Bool32
	DrawIndirectFirstInstance               Bool32
	DepthClamp                              Bool32
	DepthBiasClamp                          Bool32
	FillModeNonSolid                        Bool32
	DepthBounds                             Bool32
	WideLines                               Bool32
	LargePoints                             Bool32
	AlphaToOne                              Bool32
	MultiViewport                           Bool32
	SamplerAnisotropy                       Bool32
	TextureCompressionETC2                  Bool32
	TextureCompressionASTC_LDR              Bool32
	TextureCompressionBC                    Bool32
	OcclusionQueryPrecise                   Bool32
	PipelineStatisticsQuery                 Bool32
	VertexPipelineStoresAndAtomics          Bool32
	FragmentStoresAndAtomics                Bool32
	ShaderTessellationAndGeometryPointSize  Bool32
	ShaderImageGatherExtended               Bool32
	ShaderStorageImageExtendedFormats       Bool32
	ShaderStorageImageMultisample           Bool32
	ShaderStorageImageReadWithoutFormat     Bool32
	ShaderStorageImageWriteWithoutFormat    Bool32
	ShaderUniformBufferArrayDynamicIndexing Bool32
	ShaderSampledImageArrayDynamicIndexing  Bool32
	ShaderStorageBufferArrayDynamicIndexing Bool32
	ShaderStorageImageArrayDynamicIndexing  Bool32
	ShaderClipDistance                      Bool32
	ShaderCullDistance                      Bool32
	ShaderFloat64                           Bool32
	ShaderInt64                             Bool32
	ShaderInt16                             Bool32
	ShaderResourceResidency                 Bool32
	ShaderResourceMinLod                    Bool32
	SparseBinding                           Bool32
	SparseResidencyBuffer                   Bool32
	SparseResidencyImage2D                  Bool32
	SparseResidencyImage3D                  Bool32
	SparseResidency2Samples                 Bool32
	SparseResidency4Samples                 Bool32
	SparseResidency8Samples                 Bool32
	SparseResidency16Samples                Bool32
	SparseResidencyAliased                  Bool32
	VariableMultisampleRate                 Bool32
	InheritedQueries                        Bool32
}

PhysicalDeviceFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures.html

type PhysicalDeviceFeatures2

type PhysicalDeviceFeatures2 struct {
	SType    StructureType
	PNext    unsafe.Pointer
	Features PhysicalDeviceFeatures
}

PhysicalDeviceFeatures2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFeatures2.html

type PhysicalDeviceFragmentShaderBarycentricFeaturesNV

type PhysicalDeviceFragmentShaderBarycentricFeaturesNV struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	FragmentShaderBarycentric Bool32
}

PhysicalDeviceFragmentShaderBarycentricFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV.html

type PhysicalDeviceGroupProperties

type PhysicalDeviceGroupProperties struct {
	SType               StructureType
	PNext               unsafe.Pointer
	PhysicalDeviceCount uint32
	PhysicalDevices     [32]PhysicalDevice
	SubsetAllocation    Bool32
}

PhysicalDeviceGroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceGroupProperties.html

type PhysicalDeviceIDProperties

type PhysicalDeviceIDProperties struct {
	SType           StructureType
	PNext           unsafe.Pointer
	DeviceUUID      [16]byte
	DriverUUID      [16]byte
	DeviceLUID      [8]byte
	DeviceNodeMask  uint32
	DeviceLUIDValid Bool32
}

PhysicalDeviceIDProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceIDProperties.html

type PhysicalDeviceImageDrmFormatModifierInfo

type PhysicalDeviceImageDrmFormatModifierInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	DrmFormatModifier     uint64
	SharingMode           SharingMode
	QueueFamilyIndexCount uint32
	PQueueFamilyIndices   *uint32
}

PhysicalDeviceImageDrmFormatModifierInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageDrmFormatModifierInfoEXT.html

type PhysicalDeviceImageFormatInfo2

type PhysicalDeviceImageFormatInfo2 struct {
	SType  StructureType
	PNext  unsafe.Pointer
	Format Format
	Type   ImageType
	Tiling ImageTiling
	Usage  ImageUsageFlags
	Flags  ImageCreateFlags
}

PhysicalDeviceImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceImageFormatInfo2.html

type PhysicalDeviceInlineUniformBlockFeatures

type PhysicalDeviceInlineUniformBlockFeatures struct {
	SType                                              StructureType
	PNext                                              unsafe.Pointer
	InlineUniformBlock                                 Bool32
	DescriptorBindingInlineUniformBlockUpdateAfterBind Bool32
}

PhysicalDeviceInlineUniformBlockFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockFeaturesEXT.html

type PhysicalDeviceInlineUniformBlockProperties

type PhysicalDeviceInlineUniformBlockProperties struct {
	SType                                                   StructureType
	PNext                                                   unsafe.Pointer
	MaxInlineUniformBlockSize                               uint32
	MaxPerStageDescriptorInlineUniformBlocks                uint32
	MaxPerStageDescriptorUpdateAfterBindInlineUniformBlocks uint32
	MaxDescriptorSetInlineUniformBlocks                     uint32
	MaxDescriptorSetUpdateAfterBindInlineUniformBlocks      uint32
}

PhysicalDeviceInlineUniformBlockProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceInlineUniformBlockPropertiesEXT.html

type PhysicalDeviceLimits

type PhysicalDeviceLimits struct {
	MaxImageDimension1D                             uint32
	MaxImageDimension2D                             uint32
	MaxImageDimension3D                             uint32
	MaxImageDimensionCube                           uint32
	MaxImageArrayLayers                             uint32
	MaxTexelBufferElements                          uint32
	MaxUniformBufferRange                           uint32
	MaxStorageBufferRange                           uint32
	MaxPushConstantsSize                            uint32
	MaxMemoryAllocationCount                        uint32
	MaxSamplerAllocationCount                       uint32
	BufferImageGranularity                          DeviceSize
	SparseAddressSpaceSize                          DeviceSize
	MaxBoundDescriptorSets                          uint32
	MaxPerStageDescriptorSamplers                   uint32
	MaxPerStageDescriptorUniformBuffers             uint32
	MaxPerStageDescriptorStorageBuffers             uint32
	MaxPerStageDescriptorSampledImages              uint32
	MaxPerStageDescriptorStorageImages              uint32
	MaxPerStageDescriptorInputAttachments           uint32
	MaxPerStageResources                            uint32
	MaxDescriptorSetSamplers                        uint32
	MaxDescriptorSetUniformBuffers                  uint32
	MaxDescriptorSetUniformBuffersDynamic           uint32
	MaxDescriptorSetStorageBuffers                  uint32
	MaxDescriptorSetStorageBuffersDynamic           uint32
	MaxDescriptorSetSampledImages                   uint32
	MaxDescriptorSetStorageImages                   uint32
	MaxDescriptorSetInputAttachments                uint32
	MaxVertexInputAttributes                        uint32
	MaxVertexInputBindings                          uint32
	MaxVertexInputAttributeOffset                   uint32
	MaxVertexInputBindingStride                     uint32
	MaxVertexOutputComponents                       uint32
	MaxTessellationGenerationLevel                  uint32
	MaxTessellationPatchSize                        uint32
	MaxTessellationControlPerVertexInputComponents  uint32
	MaxTessellationControlPerVertexOutputComponents uint32
	MaxTessellationControlPerPatchOutputComponents  uint32
	MaxTessellationControlTotalOutputComponents     uint32
	MaxTessellationEvaluationInputComponents        uint32
	MaxTessellationEvaluationOutputComponents       uint32
	MaxGeometryShaderInvocations                    uint32
	MaxGeometryInputComponents                      uint32
	MaxGeometryOutputComponents                     uint32
	MaxGeometryOutputVertices                       uint32
	MaxGeometryTotalOutputComponents                uint32
	MaxFragmentInputComponents                      uint32
	MaxFragmentOutputAttachments                    uint32
	MaxFragmentDualSrcAttachments                   uint32
	MaxFragmentCombinedOutputResources              uint32
	MaxComputeSharedMemorySize                      uint32
	MaxComputeWorkGroupCount                        [3]uint32
	MaxComputeWorkGroupInvocations                  uint32
	MaxComputeWorkGroupSize                         [3]uint32
	SubPixelPrecisionBits                           uint32
	SubTexelPrecisionBits                           uint32
	MipmapPrecisionBits                             uint32
	MaxDrawIndexedIndexValue                        uint32
	MaxDrawIndirectCount                            uint32
	MaxSamplerLodBias                               float32
	MaxSamplerAnisotropy                            float32
	MaxViewports                                    uint32
	MaxViewportDimensions                           [2]uint32
	ViewportBoundsRange                             [2]float32
	ViewportSubPixelBits                            uint32
	MinMemoryMapAlignment                           uint
	MinTexelBufferOffsetAlignment                   DeviceSize
	MinUniformBufferOffsetAlignment                 DeviceSize
	MinStorageBufferOffsetAlignment                 DeviceSize
	MinTexelOffset                                  int32
	MaxTexelOffset                                  uint32
	MinTexelGatherOffset                            int32
	MaxTexelGatherOffset                            uint32
	MinInterpolationOffset                          float32
	MaxInterpolationOffset                          float32
	SubPixelInterpolationOffsetBits                 uint32
	MaxFramebufferWidth                             uint32
	MaxFramebufferHeight                            uint32
	MaxFramebufferLayers                            uint32
	FramebufferColorSampleCounts                    SampleCountFlags
	FramebufferDepthSampleCounts                    SampleCountFlags
	FramebufferStencilSampleCounts                  SampleCountFlags
	FramebufferNoAttachmentsSampleCounts            SampleCountFlags
	MaxColorAttachments                             uint32
	SampledImageColorSampleCounts                   SampleCountFlags
	SampledImageIntegerSampleCounts                 SampleCountFlags
	SampledImageDepthSampleCounts                   SampleCountFlags
	SampledImageStencilSampleCounts                 SampleCountFlags
	StorageImageSampleCounts                        SampleCountFlags
	MaxSampleMaskWords                              uint32
	TimestampComputeAndGraphics                     Bool32
	TimestampPeriod                                 float32
	MaxClipDistances                                uint32
	MaxCullDistances                                uint32
	MaxCombinedClipAndCullDistances                 uint32
	DiscreteQueuePriorities                         uint32
	PointSizeRange                                  [2]float32
	LineWidthRange                                  [2]float32
	PointSizeGranularity                            float32
	LineWidthGranularity                            float32
	StrictLines                                     Bool32
	StandardSampleLocations                         Bool32
	OptimalBufferCopyOffsetAlignment                DeviceSize
	OptimalBufferCopyRowPitchAlignment              DeviceSize
	NonCoherentAtomSize                             DeviceSize
}

PhysicalDeviceLimits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceLimits.html

type PhysicalDeviceMaintenance3Properties

type PhysicalDeviceMaintenance3Properties struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	MaxPerSetDescriptors    uint32
	MaxMemoryAllocationSize DeviceSize
}

PhysicalDeviceMaintenance3Properties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMaintenance3Properties.html

type PhysicalDeviceMemoryProperties

type PhysicalDeviceMemoryProperties struct {
	MemoryTypeCount uint32
	MemoryTypes     [32]MemoryType
	MemoryHeapCount uint32
	MemoryHeaps     [16]MemoryHeap
}

PhysicalDeviceMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties.html

type PhysicalDeviceMemoryProperties2

type PhysicalDeviceMemoryProperties2 struct {
	SType            StructureType
	PNext            unsafe.Pointer
	MemoryProperties PhysicalDeviceMemoryProperties
}

PhysicalDeviceMemoryProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMemoryProperties2.html

type PhysicalDeviceMeshShaderFeaturesNV

type PhysicalDeviceMeshShaderFeaturesNV struct {
	SType      StructureType
	PNext      unsafe.Pointer
	TaskShader Bool32
	MeshShader Bool32
}

PhysicalDeviceMeshShaderFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderFeaturesNV.html

type PhysicalDeviceMeshShaderPropertiesNV

type PhysicalDeviceMeshShaderPropertiesNV struct {
	SType                             StructureType
	PNext                             unsafe.Pointer
	MaxDrawMeshTasksCount             uint32
	MaxTaskWorkGroupInvocations       uint32
	MaxTaskWorkGroupSize              [3]uint32
	MaxTaskTotalMemorySize            uint32
	MaxTaskOutputCount                uint32
	MaxMeshWorkGroupInvocations       uint32
	MaxMeshWorkGroupSize              [3]uint32
	MaxMeshTotalMemorySize            uint32
	MaxMeshOutputVertices             uint32
	MaxMeshOutputPrimitives           uint32
	MaxMeshMultiviewViewCount         uint32
	MeshOutputPerVertexGranularity    uint32
	MeshOutputPerPrimitiveGranularity uint32
}

PhysicalDeviceMeshShaderPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMeshShaderPropertiesNV.html

type PhysicalDeviceMultiviewFeatures

type PhysicalDeviceMultiviewFeatures struct {
	SType                       StructureType
	PNext                       unsafe.Pointer
	Multiview                   Bool32
	MultiviewGeometryShader     Bool32
	MultiviewTessellationShader Bool32
}

PhysicalDeviceMultiviewFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewFeatures.html

type PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX

type PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	PerViewPositionAllComponents Bool32
}

PhysicalDeviceMultiviewPerViewAttributesPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX

type PhysicalDeviceMultiviewProperties

type PhysicalDeviceMultiviewProperties struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	MaxMultiviewViewCount     uint32
	MaxMultiviewInstanceIndex uint32
}

PhysicalDeviceMultiviewProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceMultiviewProperties.html

type PhysicalDevicePCIBusInfoProperties

type PhysicalDevicePCIBusInfoProperties struct {
	SType       StructureType
	PNext       unsafe.Pointer
	PciDomain   uint16
	PciBus      byte
	PciDevice   byte
	PciFunction byte
}

PhysicalDevicePCIBusInfoProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePCIBusInfoPropertiesEXT.html

type PhysicalDevicePointClippingProperties

type PhysicalDevicePointClippingProperties struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	PointClippingBehavior PointClippingBehavior
}

PhysicalDevicePointClippingProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDevicePointClippingProperties.html

type PhysicalDeviceProperties

type PhysicalDeviceProperties struct {
	ApiVersion        uint32
	DriverVersion     uint32
	VendorID          uint32
	DeviceID          uint32
	DeviceType        PhysicalDeviceType
	DeviceName        [256]byte
	PipelineCacheUUID [16]byte
	Limits            PhysicalDeviceLimits
	SparseProperties  PhysicalDeviceSparseProperties
}

PhysicalDeviceProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties.html

type PhysicalDeviceProperties2

type PhysicalDeviceProperties2 struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Properties PhysicalDeviceProperties
}

PhysicalDeviceProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProperties2.html

type PhysicalDeviceProtectedMemoryFeatures

type PhysicalDeviceProtectedMemoryFeatures struct {
	SType           StructureType
	PNext           unsafe.Pointer
	ProtectedMemory Bool32
}

PhysicalDeviceProtectedMemoryFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryFeatures.html

type PhysicalDeviceProtectedMemoryProperties

type PhysicalDeviceProtectedMemoryProperties struct {
	SType            StructureType
	PNext            unsafe.Pointer
	ProtectedNoFault Bool32
}

PhysicalDeviceProtectedMemoryProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceProtectedMemoryProperties.html

type PhysicalDevicePushDescriptorProperties

type PhysicalDevicePushDescriptorProperties struct {
	SType              StructureType
	PNext              unsafe.Pointer
	MaxPushDescriptors uint32
}

PhysicalDevicePushDescriptorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDevicePushDescriptorPropertiesKHR

type PhysicalDeviceRaytracingPropertiesNVX

type PhysicalDeviceRaytracingPropertiesNVX struct {
	SType             StructureType
	PNext             unsafe.Pointer
	ShaderHeaderSize  uint32
	MaxRecursionDepth uint32
	MaxGeometryCount  uint32
}

PhysicalDeviceRaytracingPropertiesNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceRaytracingPropertiesNVX

type PhysicalDeviceRepresentativeFragmentTestFeaturesNV

type PhysicalDeviceRepresentativeFragmentTestFeaturesNV struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	RepresentativeFragmentTest Bool32
}

PhysicalDeviceRepresentativeFragmentTestFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.html

type PhysicalDeviceSampleLocationsProperties

type PhysicalDeviceSampleLocationsProperties struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	SampleLocationSampleCounts    SampleCountFlags
	MaxSampleLocationGridSize     Extent2D
	SampleLocationCoordinateRange [2]float32
	SampleLocationSubPixelBits    uint32
	VariableSampleLocations       Bool32
}

PhysicalDeviceSampleLocationsProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSampleLocationsPropertiesEXT.html

type PhysicalDeviceSamplerFilterMinmaxProperties

type PhysicalDeviceSamplerFilterMinmaxProperties struct {
	SType                              StructureType
	PNext                              unsafe.Pointer
	FilterMinmaxSingleComponentFormats Bool32
	FilterMinmaxImageComponentMapping  Bool32
}

PhysicalDeviceSamplerFilterMinmaxProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT.html

type PhysicalDeviceSamplerYcbcrConversionFeatures

type PhysicalDeviceSamplerYcbcrConversionFeatures struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	SamplerYcbcrConversion Bool32
}

PhysicalDeviceSamplerYcbcrConversionFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSamplerYcbcrConversionFeatures.html

type PhysicalDeviceShaderAtomicInt64Features

type PhysicalDeviceShaderAtomicInt64Features struct {
	SType                    StructureType
	PNext                    unsafe.Pointer
	ShaderBufferInt64Atomics Bool32
	ShaderSharedInt64Atomics Bool32
}

PhysicalDeviceShaderAtomicInt64Features as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderAtomicInt64FeaturesKHR

type PhysicalDeviceShaderCorePropertiesAMD

type PhysicalDeviceShaderCorePropertiesAMD struct {
	SType                      StructureType
	PNext                      unsafe.Pointer
	ShaderEngineCount          uint32
	ShaderArraysPerEngineCount uint32
	ComputeUnitsPerShaderArray uint32
	SimdPerComputeUnit         uint32
	WavefrontsPerSimd          uint32
	WavefrontSize              uint32
	SgprsPerSimd               uint32
	MinSgprAllocation          uint32
	MaxSgprAllocation          uint32
	SgprAllocationGranularity  uint32
	VgprsPerSimd               uint32
	MinVgprAllocation          uint32
	MaxVgprAllocation          uint32
	VgprAllocationGranularity  uint32
}

PhysicalDeviceShaderCorePropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPhysicalDeviceShaderCorePropertiesAMD

type PhysicalDeviceShaderDrawParameterFeatures

type PhysicalDeviceShaderDrawParameterFeatures struct {
	SType                StructureType
	PNext                unsafe.Pointer
	ShaderDrawParameters Bool32
}

PhysicalDeviceShaderDrawParameterFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderDrawParameterFeatures.html

type PhysicalDeviceShaderImageFootprintFeaturesNV

type PhysicalDeviceShaderImageFootprintFeaturesNV struct {
	SType          StructureType
	PNext          unsafe.Pointer
	ImageFootprint Bool32
}

PhysicalDeviceShaderImageFootprintFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShaderImageFootprintFeaturesNV.html

type PhysicalDeviceShadingRateImageFeaturesNV

type PhysicalDeviceShadingRateImageFeaturesNV struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	ShadingRateImage             Bool32
	ShadingRateCoarseSampleOrder Bool32
}

PhysicalDeviceShadingRateImageFeaturesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImageFeaturesNV.html

type PhysicalDeviceShadingRateImagePropertiesNV

type PhysicalDeviceShadingRateImagePropertiesNV struct {
	SType                       StructureType
	PNext                       unsafe.Pointer
	ShadingRateTexelSize        Extent2D
	ShadingRatePaletteSize      uint32
	ShadingRateMaxCoarseSamples uint32
}

PhysicalDeviceShadingRateImagePropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceShadingRateImagePropertiesNV.html

type PhysicalDeviceSparseImageFormatInfo2

type PhysicalDeviceSparseImageFormatInfo2 struct {
	SType   StructureType
	PNext   unsafe.Pointer
	Format  Format
	Type    ImageType
	Samples SampleCountFlagBits
	Usage   ImageUsageFlags
	Tiling  ImageTiling
}

PhysicalDeviceSparseImageFormatInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseImageFormatInfo2.html

type PhysicalDeviceSparseProperties

type PhysicalDeviceSparseProperties struct {
	ResidencyStandard2DBlockShape            Bool32
	ResidencyStandard2DMultisampleBlockShape Bool32
	ResidencyStandard3DBlockShape            Bool32
	ResidencyAlignedMipSize                  Bool32
	ResidencyNonResidentStrict               Bool32
}

PhysicalDeviceSparseProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSparseProperties.html

type PhysicalDeviceSubgroupProperties

type PhysicalDeviceSubgroupProperties struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	SubgroupSize              uint32
	SupportedStages           ShaderStageFlags
	SupportedOperations       SubgroupFeatureFlags
	QuadOperationsInAllStages Bool32
}

PhysicalDeviceSubgroupProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceSubgroupProperties.html

type PhysicalDeviceSurfaceInfo2

type PhysicalDeviceSurfaceInfo2 struct {
	SType   StructureType
	PNext   unsafe.Pointer
	Surface Surface
}

PhysicalDeviceSurfaceInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceSurfaceInfo2KHR

type PhysicalDeviceTransformFeedbackFeatures

type PhysicalDeviceTransformFeedbackFeatures struct {
	SType             StructureType
	PNext             unsafe.Pointer
	TransformFeedback Bool32
	GeometryStreams   Bool32
}

PhysicalDeviceTransformFeedbackFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackFeaturesEXT.html

type PhysicalDeviceTransformFeedbackProperties

type PhysicalDeviceTransformFeedbackProperties struct {
	SType                                      StructureType
	PNext                                      unsafe.Pointer
	MaxTransformFeedbackStreams                uint32
	MaxTransformFeedbackBuffers                uint32
	MaxTransformFeedbackBufferSize             DeviceSize
	MaxTransformFeedbackStreamDataSize         uint32
	MaxTransformFeedbackBufferDataSize         uint32
	MaxTransformFeedbackBufferDataStride       uint32
	TransformFeedbackQueries                   Bool32
	TransformFeedbackStreamsLinesTriangles     Bool32
	TransformFeedbackRasterizationStreamSelect Bool32
	TransformFeedbackDraw                      Bool32
}

PhysicalDeviceTransformFeedbackProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceTransformFeedbackPropertiesEXT.html

type PhysicalDeviceType

type PhysicalDeviceType int32

PhysicalDeviceType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceType.html

const (
	PhysicalDeviceTypeOther         PhysicalDeviceType = iota
	PhysicalDeviceTypeIntegratedGpu PhysicalDeviceType = 1
	PhysicalDeviceTypeDiscreteGpu   PhysicalDeviceType = 2
	PhysicalDeviceTypeVirtualGpu    PhysicalDeviceType = 3
	PhysicalDeviceTypeCpu           PhysicalDeviceType = 4
	PhysicalDeviceTypeBeginRange    PhysicalDeviceType = 0
	PhysicalDeviceTypeEndRange      PhysicalDeviceType = 4
	PhysicalDeviceTypeRangeSize     PhysicalDeviceType = 5
	PhysicalDeviceTypeMaxEnum       PhysicalDeviceType = 2147483647
)

PhysicalDeviceType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceType.html

type PhysicalDeviceVariablePointerFeatures

type PhysicalDeviceVariablePointerFeatures struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	VariablePointersStorageBuffer Bool32
	VariablePointers              Bool32
}

PhysicalDeviceVariablePointerFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVariablePointerFeatures.html

type PhysicalDeviceVertexAttributeDivisorFeatures

type PhysicalDeviceVertexAttributeDivisorFeatures struct {
	SType                                  StructureType
	PNext                                  unsafe.Pointer
	VertexAttributeInstanceRateDivisor     Bool32
	VertexAttributeInstanceRateZeroDivisor Bool32
}

PhysicalDeviceVertexAttributeDivisorFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT.html

type PhysicalDeviceVertexAttributeDivisorProperties

type PhysicalDeviceVertexAttributeDivisorProperties struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	MaxVertexAttribDivisor uint32
}

PhysicalDeviceVertexAttributeDivisorProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.html

type PhysicalDeviceVulkanMemoryModelFeatures

type PhysicalDeviceVulkanMemoryModelFeatures struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	VulkanMemoryModel            Bool32
	VulkanMemoryModelDeviceScope Bool32
}

PhysicalDeviceVulkanMemoryModelFeatures as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPhysicalDeviceVulkanMemoryModelFeaturesKHR

type PipelineBindPoint

type PipelineBindPoint int32

PipelineBindPoint as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineBindPoint.html

const (
	PipelineBindPointGraphics      PipelineBindPoint = iota
	PipelineBindPointCompute       PipelineBindPoint = 1
	PipelineBindPointRaytracingNvx PipelineBindPoint = 1000165000
	PipelineBindPointBeginRange    PipelineBindPoint = 0
	PipelineBindPointEndRange      PipelineBindPoint = 1
	PipelineBindPointRangeSize     PipelineBindPoint = 2
	PipelineBindPointMaxEnum       PipelineBindPoint = 2147483647
)

PipelineBindPoint enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineBindPoint.html

type PipelineCacheCreateFlags

type PipelineCacheCreateFlags uint32

PipelineCacheCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateFlags.html

type PipelineCacheCreateInfo

type PipelineCacheCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           PipelineCacheCreateFlags
	InitialDataSize uint
	PInitialData    unsafe.Pointer
}

PipelineCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheCreateInfo.html

type PipelineCacheHeaderVersion

type PipelineCacheHeaderVersion int32

PipelineCacheHeaderVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html

const (
	PipelineCacheHeaderVersionOne        PipelineCacheHeaderVersion = 1
	PipelineCacheHeaderVersionBeginRange PipelineCacheHeaderVersion = 1
	PipelineCacheHeaderVersionEndRange   PipelineCacheHeaderVersion = 1
	PipelineCacheHeaderVersionRangeSize  PipelineCacheHeaderVersion = 1
	PipelineCacheHeaderVersionMaxEnum    PipelineCacheHeaderVersion = 2147483647
)

PipelineCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCacheHeaderVersion.html

type PipelineColorBlendAdvancedStateCreateInfo

type PipelineColorBlendAdvancedStateCreateInfo struct {
	SType            StructureType
	PNext            unsafe.Pointer
	SrcPremultiplied Bool32
	DstPremultiplied Bool32
	BlendOverlap     BlendOverlap
}

PipelineColorBlendAdvancedStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAdvancedStateCreateInfoEXT.html

type PipelineColorBlendAttachmentState

type PipelineColorBlendAttachmentState struct {
	BlendEnable         Bool32
	SrcColorBlendFactor BlendFactor
	DstColorBlendFactor BlendFactor
	ColorBlendOp        BlendOp
	SrcAlphaBlendFactor BlendFactor
	DstAlphaBlendFactor BlendFactor
	AlphaBlendOp        BlendOp
	ColorWriteMask      ColorComponentFlags
}

PipelineColorBlendAttachmentState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendAttachmentState.html

type PipelineColorBlendStateCreateFlags

type PipelineColorBlendStateCreateFlags uint32

PipelineColorBlendStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateFlags.html

type PipelineColorBlendStateCreateInfo

type PipelineColorBlendStateCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           PipelineColorBlendStateCreateFlags
	LogicOpEnable   Bool32
	LogicOp         LogicOp
	AttachmentCount uint32
	PAttachments    *PipelineColorBlendAttachmentState
	BlendConstants  [4]float32
}

PipelineColorBlendStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineColorBlendStateCreateInfo.html

type PipelineCoverageModulationStateCreateFlagsNV

type PipelineCoverageModulationStateCreateFlagsNV uint32

PipelineCoverageModulationStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateFlagsNV.html

type PipelineCoverageModulationStateCreateInfoNV

type PipelineCoverageModulationStateCreateInfoNV struct {
	SType                         StructureType
	PNext                         unsafe.Pointer
	Flags                         PipelineCoverageModulationStateCreateFlagsNV
	CoverageModulationMode        CoverageModulationModeNV
	CoverageModulationTableEnable Bool32
	CoverageModulationTableCount  uint32
	PCoverageModulationTable      *float32
}

PipelineCoverageModulationStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageModulationStateCreateInfoNV.html

type PipelineCoverageToColorStateCreateFlagsNV

type PipelineCoverageToColorStateCreateFlagsNV uint32

PipelineCoverageToColorStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateFlagsNV.html

type PipelineCoverageToColorStateCreateInfoNV

type PipelineCoverageToColorStateCreateInfoNV struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	Flags                   PipelineCoverageToColorStateCreateFlagsNV
	CoverageToColorEnable   Bool32
	CoverageToColorLocation uint32
}

PipelineCoverageToColorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCoverageToColorStateCreateInfoNV.html

type PipelineCreateFlagBits

type PipelineCreateFlagBits int32

PipelineCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlagBits.html

const (
	PipelineCreateDisableOptimizationBit      PipelineCreateFlagBits = 1
	PipelineCreateAllowDerivativesBit         PipelineCreateFlagBits = 2
	PipelineCreateDerivativeBit               PipelineCreateFlagBits = 4
	PipelineCreateViewIndexFromDeviceIndexBit PipelineCreateFlagBits = 8
	PipelineCreateDispatchBase                PipelineCreateFlagBits = 16
	PipelineCreateDeferCompileBitNvx          PipelineCreateFlagBits = 32
	PipelineCreateFlagBitsMaxEnum             PipelineCreateFlagBits = 2147483647
)

PipelineCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlagBits.html

type PipelineCreateFlags

type PipelineCreateFlags uint32

PipelineCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineCreateFlags.html

type PipelineDepthStencilStateCreateFlags

type PipelineDepthStencilStateCreateFlags uint32

PipelineDepthStencilStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateFlags.html

type PipelineDepthStencilStateCreateInfo

type PipelineDepthStencilStateCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 PipelineDepthStencilStateCreateFlags
	DepthTestEnable       Bool32
	DepthWriteEnable      Bool32
	DepthCompareOp        CompareOp
	DepthBoundsTestEnable Bool32
	StencilTestEnable     Bool32
	Front                 StencilOpState
	Back                  StencilOpState
	MinDepthBounds        float32
	MaxDepthBounds        float32
}

PipelineDepthStencilStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDepthStencilStateCreateInfo.html

type PipelineDiscardRectangleStateCreateFlags

type PipelineDiscardRectangleStateCreateFlags uint32

PipelineDiscardRectangleStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateFlagsEXT.html

type PipelineDiscardRectangleStateCreateInfo

type PipelineDiscardRectangleStateCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 PipelineDiscardRectangleStateCreateFlags
	DiscardRectangleMode  DiscardRectangleMode
	DiscardRectangleCount uint32
	PDiscardRectangles    *Rect2D
}

PipelineDiscardRectangleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDiscardRectangleStateCreateInfoEXT.html

type PipelineDynamicStateCreateFlags

type PipelineDynamicStateCreateFlags uint32

PipelineDynamicStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDynamicStateCreateFlags.html

type PipelineDynamicStateCreateInfo

type PipelineDynamicStateCreateInfo struct {
	SType             StructureType
	PNext             unsafe.Pointer
	Flags             PipelineDynamicStateCreateFlags
	DynamicStateCount uint32
	PDynamicStates    *DynamicState
}

PipelineDynamicStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineDynamicStateCreateInfo.html

type PipelineInputAssemblyStateCreateFlags

type PipelineInputAssemblyStateCreateFlags uint32

PipelineInputAssemblyStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineInputAssemblyStateCreateFlags.html

type PipelineInputAssemblyStateCreateInfo

type PipelineInputAssemblyStateCreateInfo struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	Flags                  PipelineInputAssemblyStateCreateFlags
	Topology               PrimitiveTopology
	PrimitiveRestartEnable Bool32
}

PipelineInputAssemblyStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineInputAssemblyStateCreateInfo.html

type PipelineLayoutCreateFlags

type PipelineLayoutCreateFlags uint32

PipelineLayoutCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateFlags.html

type PipelineLayoutCreateInfo

type PipelineLayoutCreateInfo struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	Flags                  PipelineLayoutCreateFlags
	SetLayoutCount         uint32
	PSetLayouts            *DescriptorSetLayout
	PushConstantRangeCount uint32
	PPushConstantRanges    *PushConstantRange
}

PipelineLayoutCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineLayoutCreateInfo.html

type PipelineMultisampleStateCreateFlags

type PipelineMultisampleStateCreateFlags uint32

PipelineMultisampleStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineMultisampleStateCreateFlags.html

type PipelineMultisampleStateCreateInfo

type PipelineMultisampleStateCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 PipelineMultisampleStateCreateFlags
	RasterizationSamples  SampleCountFlagBits
	SampleShadingEnable   Bool32
	MinSampleShading      float32
	PSampleMask           *SampleMask
	AlphaToCoverageEnable Bool32
	AlphaToOneEnable      Bool32
}

PipelineMultisampleStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineMultisampleStateCreateInfo.html

type PipelineRasterizationConservativeStateCreateFlags

type PipelineRasterizationConservativeStateCreateFlags uint32

PipelineRasterizationConservativeStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateFlagsEXT.html

type PipelineRasterizationConservativeStateCreateInfo

type PipelineRasterizationConservativeStateCreateInfo struct {
	SType                            StructureType
	PNext                            unsafe.Pointer
	Flags                            PipelineRasterizationConservativeStateCreateFlags
	ConservativeRasterizationMode    ConservativeRasterizationMode
	ExtraPrimitiveOverestimationSize float32
}

PipelineRasterizationConservativeStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationConservativeStateCreateInfoEXT.html

type PipelineRasterizationStateCreateFlags

type PipelineRasterizationStateCreateFlags uint32

PipelineRasterizationStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateCreateFlags.html

type PipelineRasterizationStateCreateInfo

type PipelineRasterizationStateCreateInfo struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	Flags                   PipelineRasterizationStateCreateFlags
	DepthClampEnable        Bool32
	RasterizerDiscardEnable Bool32
	PolygonMode             PolygonMode
	CullMode                CullModeFlags
	FrontFace               FrontFace
	DepthBiasEnable         Bool32
	DepthBiasConstantFactor float32
	DepthBiasClamp          float32
	DepthBiasSlopeFactor    float32
	LineWidth               float32
}

PipelineRasterizationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateCreateInfo.html

type PipelineRasterizationStateRasterizationOrderAMD

type PipelineRasterizationStateRasterizationOrderAMD struct {
	SType              StructureType
	PNext              unsafe.Pointer
	RasterizationOrder RasterizationOrderAMD
}

PipelineRasterizationStateRasterizationOrderAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkPipelineRasterizationStateRasterizationOrderAMD

type PipelineRasterizationStateStreamCreateFlags

type PipelineRasterizationStateStreamCreateFlags uint32

PipelineRasterizationStateStreamCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateFlagsEXT.html

type PipelineRasterizationStateStreamCreateInfo

type PipelineRasterizationStateStreamCreateInfo struct {
	SType               StructureType
	PNext               unsafe.Pointer
	Flags               PipelineRasterizationStateStreamCreateFlags
	RasterizationStream uint32
}

PipelineRasterizationStateStreamCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRasterizationStateStreamCreateInfoEXT.html

type PipelineRepresentativeFragmentTestStateCreateInfoNV

type PipelineRepresentativeFragmentTestStateCreateInfoNV struct {
	SType                            StructureType
	PNext                            unsafe.Pointer
	RepresentativeFragmentTestEnable Bool32
}

PipelineRepresentativeFragmentTestStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineRepresentativeFragmentTestStateCreateInfoNV.html

type PipelineSampleLocationsStateCreateInfo

type PipelineSampleLocationsStateCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	SampleLocationsEnable Bool32
	SampleLocationsInfo   SampleLocationsInfo
}

PipelineSampleLocationsStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineSampleLocationsStateCreateInfoEXT.html

type PipelineShaderStageCreateFlags

type PipelineShaderStageCreateFlags uint32

PipelineShaderStageCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateFlags.html

type PipelineShaderStageCreateInfo

type PipelineShaderStageCreateInfo struct {
	SType               StructureType
	PNext               unsafe.Pointer
	Flags               PipelineShaderStageCreateFlags
	Stage               ShaderStageFlagBits
	Module              ShaderModule
	PName               *C.char
	PSpecializationInfo *SpecializationInfo
}

PipelineShaderStageCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineShaderStageCreateInfo.html

type PipelineStageFlagBits

type PipelineStageFlagBits int32

PipelineStageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineStageFlagBits.html

const (
	PipelineStageTopOfPipeBit                    PipelineStageFlagBits = 1
	PipelineStageDrawIndirectBit                 PipelineStageFlagBits = 2
	PipelineStageVertexInputBit                  PipelineStageFlagBits = 4
	PipelineStageVertexShaderBit                 PipelineStageFlagBits = 8
	PipelineStageTessellationControlShaderBit    PipelineStageFlagBits = 16
	PipelineStageTessellationEvaluationShaderBit PipelineStageFlagBits = 32
	PipelineStageGeometryShaderBit               PipelineStageFlagBits = 64
	PipelineStageFragmentShaderBit               PipelineStageFlagBits = 128
	PipelineStageEarlyFragmentTestsBit           PipelineStageFlagBits = 256
	PipelineStageLateFragmentTestsBit            PipelineStageFlagBits = 512
	PipelineStageColorAttachmentOutputBit        PipelineStageFlagBits = 1024
	PipelineStageComputeShaderBit                PipelineStageFlagBits = 2048
	PipelineStageTransferBit                     PipelineStageFlagBits = 4096
	PipelineStageBottomOfPipeBit                 PipelineStageFlagBits = 8192
	PipelineStageHostBit                         PipelineStageFlagBits = 16384
	PipelineStageAllGraphicsBit                  PipelineStageFlagBits = 32768
	PipelineStageAllCommandsBit                  PipelineStageFlagBits = 65536
	PipelineStageTransformFeedbackBit            PipelineStageFlagBits = 16777216
	PipelineStageConditionalRenderingBit         PipelineStageFlagBits = 262144
	PipelineStageCommandProcessBitNvx            PipelineStageFlagBits = 131072
	PipelineStageShadingRateImageBitNv           PipelineStageFlagBits = 4194304
	PipelineStageRaytracingBitNvx                PipelineStageFlagBits = 2097152
	PipelineStageTaskShaderBitNv                 PipelineStageFlagBits = 524288
	PipelineStageMeshShaderBitNv                 PipelineStageFlagBits = 1048576
	PipelineStageFlagBitsMaxEnum                 PipelineStageFlagBits = 2147483647
)

PipelineStageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineStageFlagBits.html

type PipelineTessellationDomainOriginStateCreateInfo

type PipelineTessellationDomainOriginStateCreateInfo struct {
	SType        StructureType
	PNext        unsafe.Pointer
	DomainOrigin TessellationDomainOrigin
}

PipelineTessellationDomainOriginStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationDomainOriginStateCreateInfo.html

type PipelineTessellationStateCreateFlags

type PipelineTessellationStateCreateFlags uint32

PipelineTessellationStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationStateCreateFlags.html

type PipelineTessellationStateCreateInfo

type PipelineTessellationStateCreateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	Flags              PipelineTessellationStateCreateFlags
	PatchControlPoints uint32
}

PipelineTessellationStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineTessellationStateCreateInfo.html

type PipelineVertexInputDivisorStateCreateInfo

type PipelineVertexInputDivisorStateCreateInfo struct {
	SType                     StructureType
	PNext                     unsafe.Pointer
	VertexBindingDivisorCount uint32
	PVertexBindingDivisors    *VertexInputBindingDivisorDescription
}

PipelineVertexInputDivisorStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputDivisorStateCreateInfoEXT.html

type PipelineVertexInputStateCreateFlags

type PipelineVertexInputStateCreateFlags uint32

PipelineVertexInputStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputStateCreateFlags.html

type PipelineVertexInputStateCreateInfo

type PipelineVertexInputStateCreateInfo struct {
	SType                           StructureType
	PNext                           unsafe.Pointer
	Flags                           PipelineVertexInputStateCreateFlags
	VertexBindingDescriptionCount   uint32
	PVertexBindingDescriptions      *VertexInputBindingDescription
	VertexAttributeDescriptionCount uint32
	PVertexAttributeDescriptions    *VertexInputAttributeDescription
}

PipelineVertexInputStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineVertexInputStateCreateInfo.html

type PipelineViewportCoarseSampleOrderStateCreateInfoNV

type PipelineViewportCoarseSampleOrderStateCreateInfoNV struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	SampleOrderType        CoarseSampleOrderTypeNV
	CustomSampleOrderCount uint32
	PCustomSampleOrders    *CoarseSampleOrderCustomNV
}

PipelineViewportCoarseSampleOrderStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.html

type PipelineViewportExclusiveScissorStateCreateInfoNV

type PipelineViewportExclusiveScissorStateCreateInfoNV struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	ExclusiveScissorCount uint32
	PExclusiveScissors    *Rect2D
}

PipelineViewportExclusiveScissorStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportExclusiveScissorStateCreateInfoNV.html

type PipelineViewportShadingRateImageStateCreateInfoNV

type PipelineViewportShadingRateImageStateCreateInfoNV struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	ShadingRateImageEnable Bool32
	ViewportCount          uint32
	PShadingRatePalettes   *ShadingRatePaletteNV
}

PipelineViewportShadingRateImageStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportShadingRateImageStateCreateInfoNV.html

type PipelineViewportStateCreateFlags

type PipelineViewportStateCreateFlags uint32

PipelineViewportStateCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportStateCreateFlags.html

type PipelineViewportStateCreateInfo

type PipelineViewportStateCreateInfo struct {
	SType         StructureType
	PNext         unsafe.Pointer
	Flags         PipelineViewportStateCreateFlags
	ViewportCount uint32
	PViewports    *Viewport
	ScissorCount  uint32
	PScissors     *Rect2D
}

PipelineViewportStateCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportStateCreateInfo.html

type PipelineViewportSwizzleStateCreateFlagsNV

type PipelineViewportSwizzleStateCreateFlagsNV uint32

PipelineViewportSwizzleStateCreateFlagsNV type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateFlagsNV.html

type PipelineViewportSwizzleStateCreateInfoNV

type PipelineViewportSwizzleStateCreateInfoNV struct {
	SType             StructureType
	PNext             unsafe.Pointer
	Flags             PipelineViewportSwizzleStateCreateFlagsNV
	ViewportCount     uint32
	PViewportSwizzles *ViewportSwizzleNV
}

PipelineViewportSwizzleStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportSwizzleStateCreateInfoNV.html

type PipelineViewportWScalingStateCreateInfoNV

type PipelineViewportWScalingStateCreateInfoNV struct {
	SType                  StructureType
	PNext                  unsafe.Pointer
	ViewportWScalingEnable Bool32
	ViewportCount          uint32
	PViewportWScalings     *ViewportWScalingNV
}

PipelineViewportWScalingStateCreateInfoNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPipelineViewportWScalingStateCreateInfoNV.html

type PointClippingBehavior

type PointClippingBehavior int32

PointClippingBehavior as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPointClippingBehavior.html

const (
	PointClippingBehaviorAllClipPlanes      PointClippingBehavior = iota
	PointClippingBehaviorUserClipPlanesOnly PointClippingBehavior = 1
	PointClippingBehaviorBeginRange         PointClippingBehavior = 0
	PointClippingBehaviorEndRange           PointClippingBehavior = 1
	PointClippingBehaviorRangeSize          PointClippingBehavior = 2
	PointClippingBehaviorMaxEnum            PointClippingBehavior = 2147483647
)

PointClippingBehavior enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPointClippingBehavior.html

type PolygonMode

type PolygonMode int32

PolygonMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html

const (
	PolygonModeFill            PolygonMode = iota
	PolygonModeLine            PolygonMode = 1
	PolygonModePoint           PolygonMode = 2
	PolygonModeFillRectangleNv PolygonMode = 1000153000
	PolygonModeBeginRange      PolygonMode = 0
	PolygonModeEndRange        PolygonMode = 2
	PolygonModeRangeSize       PolygonMode = 3
	PolygonModeMaxEnum         PolygonMode = 2147483647
)

PolygonMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPolygonMode.html

type PresentInfo

type PresentInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	WaitSemaphoreCount uint32
	PWaitSemaphores    *Semaphore
	SwapchainCount     uint32
	PSwapchains        *Swapchain
	PImageIndices      *uint32
	PResults           *Result
}

PresentInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentInfoKHR

type PresentMode

type PresentMode int32

PresentMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR

const (
	PresentModeImmediate               PresentMode = iota
	PresentModeMailbox                 PresentMode = 1
	PresentModeFifo                    PresentMode = 2
	PresentModeFifoRelaxed             PresentMode = 3
	PresentModeSharedDemandRefresh     PresentMode = 1000111000
	PresentModeSharedContinuousRefresh PresentMode = 1000111001
	PresentModeBeginRange              PresentMode = 0
	PresentModeEndRange                PresentMode = 3
	PresentModeRangeSize               PresentMode = 4
	PresentModeMaxEnum                 PresentMode = 2147483647
)

PresentMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentModeKHR

type PresentRegion

type PresentRegion struct {
	RectangleCount uint32
	PRectangles    *RectLayer
}

PresentRegion as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionKHR

type PresentRegions

type PresentRegions struct {
	SType          StructureType
	PNext          unsafe.Pointer
	SwapchainCount uint32
	PRegions       *PresentRegion
}

PresentRegions as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkPresentRegionsKHR

type PresentTimeGOOGLE

type PresentTimeGOOGLE struct {
	PresentID          uint32
	DesiredPresentTime uint64
}

PresentTimeGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimeGOOGLE.html

type PresentTimesInfoGOOGLE

type PresentTimesInfoGOOGLE struct {
	SType          StructureType
	PNext          unsafe.Pointer
	SwapchainCount uint32
	PTimes         *PresentTimeGOOGLE
}

PresentTimesInfoGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPresentTimesInfoGOOGLE.html

type PrimitiveTopology

type PrimitiveTopology int32

PrimitiveTopology as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html

const (
	PrimitiveTopologyPointList                  PrimitiveTopology = iota
	PrimitiveTopologyLineList                   PrimitiveTopology = 1
	PrimitiveTopologyLineStrip                  PrimitiveTopology = 2
	PrimitiveTopologyTriangleList               PrimitiveTopology = 3
	PrimitiveTopologyTriangleStrip              PrimitiveTopology = 4
	PrimitiveTopologyTriangleFan                PrimitiveTopology = 5
	PrimitiveTopologyLineListWithAdjacency      PrimitiveTopology = 6
	PrimitiveTopologyLineStripWithAdjacency     PrimitiveTopology = 7
	PrimitiveTopologyTriangleListWithAdjacency  PrimitiveTopology = 8
	PrimitiveTopologyTriangleStripWithAdjacency PrimitiveTopology = 9
	PrimitiveTopologyPatchList                  PrimitiveTopology = 10
	PrimitiveTopologyBeginRange                 PrimitiveTopology = 0
	PrimitiveTopologyEndRange                   PrimitiveTopology = 10
	PrimitiveTopologyRangeSize                  PrimitiveTopology = 11
	PrimitiveTopologyMaxEnum                    PrimitiveTopology = 2147483647
)

PrimitiveTopology enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPrimitiveTopology.html

type ProtectedSubmitInfo

type ProtectedSubmitInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	ProtectedSubmit Bool32
}

ProtectedSubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkProtectedSubmitInfo.html

type PushConstantRange

type PushConstantRange struct {
	StageFlags ShaderStageFlags
	Offset     uint32
	Size       uint32
}

PushConstantRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkPushConstantRange.html

type QueryControlFlagBits

type QueryControlFlagBits int32

QueryControlFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryControlFlagBits.html

const (
	QueryControlPreciseBit      QueryControlFlagBits = 1
	QueryControlFlagBitsMaxEnum QueryControlFlagBits = 2147483647
)

QueryControlFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryControlFlagBits.html

type QueryPipelineStatisticFlagBits

type QueryPipelineStatisticFlagBits int32

QueryPipelineStatisticFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPipelineStatisticFlagBits.html

const (
	QueryPipelineStatisticInputAssemblyVerticesBit                   QueryPipelineStatisticFlagBits = 1
	QueryPipelineStatisticInputAssemblyPrimitivesBit                 QueryPipelineStatisticFlagBits = 2
	QueryPipelineStatisticVertexShaderInvocationsBit                 QueryPipelineStatisticFlagBits = 4
	QueryPipelineStatisticGeometryShaderInvocationsBit               QueryPipelineStatisticFlagBits = 8
	QueryPipelineStatisticGeometryShaderPrimitivesBit                QueryPipelineStatisticFlagBits = 16
	QueryPipelineStatisticClippingInvocationsBit                     QueryPipelineStatisticFlagBits = 32
	QueryPipelineStatisticClippingPrimitivesBit                      QueryPipelineStatisticFlagBits = 64
	QueryPipelineStatisticFragmentShaderInvocationsBit               QueryPipelineStatisticFlagBits = 128
	QueryPipelineStatisticTessellationControlShaderPatchesBit        QueryPipelineStatisticFlagBits = 256
	QueryPipelineStatisticTessellationEvaluationShaderInvocationsBit QueryPipelineStatisticFlagBits = 512
	QueryPipelineStatisticComputeShaderInvocationsBit                QueryPipelineStatisticFlagBits = 1024
	QueryPipelineStatisticFlagBitsMaxEnum                            QueryPipelineStatisticFlagBits = 2147483647
)

QueryPipelineStatisticFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPipelineStatisticFlagBits.html

type QueryPipelineStatisticFlags

type QueryPipelineStatisticFlags uint32

QueryPipelineStatisticFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPipelineStatisticFlags.html

type QueryPoolCreateFlags

type QueryPoolCreateFlags uint32

QueryPoolCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateFlags.html

type QueryPoolCreateInfo

type QueryPoolCreateInfo struct {
	SType              StructureType
	PNext              unsafe.Pointer
	Flags              QueryPoolCreateFlags
	QueryType          QueryType
	QueryCount         uint32
	PipelineStatistics QueryPipelineStatisticFlags
}

QueryPoolCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryPoolCreateInfo.html

type QueryResultFlagBits

type QueryResultFlagBits int32

QueryResultFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryResultFlagBits.html

const (
	QueryResult64Bit               QueryResultFlagBits = 1
	QueryResultWaitBit             QueryResultFlagBits = 2
	QueryResultWithAvailabilityBit QueryResultFlagBits = 4
	QueryResultPartialBit          QueryResultFlagBits = 8
	QueryResultFlagBitsMaxEnum     QueryResultFlagBits = 2147483647
)

QueryResultFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryResultFlagBits.html

type QueryType

type QueryType int32

QueryType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryType.html

const (
	QueryTypeOcclusion               QueryType = iota
	QueryTypePipelineStatistics      QueryType = 1
	QueryTypeTimestamp               QueryType = 2
	QueryTypeTransformFeedbackStream QueryType = 1000028004
	QueryTypeCompactedSizeNvx        QueryType = 1000165000
	QueryTypeBeginRange              QueryType = 0
	QueryTypeEndRange                QueryType = 2
	QueryTypeRangeSize               QueryType = 3
	QueryTypeMaxEnum                 QueryType = 2147483647
)

QueryType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueryType.html

type QueueFamilyCheckpointPropertiesNV

type QueueFamilyCheckpointPropertiesNV struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	CheckpointExecutionStageMask PipelineStageFlags
}

QueueFamilyCheckpointPropertiesNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyCheckpointPropertiesNV.html

type QueueFamilyProperties

type QueueFamilyProperties struct {
	QueueFlags                  QueueFlags
	QueueCount                  uint32
	TimestampValidBits          uint32
	MinImageTransferGranularity Extent3D
}

QueueFamilyProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties.html

type QueueFamilyProperties2

type QueueFamilyProperties2 struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	QueueFamilyProperties QueueFamilyProperties
}

QueueFamilyProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFamilyProperties2.html

type QueueFlagBits

type QueueFlagBits int32

QueueFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html

const (
	QueueGraphicsBit      QueueFlagBits = 1
	QueueComputeBit       QueueFlagBits = 2
	QueueTransferBit      QueueFlagBits = 4
	QueueSparseBindingBit QueueFlagBits = 8
	QueueProtectedBit     QueueFlagBits = 16
	QueueFlagBitsMaxEnum  QueueFlagBits = 2147483647
)

QueueFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueFlagBits.html

type QueueGlobalPriority

type QueueGlobalPriority int32

QueueGlobalPriority as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueGlobalPriorityEXT.html

const (
	QueueGlobalPriorityLow        QueueGlobalPriority = 128
	QueueGlobalPriorityMedium     QueueGlobalPriority = 256
	QueueGlobalPriorityHigh       QueueGlobalPriority = 512
	QueueGlobalPriorityRealtime   QueueGlobalPriority = 1024
	QueueGlobalPriorityBeginRange QueueGlobalPriority = 128
	QueueGlobalPriorityEndRange   QueueGlobalPriority = 1024
	QueueGlobalPriorityRangeSize  QueueGlobalPriority = 897
	QueueGlobalPriorityMaxEnum    QueueGlobalPriority = 2147483647
)

QueueGlobalPriority enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkQueueGlobalPriorityEXT.html

type RasterizationOrderAMD

type RasterizationOrderAMD int32

RasterizationOrderAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkRasterizationOrderAMD

const (
	RasterizationOrderStrictAmd     RasterizationOrderAMD = iota
	RasterizationOrderRelaxedAmd    RasterizationOrderAMD = 1
	RasterizationOrderBeginRangeAmd RasterizationOrderAMD = 0
	RasterizationOrderEndRangeAmd   RasterizationOrderAMD = 1
	RasterizationOrderRangeSizeAmd  RasterizationOrderAMD = 2
	RasterizationOrderMaxEnumAmd    RasterizationOrderAMD = 2147483647
)

RasterizationOrderAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkRasterizationOrderAMD

type RaytracingPipelineCreateInfoNVX

type RaytracingPipelineCreateInfoNVX struct {
	SType              StructureType
	PNext              unsafe.Pointer
	Flags              PipelineCreateFlags
	StageCount         uint32
	PStages            *PipelineShaderStageCreateInfo
	PGroupNumbers      *uint32
	MaxRecursionDepth  uint32
	Layout             PipelineLayout
	BasePipelineHandle Pipeline
	BasePipelineIndex  int32
}

RaytracingPipelineCreateInfoNVX as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkRaytracingPipelineCreateInfoNVX

type Rect2D

type Rect2D struct {
	Offset Offset2D
	Extent Extent2D
}

Rect2D as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRect2D.html

type RefreshCycleDurationGOOGLE

type RefreshCycleDurationGOOGLE struct {
	RefreshDuration uint64
}

RefreshCycleDurationGOOGLE as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRefreshCycleDurationGOOGLE.html

type RenderPassBeginInfo

type RenderPassBeginInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	RenderPass      RenderPass
	Framebuffer     Framebuffer
	RenderArea      Rect2D
	ClearValueCount uint32
	PClearValues    *ClearValue
}

RenderPassBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassBeginInfo.html

type RenderPassCreateFlags

type RenderPassCreateFlags uint32

RenderPassCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateFlags.html

type RenderPassCreateInfo

type RenderPassCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           RenderPassCreateFlags
	AttachmentCount uint32
	PAttachments    *AttachmentDescription
	SubpassCount    uint32
	PSubpasses      *SubpassDescription
	DependencyCount uint32
	PDependencies   *SubpassDependency
}

RenderPassCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassCreateInfo.html

type RenderPassCreateInfo2

type RenderPassCreateInfo2 struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	Flags                   RenderPassCreateFlags
	AttachmentCount         uint32
	PAttachments            *AttachmentDescription2
	SubpassCount            uint32
	PSubpasses              *SubpassDescription2
	DependencyCount         uint32
	PDependencies           *SubpassDependency2
	CorrelatedViewMaskCount uint32
	PCorrelatedViewMasks    *uint32
}

RenderPassCreateInfo2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkRenderPassCreateInfo2KHR

type RenderPassInputAttachmentAspectCreateInfo

type RenderPassInputAttachmentAspectCreateInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	AspectReferenceCount uint32
	PAspectReferences    *InputAttachmentAspectReference
}

RenderPassInputAttachmentAspectCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassInputAttachmentAspectCreateInfo.html

type RenderPassMultiviewCreateInfo

type RenderPassMultiviewCreateInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	SubpassCount         uint32
	PViewMasks           *uint32
	DependencyCount      uint32
	PViewOffsets         *int32
	CorrelationMaskCount uint32
	PCorrelationMasks    *uint32
}

RenderPassMultiviewCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassMultiviewCreateInfo.html

type RenderPassSampleLocationsBeginInfo

type RenderPassSampleLocationsBeginInfo struct {
	SType                                 StructureType
	PNext                                 unsafe.Pointer
	AttachmentInitialSampleLocationsCount uint32
	PAttachmentInitialSampleLocations     *AttachmentSampleLocations
	PostSubpassSampleLocationsCount       uint32
	PPostSubpassSampleLocations           *SubpassSampleLocations
}

RenderPassSampleLocationsBeginInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkRenderPassSampleLocationsBeginInfoEXT.html

type Result

type Result int32

Result as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResult.html

const (
	Success                                  Result = iota
	NotReady                                 Result = 1
	Timeout                                  Result = 2
	EventSet                                 Result = 3
	EventReset                               Result = 4
	Incomplete                               Result = 5
	ErrorOutOfHostMemory                     Result = -1
	ErrorOutOfDeviceMemory                   Result = -2
	ErrorInitializationFailed                Result = -3
	ErrorDeviceLost                          Result = -4
	ErrorMemoryMapFailed                     Result = -5
	ErrorLayerNotPresent                     Result = -6
	ErrorExtensionNotPresent                 Result = -7
	ErrorFeatureNotPresent                   Result = -8
	ErrorIncompatibleDriver                  Result = -9
	ErrorTooManyObjects                      Result = -10
	ErrorFormatNotSupported                  Result = -11
	ErrorFragmentedPool                      Result = -12
	ErrorOutOfPoolMemory                     Result = -1000069000
	ErrorInvalidExternalHandle               Result = -1000072003
	ErrorSurfaceLost                         Result = -1000000000
	ErrorNativeWindowInUse                   Result = -1000000001
	Suboptimal                               Result = 1000001003
	ErrorOutOfDate                           Result = -1000001004
	ErrorIncompatibleDisplay                 Result = -1000003001
	ErrorValidationFailed                    Result = -1000011001
	ErrorInvalidShaderNv                     Result = -1000012000
	ErrorInvalidDrmFormatModifierPlaneLayout Result = -1000158000
	ErrorFragmentation                       Result = -1000161000
	ErrorNotPermitted                        Result = -1000174001
	ResultBeginRange                         Result = -12
	ResultEndRange                           Result = 5
	ResultRangeSize                          Result = 18
	ResultMaxEnum                            Result = 2147483647
)

Result enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkResult.html

func AcquireNextImage

func AcquireNextImage(device Device, swapchain Swapchain, timeout uint64, semaphore Semaphore, fence Fence, pImageIndex *uint32) Result

AcquireNextImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkAcquireNextImageKHR

func AllocateCommandBuffers

func AllocateCommandBuffers(device Device, pAllocateInfo *CommandBufferAllocateInfo, pCommandBuffers *CommandBuffer) Result

AllocateCommandBuffers function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateCommandBuffers.html

func AllocateDescriptorSets

func AllocateDescriptorSets(device Device, pAllocateInfo *DescriptorSetAllocateInfo, pDescriptorSets *DescriptorSet) Result

AllocateDescriptorSets function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateDescriptorSets.html

func AllocateMemory

func AllocateMemory(device Device, pAllocateInfo *MemoryAllocateInfo, pAllocator *AllocationCallbacks, pMemory *DeviceMemory) Result

AllocateMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateMemory.html

func BeginCommandBuffer

func BeginCommandBuffer(commandBuffer CommandBuffer, pBeginInfo *CommandBufferBeginInfo) Result

BeginCommandBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkBeginCommandBuffer.html

func BindBufferMemory

func BindBufferMemory(device Device, buffer Buffer, memory DeviceMemory, memoryOffset DeviceSize) Result

BindBufferMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkBindBufferMemory.html

func BindImageMemory

func BindImageMemory(device Device, image Image, memory DeviceMemory, memoryOffset DeviceSize) Result

BindImageMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkBindImageMemory.html

func CreateBuffer

func CreateBuffer(device Device, pCreateInfo *BufferCreateInfo, pAllocator *AllocationCallbacks, pBuffer *Buffer) Result

CreateBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateBuffer.html

func CreateBufferView

func CreateBufferView(device Device, pCreateInfo *BufferViewCreateInfo, pAllocator *AllocationCallbacks, pView *BufferView) Result

CreateBufferView function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateBufferView.html

func CreateCommandPool

func CreateCommandPool(device Device, pCreateInfo *CommandPoolCreateInfo, pAllocator *AllocationCallbacks, pCommandPool *CommandPool) Result

CreateCommandPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateCommandPool.html

func CreateComputePipelines

func CreateComputePipelines(device Device, pipelineCache PipelineCache, createInfoCount uint32, pCreateInfos *ComputePipelineCreateInfo, pAllocator *AllocationCallbacks, pPipelines *Pipeline) Result

CreateComputePipelines function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateComputePipelines.html

func CreateDebugReportCallback

func CreateDebugReportCallback(instance Instance, pCreateInfo *DebugReportCallbackCreateInfo, pAllocator *AllocationCallbacks, pCallback *DebugReportCallback) Result

CreateDebugReportCallback function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateDebugReportCallbackEXT.html

func CreateDescriptorPool

func CreateDescriptorPool(device Device, pCreateInfo *DescriptorPoolCreateInfo, pAllocator *AllocationCallbacks, pDescriptorPool *DescriptorPool) Result

CreateDescriptorPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateDescriptorPool.html

func CreateDescriptorSetLayout

func CreateDescriptorSetLayout(device Device, pCreateInfo *DescriptorSetLayoutCreateInfo, pAllocator *AllocationCallbacks, pSetLayout *DescriptorSetLayout) Result

CreateDescriptorSetLayout function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateDescriptorSetLayout.html

func CreateDevice

func CreateDevice(physicalDevice PhysicalDevice, pCreateInfo *DeviceCreateInfo, pAllocator *AllocationCallbacks, pDevice *Device) Result

CreateDevice function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateDevice.html

func CreateDisplayMode

func CreateDisplayMode(physicalDevice PhysicalDevice, display Display, pCreateInfo *DisplayModeCreateInfo, pAllocator *AllocationCallbacks, pMode *DisplayMode) Result

CreateDisplayMode function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCreateDisplayModeKHR

func CreateDisplayPlaneSurface

func CreateDisplayPlaneSurface(instance Instance, pCreateInfo *DisplaySurfaceCreateInfo, pAllocator *AllocationCallbacks, pSurface *Surface) Result

CreateDisplayPlaneSurface function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCreateDisplayPlaneSurfaceKHR

func CreateEvent

func CreateEvent(device Device, pCreateInfo *EventCreateInfo, pAllocator *AllocationCallbacks, pEvent *Event) Result

CreateEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateEvent.html

func CreateFence

func CreateFence(device Device, pCreateInfo *FenceCreateInfo, pAllocator *AllocationCallbacks, pFence *Fence) Result

CreateFence function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateFence.html

func CreateFramebuffer

func CreateFramebuffer(device Device, pCreateInfo *FramebufferCreateInfo, pAllocator *AllocationCallbacks, pFramebuffer *Framebuffer) Result

CreateFramebuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateFramebuffer.html

func CreateGraphicsPipelines

func CreateGraphicsPipelines(device Device, pipelineCache PipelineCache, createInfoCount uint32, pCreateInfos *GraphicsPipelineCreateInfo, pAllocator *AllocationCallbacks, pPipelines *Pipeline) Result

CreateGraphicsPipelines function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateGraphicsPipelines.html

func CreateImage

func CreateImage(device Device, pCreateInfo *ImageCreateInfo, pAllocator *AllocationCallbacks, pImage *Image) Result

CreateImage function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateImage.html

func CreateImageView

func CreateImageView(device Device, pCreateInfo *ImageViewCreateInfo, pAllocator *AllocationCallbacks, pView *ImageView) Result

CreateImageView function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateImageView.html

func CreateInstance

func CreateInstance(pCreateInfo *InstanceCreateInfo, pAllocator *AllocationCallbacks, pInstance *Instance) Result

CreateInstance function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateInstance.html

func CreatePipelineCache

func CreatePipelineCache(device Device, pCreateInfo *PipelineCacheCreateInfo, pAllocator *AllocationCallbacks, pPipelineCache *PipelineCache) Result

CreatePipelineCache function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreatePipelineCache.html

func CreatePipelineLayout

func CreatePipelineLayout(device Device, pCreateInfo *PipelineLayoutCreateInfo, pAllocator *AllocationCallbacks, pPipelineLayout *PipelineLayout) Result

CreatePipelineLayout function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreatePipelineLayout.html

func CreateQueryPool

func CreateQueryPool(device Device, pCreateInfo *QueryPoolCreateInfo, pAllocator *AllocationCallbacks, pQueryPool *QueryPool) Result

CreateQueryPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateQueryPool.html

func CreateRenderPass

func CreateRenderPass(device Device, pCreateInfo *RenderPassCreateInfo, pAllocator *AllocationCallbacks, pRenderPass *RenderPass) Result

CreateRenderPass function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateRenderPass.html

func CreateSampler

func CreateSampler(device Device, pCreateInfo *SamplerCreateInfo, pAllocator *AllocationCallbacks, pSampler *Sampler) Result

CreateSampler function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateSampler.html

func CreateSemaphore

func CreateSemaphore(device Device, pCreateInfo *SemaphoreCreateInfo, pAllocator *AllocationCallbacks, pSemaphore *Semaphore) Result

CreateSemaphore function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateSemaphore.html

func CreateShaderModule

func CreateShaderModule(device Device, pCreateInfo *ShaderModuleCreateInfo, pAllocator *AllocationCallbacks, pShaderModule *ShaderModule) Result

CreateShaderModule function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkCreateShaderModule.html

func CreateSharedSwapchains

func CreateSharedSwapchains(device Device, swapchainCount uint32, pCreateInfos *SwapchainCreateInfo, pAllocator *AllocationCallbacks, pSwapchains *Swapchain) Result

CreateSharedSwapchains function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCreateSharedSwapchainsKHR

func CreateSwapchain

func CreateSwapchain(device Device, pCreateInfo *SwapchainCreateInfo, pAllocator *AllocationCallbacks, pSwapchain *Swapchain) Result

CreateSwapchain function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkCreateSwapchainKHR

func DeviceWaitIdle

func DeviceWaitIdle(device Device) Result

DeviceWaitIdle function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkDeviceWaitIdle.html

func EndCommandBuffer

func EndCommandBuffer(commandBuffer CommandBuffer) Result

EndCommandBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEndCommandBuffer.html

func EnumerateDeviceExtensionProperties

func EnumerateDeviceExtensionProperties(physicalDevice PhysicalDevice, pLayerName *string, pPropertyCount *uint32, pProperties *ExtensionProperties) Result

EnumerateDeviceExtensionProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumerateDeviceExtensionProperties.html

func EnumerateDeviceLayerProperties

func EnumerateDeviceLayerProperties(physicalDevice PhysicalDevice, pPropertyCount *uint32, pProperties *LayerProperties) Result

EnumerateDeviceLayerProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumerateDeviceLayerProperties.html

func EnumerateInstanceExtensionProperties

func EnumerateInstanceExtensionProperties(pLayerName *string, pPropertyCount *uint32, pProperties *ExtensionProperties) Result

EnumerateInstanceExtensionProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumerateInstanceExtensionProperties.html

func EnumerateInstanceLayerProperties

func EnumerateInstanceLayerProperties(pPropertyCount *uint32, pProperties *LayerProperties) Result

EnumerateInstanceLayerProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumerateInstanceLayerProperties.html

func EnumeratePhysicalDevices

func EnumeratePhysicalDevices(instance Instance, pPhysicalDeviceCount *uint32, pPhysicalDevices *PhysicalDevice) Result

EnumeratePhysicalDevices function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkEnumeratePhysicalDevices.html

func FlushMappedMemoryRanges

func FlushMappedMemoryRanges(device Device, memoryRangeCount uint32, pMemoryRanges *MappedMemoryRange) Result

FlushMappedMemoryRanges function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkFlushMappedMemoryRanges.html

func FreeDescriptorSets

func FreeDescriptorSets(device Device, descriptorPool DescriptorPool, descriptorSetCount uint32, pDescriptorSets *DescriptorSet) Result

FreeDescriptorSets function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkFreeDescriptorSets.html

func GetDisplayModeProperties

func GetDisplayModeProperties(physicalDevice PhysicalDevice, display Display, pPropertyCount *uint32, pProperties *DisplayModeProperties) Result

GetDisplayModeProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetDisplayModePropertiesKHR

func GetDisplayPlaneCapabilities

func GetDisplayPlaneCapabilities(physicalDevice PhysicalDevice, mode DisplayMode, planeIndex uint32, pCapabilities *DisplayPlaneCapabilities) Result

GetDisplayPlaneCapabilities function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetDisplayPlaneCapabilitiesKHR

func GetDisplayPlaneSupportedDisplays

func GetDisplayPlaneSupportedDisplays(physicalDevice PhysicalDevice, planeIndex uint32, pDisplayCount *uint32, pDisplays *Display) Result

GetDisplayPlaneSupportedDisplays function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetDisplayPlaneSupportedDisplaysKHR

func GetEventStatus

func GetEventStatus(device Device, event Event) Result

GetEventStatus function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetEventStatus.html

func GetFenceStatus

func GetFenceStatus(device Device, fence Fence) Result

GetFenceStatus function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetFenceStatus.html

func GetPastPresentationTimingGOOGLE

func GetPastPresentationTimingGOOGLE(device Device, swapchain Swapchain, pPresentationTimingCount *uint32, pPresentationTimings *PastPresentationTimingGOOGLE) Result

GetPastPresentationTimingGOOGLE function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPastPresentationTimingGOOGLE.html

func GetPhysicalDeviceDisplayPlaneProperties

func GetPhysicalDeviceDisplayPlaneProperties(physicalDevice PhysicalDevice, pPropertyCount *uint32, pProperties *DisplayPlaneProperties) Result

GetPhysicalDeviceDisplayPlaneProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceDisplayPlanePropertiesKHR

func GetPhysicalDeviceDisplayProperties

func GetPhysicalDeviceDisplayProperties(physicalDevice PhysicalDevice, pPropertyCount *uint32, pProperties *DisplayProperties) Result

GetPhysicalDeviceDisplayProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceDisplayPropertiesKHR

func GetPhysicalDeviceImageFormatProperties

func GetPhysicalDeviceImageFormatProperties(physicalDevice PhysicalDevice, format Format, kind ImageType, tiling ImageTiling, usage ImageUsageFlags, flags ImageCreateFlags, pImageFormatProperties *ImageFormatProperties) Result

GetPhysicalDeviceImageFormatProperties function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPhysicalDeviceImageFormatProperties.html

func GetPhysicalDeviceSurfaceCapabilities

func GetPhysicalDeviceSurfaceCapabilities(physicalDevice PhysicalDevice, surface Surface, pSurfaceCapabilities *SurfaceCapabilities) Result

GetPhysicalDeviceSurfaceCapabilities function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceSurfaceCapabilitiesKHR

func GetPhysicalDeviceSurfaceFormats

func GetPhysicalDeviceSurfaceFormats(physicalDevice PhysicalDevice, surface Surface, pSurfaceFormatCount *uint32, pSurfaceFormats *SurfaceFormat) Result

GetPhysicalDeviceSurfaceFormats function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceSurfaceFormatsKHR

func GetPhysicalDeviceSurfacePresentModes

func GetPhysicalDeviceSurfacePresentModes(physicalDevice PhysicalDevice, surface Surface, pPresentModeCount *uint32, pPresentModes *PresentMode) Result

GetPhysicalDeviceSurfacePresentModes function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceSurfacePresentModesKHR

func GetPhysicalDeviceSurfaceSupport

func GetPhysicalDeviceSurfaceSupport(physicalDevice PhysicalDevice, queueFamilyIndex uint32, surface Surface, pSupported *Bool32) Result

GetPhysicalDeviceSurfaceSupport function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetPhysicalDeviceSurfaceSupportKHR

func GetPipelineCacheData

func GetPipelineCacheData(device Device, pipelineCache PipelineCache, pDataSize *uint, pData unsafe.Pointer) Result

GetPipelineCacheData function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetPipelineCacheData.html

func GetQueryPoolResults

func GetQueryPoolResults(device Device, queryPool QueryPool, firstQuery uint32, queryCount uint32, dataSize uint, pData unsafe.Pointer, stride DeviceSize, flags QueryResultFlags) Result

GetQueryPoolResults function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetQueryPoolResults.html

func GetRefreshCycleDurationGOOGLE

func GetRefreshCycleDurationGOOGLE(device Device, swapchain Swapchain, pDisplayTimingProperties *RefreshCycleDurationGOOGLE) Result

GetRefreshCycleDurationGOOGLE function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkGetRefreshCycleDurationGOOGLE.html

func GetSwapchainImages

func GetSwapchainImages(device Device, swapchain Swapchain, pSwapchainImageCount *uint32, pSwapchainImages *Image) Result

GetSwapchainImages function as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkGetSwapchainImagesKHR

func InvalidateMappedMemoryRanges

func InvalidateMappedMemoryRanges(device Device, memoryRangeCount uint32, pMemoryRanges *MappedMemoryRange) Result

InvalidateMappedMemoryRanges function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkInvalidateMappedMemoryRanges.html

func MapMemory

func MapMemory(device Device, memory DeviceMemory, offset DeviceSize, size DeviceSize, flags MemoryMapFlags, ppData *unsafe.Pointer) Result

MapMemory function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkMapMemory.html

func MergePipelineCaches

func MergePipelineCaches(device Device, dstCache PipelineCache, srcCacheCount uint32, pSrcCaches *PipelineCache) Result

MergePipelineCaches function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkMergePipelineCaches.html

func QueueBindSparse

func QueueBindSparse(queue Queue, bindInfoCount uint32, pBindInfo *BindSparseInfo, fence Fence) Result

QueueBindSparse function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkQueueBindSparse.html

func QueueSubmit

func QueueSubmit(queue Queue, submitCount uint32, pSubmits *SubmitInfo, fence Fence) Result

QueueSubmit function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkQueueSubmit.html

func QueueWaitIdle

func QueueWaitIdle(queue Queue) Result

QueueWaitIdle function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkQueueWaitIdle.html

func ResetCommandBuffer

func ResetCommandBuffer(commandBuffer CommandBuffer, flags CommandBufferResetFlags) Result

ResetCommandBuffer function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkResetCommandBuffer.html

func ResetCommandPool

func ResetCommandPool(device Device, commandPool CommandPool, flags CommandPoolResetFlags) Result

ResetCommandPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkResetCommandPool.html

func ResetDescriptorPool

func ResetDescriptorPool(device Device, descriptorPool DescriptorPool, flags DescriptorPoolResetFlags) Result

ResetDescriptorPool function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkResetDescriptorPool.html

func ResetEvent

func ResetEvent(device Device, event Event) Result

ResetEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkResetEvent.html

func ResetFences

func ResetFences(device Device, fenceCount uint32, pFences *Fence) Result

ResetFences function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkResetFences.html

func SetEvent

func SetEvent(device Device, event Event) Result

SetEvent function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkSetEvent.html

func WaitForFences

func WaitForFences(device Device, fenceCount uint32, pFences *Fence, waitAll Bool32, timeout uint64) Result

WaitForFences function as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkWaitForFences.html

func XlibSurfaceCreateInfoKHRHelper added in v1.0.2

func XlibSurfaceCreateInfoKHRHelper(window, display unsafe.Pointer, instance Instance, surface *Surface) Result

type SampleCountFlagBits

type SampleCountFlagBits int32

SampleCountFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleCountFlagBits.html

const (
	SampleCount1Bit            SampleCountFlagBits = 1
	SampleCount2Bit            SampleCountFlagBits = 2
	SampleCount4Bit            SampleCountFlagBits = 4
	SampleCount8Bit            SampleCountFlagBits = 8
	SampleCount16Bit           SampleCountFlagBits = 16
	SampleCount32Bit           SampleCountFlagBits = 32
	SampleCount64Bit           SampleCountFlagBits = 64
	SampleCountFlagBitsMaxEnum SampleCountFlagBits = 2147483647
)

SampleCountFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleCountFlagBits.html

type SampleLocation

type SampleLocation struct {
	X float32
	Y float32
}

SampleLocation as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationEXT.html

type SampleLocationsInfo

type SampleLocationsInfo struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	SampleLocationsPerPixel SampleCountFlagBits
	SampleLocationGridSize  Extent2D
	SampleLocationsCount    uint32
	PSampleLocations        *SampleLocation
}

SampleLocationsInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSampleLocationsInfoEXT.html

type SamplerAddressMode

type SamplerAddressMode int32

SamplerAddressMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html

const (
	SamplerAddressModeRepeat            SamplerAddressMode = iota
	SamplerAddressModeMirroredRepeat    SamplerAddressMode = 1
	SamplerAddressModeClampToEdge       SamplerAddressMode = 2
	SamplerAddressModeClampToBorder     SamplerAddressMode = 3
	SamplerAddressModeMirrorClampToEdge SamplerAddressMode = 4
	SamplerAddressModeBeginRange        SamplerAddressMode = 0
	SamplerAddressModeEndRange          SamplerAddressMode = 3
	SamplerAddressModeRangeSize         SamplerAddressMode = 4
	SamplerAddressModeMaxEnum           SamplerAddressMode = 2147483647
)

SamplerAddressMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerAddressMode.html

type SamplerCreateInfo

type SamplerCreateInfo struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	Flags                   SamplerCreateFlags
	MagFilter               Filter
	MinFilter               Filter
	MipmapMode              SamplerMipmapMode
	AddressModeU            SamplerAddressMode
	AddressModeV            SamplerAddressMode
	AddressModeW            SamplerAddressMode
	MipLodBias              float32
	AnisotropyEnable        Bool32
	MaxAnisotropy           float32
	CompareEnable           Bool32
	CompareOp               CompareOp
	MinLod                  float32
	MaxLod                  float32
	BorderColor             BorderColor
	UnnormalizedCoordinates Bool32
}

SamplerCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerCreateInfo.html

type SamplerMipmapMode

type SamplerMipmapMode int32

SamplerMipmapMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html

const (
	SamplerMipmapModeNearest    SamplerMipmapMode = iota
	SamplerMipmapModeLinear     SamplerMipmapMode = 1
	SamplerMipmapModeBeginRange SamplerMipmapMode = 0
	SamplerMipmapModeEndRange   SamplerMipmapMode = 1
	SamplerMipmapModeRangeSize  SamplerMipmapMode = 2
	SamplerMipmapModeMaxEnum    SamplerMipmapMode = 2147483647
)

SamplerMipmapMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerMipmapMode.html

type SamplerReductionMode

type SamplerReductionMode int32

SamplerReductionMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeEXT.html

const (
	SamplerReductionModeWeightedAverage SamplerReductionMode = iota
	SamplerReductionModeMin             SamplerReductionMode = 1
	SamplerReductionModeMax             SamplerReductionMode = 2
	SamplerReductionModeBeginRange      SamplerReductionMode = 0
	SamplerReductionModeEndRange        SamplerReductionMode = 2
	SamplerReductionModeRangeSize       SamplerReductionMode = 3
	SamplerReductionModeMaxEnum         SamplerReductionMode = 2147483647
)

SamplerReductionMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeEXT.html

type SamplerReductionModeCreateInfo

type SamplerReductionModeCreateInfo struct {
	SType         StructureType
	PNext         unsafe.Pointer
	ReductionMode SamplerReductionMode
}

SamplerReductionModeCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerReductionModeCreateInfoEXT.html

type SamplerYcbcrConversionCreateInfo

type SamplerYcbcrConversionCreateInfo struct {
	SType                       StructureType
	PNext                       unsafe.Pointer
	Format                      Format
	YcbcrModel                  SamplerYcbcrModelConversion
	YcbcrRange                  SamplerYcbcrRange
	Components                  ComponentMapping
	XChromaOffset               ChromaLocation
	YChromaOffset               ChromaLocation
	ChromaFilter                Filter
	ForceExplicitReconstruction Bool32
}

SamplerYcbcrConversionCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionCreateInfo.html

type SamplerYcbcrConversionImageFormatProperties

type SamplerYcbcrConversionImageFormatProperties struct {
	SType                               StructureType
	PNext                               unsafe.Pointer
	CombinedImageSamplerDescriptorCount uint32
}

SamplerYcbcrConversionImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionImageFormatProperties.html

type SamplerYcbcrConversionInfo

type SamplerYcbcrConversionInfo struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Conversion SamplerYcbcrConversion
}

SamplerYcbcrConversionInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrConversionInfo.html

type SamplerYcbcrModelConversion

type SamplerYcbcrModelConversion int32

SamplerYcbcrModelConversion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrModelConversion.html

const (
	SamplerYcbcrModelConversionRgbIdentity   SamplerYcbcrModelConversion = iota
	SamplerYcbcrModelConversionYcbcrIdentity SamplerYcbcrModelConversion = 1
	SamplerYcbcrModelConversionYcbcr709      SamplerYcbcrModelConversion = 2
	SamplerYcbcrModelConversionYcbcr601      SamplerYcbcrModelConversion = 3
	SamplerYcbcrModelConversionYcbcr2020     SamplerYcbcrModelConversion = 4
	SamplerYcbcrModelConversionBeginRange    SamplerYcbcrModelConversion = 0
	SamplerYcbcrModelConversionEndRange      SamplerYcbcrModelConversion = 4
	SamplerYcbcrModelConversionRangeSize     SamplerYcbcrModelConversion = 5
	SamplerYcbcrModelConversionMaxEnum       SamplerYcbcrModelConversion = 2147483647
)

SamplerYcbcrModelConversion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrModelConversion.html

type SamplerYcbcrRange

type SamplerYcbcrRange int32

SamplerYcbcrRange as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrRange.html

const (
	SamplerYcbcrRangeItuFull    SamplerYcbcrRange = iota
	SamplerYcbcrRangeItuNarrow  SamplerYcbcrRange = 1
	SamplerYcbcrRangeBeginRange SamplerYcbcrRange = 0
	SamplerYcbcrRangeEndRange   SamplerYcbcrRange = 1
	SamplerYcbcrRangeRangeSize  SamplerYcbcrRange = 2
	SamplerYcbcrRangeMaxEnum    SamplerYcbcrRange = 2147483647
)

SamplerYcbcrRange enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSamplerYcbcrRange.html

type SemaphoreCreateFlags

type SemaphoreCreateFlags uint32

SemaphoreCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreCreateFlags.html

type SemaphoreCreateInfo

type SemaphoreCreateInfo struct {
	SType StructureType
	PNext unsafe.Pointer
	Flags SemaphoreCreateFlags
}

SemaphoreCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreCreateInfo.html

type SemaphoreImportFlagBits

type SemaphoreImportFlagBits int32

SemaphoreImportFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html

const (
	SemaphoreImportTemporaryBit    SemaphoreImportFlagBits = 1
	SemaphoreImportFlagBitsMaxEnum SemaphoreImportFlagBits = 2147483647
)

SemaphoreImportFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlagBits.html

type SemaphoreImportFlags

type SemaphoreImportFlags uint32

SemaphoreImportFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSemaphoreImportFlags.html

type ShaderInfoTypeAMD

type ShaderInfoTypeAMD int32

ShaderInfoTypeAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderInfoTypeAMD

const (
	ShaderInfoTypeStatisticsAmd  ShaderInfoTypeAMD = iota
	ShaderInfoTypeBinaryAmd      ShaderInfoTypeAMD = 1
	ShaderInfoTypeDisassemblyAmd ShaderInfoTypeAMD = 2
	ShaderInfoTypeBeginRangeAmd  ShaderInfoTypeAMD = 0
	ShaderInfoTypeEndRangeAmd    ShaderInfoTypeAMD = 2
	ShaderInfoTypeRangeSizeAmd   ShaderInfoTypeAMD = 3
	ShaderInfoTypeMaxEnumAmd     ShaderInfoTypeAMD = 2147483647
)

ShaderInfoTypeAMD enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderInfoTypeAMD

type ShaderModuleCreateFlags

type ShaderModuleCreateFlags uint32

ShaderModuleCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleCreateFlags.html

type ShaderModuleCreateInfo

type ShaderModuleCreateInfo struct {
	SType    StructureType
	PNext    unsafe.Pointer
	Flags    ShaderModuleCreateFlags
	CodeSize uint
	PCode    *uint32
}

ShaderModuleCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleCreateInfo.html

type ShaderModuleValidationCacheCreateInfo

type ShaderModuleValidationCacheCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	ValidationCache ValidationCache
}

ShaderModuleValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderModuleValidationCacheCreateInfoEXT.html

type ShaderResourceUsageAMD

type ShaderResourceUsageAMD struct {
	NumUsedVgprs             uint32
	NumUsedSgprs             uint32
	LdsSizePerLocalWorkGroup uint32
	LdsUsageSizeInBytes      uint
	ScratchMemUsageInBytes   uint
}

ShaderResourceUsageAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderResourceUsageAMD

type ShaderStageFlagBits

type ShaderStageFlagBits int32

ShaderStageFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderStageFlagBits.html

const (
	ShaderStageVertexBit                 ShaderStageFlagBits = 1
	ShaderStageTessellationControlBit    ShaderStageFlagBits = 2
	ShaderStageTessellationEvaluationBit ShaderStageFlagBits = 4
	ShaderStageGeometryBit               ShaderStageFlagBits = 8
	ShaderStageFragmentBit               ShaderStageFlagBits = 16
	ShaderStageComputeBit                ShaderStageFlagBits = 32
	ShaderStageAllGraphics               ShaderStageFlagBits = 31
	ShaderStageAll                       ShaderStageFlagBits = 2147483647
	ShaderStageRaygenBitNvx              ShaderStageFlagBits = 256
	ShaderStageAnyHitBitNvx              ShaderStageFlagBits = 512
	ShaderStageClosestHitBitNvx          ShaderStageFlagBits = 1024
	ShaderStageMissBitNvx                ShaderStageFlagBits = 2048
	ShaderStageIntersectionBitNvx        ShaderStageFlagBits = 4096
	ShaderStageCallableBitNvx            ShaderStageFlagBits = 8192
	ShaderStageTaskBitNv                 ShaderStageFlagBits = 64
	ShaderStageMeshBitNv                 ShaderStageFlagBits = 128
	ShaderStageFlagBitsMaxEnum           ShaderStageFlagBits = 2147483647
)

ShaderStageFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShaderStageFlagBits.html

type ShaderStatisticsInfoAMD

type ShaderStatisticsInfoAMD struct {
	ShaderStageMask      ShaderStageFlags
	ResourceUsage        ShaderResourceUsageAMD
	NumPhysicalVgprs     uint32
	NumPhysicalSgprs     uint32
	NumAvailableVgprs    uint32
	NumAvailableSgprs    uint32
	ComputeWorkGroupSize [3]uint32
}

ShaderStatisticsInfoAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkShaderStatisticsInfoAMD

type ShadingRatePaletteEntryNV

type ShadingRatePaletteEntryNV int32

ShadingRatePaletteEntryNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteEntryNV.html

const (
	ShadingRatePaletteEntryNoInvocationsNv           ShadingRatePaletteEntryNV = iota
	ShadingRatePaletteEntry16InvocationsPerPixelNv   ShadingRatePaletteEntryNV = 1
	ShadingRatePaletteEntry8InvocationsPerPixelNv    ShadingRatePaletteEntryNV = 2
	ShadingRatePaletteEntry4InvocationsPerPixelNv    ShadingRatePaletteEntryNV = 3
	ShadingRatePaletteEntry2InvocationsPerPixelNv    ShadingRatePaletteEntryNV = 4
	ShadingRatePaletteEntry1InvocationPerPixelNv     ShadingRatePaletteEntryNV = 5
	ShadingRatePaletteEntry1InvocationPer2x1PixelsNv ShadingRatePaletteEntryNV = 6
	ShadingRatePaletteEntry1InvocationPer1x2PixelsNv ShadingRatePaletteEntryNV = 7
	ShadingRatePaletteEntry1InvocationPer2x2PixelsNv ShadingRatePaletteEntryNV = 8
	ShadingRatePaletteEntry1InvocationPer4x2PixelsNv ShadingRatePaletteEntryNV = 9
	ShadingRatePaletteEntry1InvocationPer2x4PixelsNv ShadingRatePaletteEntryNV = 10
	ShadingRatePaletteEntry1InvocationPer4x4PixelsNv ShadingRatePaletteEntryNV = 11
	ShadingRatePaletteEntryBeginRangeNv              ShadingRatePaletteEntryNV = 0
	ShadingRatePaletteEntryEndRangeNv                ShadingRatePaletteEntryNV = 11
	ShadingRatePaletteEntryRangeSizeNv               ShadingRatePaletteEntryNV = 12
	ShadingRatePaletteEntryMaxEnumNv                 ShadingRatePaletteEntryNV = 2147483647
)

ShadingRatePaletteEntryNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteEntryNV.html

type ShadingRatePaletteNV

type ShadingRatePaletteNV struct {
	ShadingRatePaletteEntryCount uint32
	PShadingRatePaletteEntries   *ShadingRatePaletteEntryNV
}

ShadingRatePaletteNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkShadingRatePaletteNV.html

type SharedPresentSurfaceCapabilities

type SharedPresentSurfaceCapabilities struct {
	SType                            StructureType
	PNext                            unsafe.Pointer
	SharedPresentSupportedUsageFlags ImageUsageFlags
}

SharedPresentSurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSharedPresentSurfaceCapabilitiesKHR

type SharingMode

type SharingMode int32

SharingMode as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSharingMode.html

const (
	SharingModeExclusive  SharingMode = iota
	SharingModeConcurrent SharingMode = 1
	SharingModeBeginRange SharingMode = 0
	SharingModeEndRange   SharingMode = 1
	SharingModeRangeSize  SharingMode = 2
	SharingModeMaxEnum    SharingMode = 2147483647
)

SharingMode enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSharingMode.html

type SparseBufferMemoryBindInfo

type SparseBufferMemoryBindInfo struct {
	Buffer    Buffer
	BindCount uint32
	PBinds    *SparseMemoryBind
}

SparseBufferMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseBufferMemoryBindInfo.html

type SparseImageFormatFlagBits

type SparseImageFormatFlagBits int32

SparseImageFormatFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatFlagBits.html

const (
	SparseImageFormatSingleMiptailBit        SparseImageFormatFlagBits = 1
	SparseImageFormatAlignedMipSizeBit       SparseImageFormatFlagBits = 2
	SparseImageFormatNonstandardBlockSizeBit SparseImageFormatFlagBits = 4
	SparseImageFormatFlagBitsMaxEnum         SparseImageFormatFlagBits = 2147483647
)

SparseImageFormatFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatFlagBits.html

type SparseImageFormatFlags

type SparseImageFormatFlags uint32

SparseImageFormatFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatFlags.html

type SparseImageFormatProperties

type SparseImageFormatProperties struct {
	AspectMask       ImageAspectFlags
	ImageGranularity Extent3D
	Flags            SparseImageFormatFlags
}

SparseImageFormatProperties as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties.html

type SparseImageFormatProperties2

type SparseImageFormatProperties2 struct {
	SType      StructureType
	PNext      unsafe.Pointer
	Properties SparseImageFormatProperties
}

SparseImageFormatProperties2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageFormatProperties2.html

type SparseImageMemoryBind

type SparseImageMemoryBind struct {
	Subresource  ImageSubresource
	Offset       Offset3D
	Extent       Extent3D
	Memory       DeviceMemory
	MemoryOffset DeviceSize
	Flags        SparseMemoryBindFlags
}

SparseImageMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBind.html

type SparseImageMemoryBindInfo

type SparseImageMemoryBindInfo struct {
	Image     Image
	BindCount uint32
	PBinds    *SparseImageMemoryBind
}

SparseImageMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryBindInfo.html

type SparseImageMemoryRequirements

type SparseImageMemoryRequirements struct {
	FormatProperties     SparseImageFormatProperties
	ImageMipTailFirstLod uint32
	ImageMipTailSize     DeviceSize
	ImageMipTailOffset   DeviceSize
	ImageMipTailStride   DeviceSize
}

SparseImageMemoryRequirements as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements.html

type SparseImageMemoryRequirements2

type SparseImageMemoryRequirements2 struct {
	SType              StructureType
	PNext              unsafe.Pointer
	MemoryRequirements SparseImageMemoryRequirements
}

SparseImageMemoryRequirements2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageMemoryRequirements2.html

type SparseImageOpaqueMemoryBindInfo

type SparseImageOpaqueMemoryBindInfo struct {
	Image     Image
	BindCount uint32
	PBinds    *SparseMemoryBind
}

SparseImageOpaqueMemoryBindInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseImageOpaqueMemoryBindInfo.html

type SparseMemoryBind

type SparseMemoryBind struct {
	ResourceOffset DeviceSize
	Size           DeviceSize
	Memory         DeviceMemory
	MemoryOffset   DeviceSize
	Flags          SparseMemoryBindFlags
}

SparseMemoryBind as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBind.html

type SparseMemoryBindFlagBits

type SparseMemoryBindFlagBits int32

SparseMemoryBindFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html

const (
	SparseMemoryBindMetadataBit     SparseMemoryBindFlagBits = 1
	SparseMemoryBindFlagBitsMaxEnum SparseMemoryBindFlagBits = 2147483647
)

SparseMemoryBindFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlagBits.html

type SparseMemoryBindFlags

type SparseMemoryBindFlags uint32

SparseMemoryBindFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSparseMemoryBindFlags.html

type SpecializationInfo

type SpecializationInfo struct {
	MapEntryCount uint32
	PMapEntries   *SpecializationMapEntry
	DataSize      uint
	PData         unsafe.Pointer
}

SpecializationInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationInfo.html

type SpecializationMapEntry

type SpecializationMapEntry struct {
	ConstantID uint32
	Offset     uint32
	Size       uint
}

SpecializationMapEntry as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSpecializationMapEntry.html

type StencilFaceFlagBits

type StencilFaceFlagBits int32

StencilFaceFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilFaceFlagBits.html

const (
	StencilFaceFrontBit        StencilFaceFlagBits = 1
	StencilFaceBackBit         StencilFaceFlagBits = 2
	StencilFrontAndBack        StencilFaceFlagBits = 3
	StencilFaceFlagBitsMaxEnum StencilFaceFlagBits = 2147483647
)

StencilFaceFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilFaceFlagBits.html

type StencilOp

type StencilOp int32

StencilOp as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html

const (
	StencilOpKeep              StencilOp = iota
	StencilOpZero              StencilOp = 1
	StencilOpReplace           StencilOp = 2
	StencilOpIncrementAndClamp StencilOp = 3
	StencilOpDecrementAndClamp StencilOp = 4
	StencilOpInvert            StencilOp = 5
	StencilOpIncrementAndWrap  StencilOp = 6
	StencilOpDecrementAndWrap  StencilOp = 7
	StencilOpBeginRange        StencilOp = 0
	StencilOpEndRange          StencilOp = 7
	StencilOpRangeSize         StencilOp = 8
	StencilOpMaxEnum           StencilOp = 2147483647
)

StencilOp enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOp.html

type StencilOpState

type StencilOpState struct {
	FailOp      StencilOp
	PassOp      StencilOp
	DepthFailOp StencilOp
	CompareOp   CompareOp
	CompareMask uint32
	WriteMask   uint32
	Reference   uint32
}

StencilOpState as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStencilOpState.html

type StructureType

type StructureType int32

StructureType as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStructureType.html

const (
	StructureTypeApplicationInfo                                       StructureType = iota
	StructureTypeInstanceCreateInfo                                    StructureType = 1
	StructureTypeDeviceQueueCreateInfo                                 StructureType = 2
	StructureTypeDeviceCreateInfo                                      StructureType = 3
	StructureTypeSubmitInfo                                            StructureType = 4
	StructureTypeMemoryAllocateInfo                                    StructureType = 5
	StructureTypeMappedMemoryRange                                     StructureType = 6
	StructureTypeBindSparseInfo                                        StructureType = 7
	StructureTypeFenceCreateInfo                                       StructureType = 8
	StructureTypeSemaphoreCreateInfo                                   StructureType = 9
	StructureTypeEventCreateInfo                                       StructureType = 10
	StructureTypeQueryPoolCreateInfo                                   StructureType = 11
	StructureTypeBufferCreateInfo                                      StructureType = 12
	StructureTypeBufferViewCreateInfo                                  StructureType = 13
	StructureTypeImageCreateInfo                                       StructureType = 14
	StructureTypeImageViewCreateInfo                                   StructureType = 15
	StructureTypeShaderModuleCreateInfo                                StructureType = 16
	StructureTypePipelineCacheCreateInfo                               StructureType = 17
	StructureTypePipelineShaderStageCreateInfo                         StructureType = 18
	StructureTypePipelineVertexInputStateCreateInfo                    StructureType = 19
	StructureTypePipelineInputAssemblyStateCreateInfo                  StructureType = 20
	StructureTypePipelineTessellationStateCreateInfo                   StructureType = 21
	StructureTypePipelineViewportStateCreateInfo                       StructureType = 22
	StructureTypePipelineRasterizationStateCreateInfo                  StructureType = 23
	StructureTypePipelineMultisampleStateCreateInfo                    StructureType = 24
	StructureTypePipelineDepthStencilStateCreateInfo                   StructureType = 25
	StructureTypePipelineColorBlendStateCreateInfo                     StructureType = 26
	StructureTypePipelineDynamicStateCreateInfo                        StructureType = 27
	StructureTypeGraphicsPipelineCreateInfo                            StructureType = 28
	StructureTypeComputePipelineCreateInfo                             StructureType = 29
	StructureTypePipelineLayoutCreateInfo                              StructureType = 30
	StructureTypeSamplerCreateInfo                                     StructureType = 31
	StructureTypeDescriptorSetLayoutCreateInfo                         StructureType = 32
	StructureTypeDescriptorPoolCreateInfo                              StructureType = 33
	StructureTypeDescriptorSetAllocateInfo                             StructureType = 34
	StructureTypeWriteDescriptorSet                                    StructureType = 35
	StructureTypeCopyDescriptorSet                                     StructureType = 36
	StructureTypeFramebufferCreateInfo                                 StructureType = 37
	StructureTypeRenderPassCreateInfo                                  StructureType = 38
	StructureTypeCommandPoolCreateInfo                                 StructureType = 39
	StructureTypeCommandBufferAllocateInfo                             StructureType = 40
	StructureTypeCommandBufferInheritanceInfo                          StructureType = 41
	StructureTypeCommandBufferBeginInfo                                StructureType = 42
	StructureTypeRenderPassBeginInfo                                   StructureType = 43
	StructureTypeBufferMemoryBarrier                                   StructureType = 44
	StructureTypeImageMemoryBarrier                                    StructureType = 45
	StructureTypeMemoryBarrier                                         StructureType = 46
	StructureTypeLoaderInstanceCreateInfo                              StructureType = 47
	StructureTypeLoaderDeviceCreateInfo                                StructureType = 48
	StructureTypePhysicalDeviceSubgroupProperties                      StructureType = 1000094000
	StructureTypeBindBufferMemoryInfo                                  StructureType = 1000157000
	StructureTypeBindImageMemoryInfo                                   StructureType = 1000157001
	StructureTypePhysicalDevice16bitStorageFeatures                    StructureType = 1000083000
	StructureTypeMemoryDedicatedRequirements                           StructureType = 1000127000
	StructureTypeMemoryDedicatedAllocateInfo                           StructureType = 1000127001
	StructureTypeMemoryAllocateFlagsInfo                               StructureType = 1000060000
	StructureTypeDeviceGroupRenderPassBeginInfo                        StructureType = 1000060003
	StructureTypeDeviceGroupCommandBufferBeginInfo                     StructureType = 1000060004
	StructureTypeDeviceGroupSubmitInfo                                 StructureType = 1000060005
	StructureTypeDeviceGroupBindSparseInfo                             StructureType = 1000060006
	StructureTypeBindBufferMemoryDeviceGroupInfo                       StructureType = 1000060013
	StructureTypeBindImageMemoryDeviceGroupInfo                        StructureType = 1000060014
	StructureTypePhysicalDeviceGroupProperties                         StructureType = 1000070000
	StructureTypeDeviceGroupDeviceCreateInfo                           StructureType = 1000070001
	StructureTypeBufferMemoryRequirementsInfo2                         StructureType = 1000146000
	StructureTypeImageMemoryRequirementsInfo2                          StructureType = 1000146001
	StructureTypeImageSparseMemoryRequirementsInfo2                    StructureType = 1000146002
	StructureTypeMemoryRequirements2                                   StructureType = 1000146003
	StructureTypeSparseImageMemoryRequirements2                        StructureType = 1000146004
	StructureTypePhysicalDeviceFeatures2                               StructureType = 1000059000
	StructureTypePhysicalDeviceProperties2                             StructureType = 1000059001
	StructureTypeFormatProperties2                                     StructureType = 1000059002
	StructureTypeImageFormatProperties2                                StructureType = 1000059003
	StructureTypePhysicalDeviceImageFormatInfo2                        StructureType = 1000059004
	StructureTypeQueueFamilyProperties2                                StructureType = 1000059005
	StructureTypePhysicalDeviceMemoryProperties2                       StructureType = 1000059006
	StructureTypeSparseImageFormatProperties2                          StructureType = 1000059007
	StructureTypePhysicalDeviceSparseImageFormatInfo2                  StructureType = 1000059008
	StructureTypePhysicalDevicePointClippingProperties                 StructureType = 1000117000
	StructureTypeRenderPassInputAttachmentAspectCreateInfo             StructureType = 1000117001
	StructureTypeImageViewUsageCreateInfo                              StructureType = 1000117002
	StructureTypePipelineTessellationDomainOriginStateCreateInfo       StructureType = 1000117003
	StructureTypeRenderPassMultiviewCreateInfo                         StructureType = 1000053000
	StructureTypePhysicalDeviceMultiviewFeatures                       StructureType = 1000053001
	StructureTypePhysicalDeviceMultiviewProperties                     StructureType = 1000053002
	StructureTypePhysicalDeviceVariablePointerFeatures                 StructureType = 1000120000
	StructureTypeProtectedSubmitInfo                                   StructureType = 1000145000
	StructureTypePhysicalDeviceProtectedMemoryFeatures                 StructureType = 1000145001
	StructureTypePhysicalDeviceProtectedMemoryProperties               StructureType = 1000145002
	StructureTypeDeviceQueueInfo2                                      StructureType = 1000145003
	StructureTypeSamplerYcbcrConversionCreateInfo                      StructureType = 1000156000
	StructureTypeSamplerYcbcrConversionInfo                            StructureType = 1000156001
	StructureTypeBindImagePlaneMemoryInfo                              StructureType = 1000156002
	StructureTypeImagePlaneMemoryRequirementsInfo                      StructureType = 1000156003
	StructureTypePhysicalDeviceSamplerYcbcrConversionFeatures          StructureType = 1000156004
	StructureTypeSamplerYcbcrConversionImageFormatProperties           StructureType = 1000156005
	StructureTypeDescriptorUpdateTemplateCreateInfo                    StructureType = 1000085000
	StructureTypePhysicalDeviceExternalImageFormatInfo                 StructureType = 1000071000
	StructureTypeExternalImageFormatProperties                         StructureType = 1000071001
	StructureTypePhysicalDeviceExternalBufferInfo                      StructureType = 1000071002
	StructureTypeExternalBufferProperties                              StructureType = 1000071003
	StructureTypePhysicalDeviceIdProperties                            StructureType = 1000071004
	StructureTypeExternalMemoryBufferCreateInfo                        StructureType = 1000072000
	StructureTypeExternalMemoryImageCreateInfo                         StructureType = 1000072001
	StructureTypeExportMemoryAllocateInfo                              StructureType = 1000072002
	StructureTypePhysicalDeviceExternalFenceInfo                       StructureType = 1000112000
	StructureTypeExternalFenceProperties                               StructureType = 1000112001
	StructureTypeExportFenceCreateInfo                                 StructureType = 1000113000
	StructureTypeExportSemaphoreCreateInfo                             StructureType = 1000077000
	StructureTypePhysicalDeviceExternalSemaphoreInfo                   StructureType = 1000076000
	StructureTypeExternalSemaphoreProperties                           StructureType = 1000076001
	StructureTypePhysicalDeviceMaintenance3Properties                  StructureType = 1000168000
	StructureTypeDescriptorSetLayoutSupport                            StructureType = 1000168001
	StructureTypePhysicalDeviceShaderDrawParameterFeatures             StructureType = 1000063000
	StructureTypeSwapchainCreateInfo                                   StructureType = 1000001000
	StructureTypePresentInfo                                           StructureType = 1000001001
	StructureTypeDeviceGroupPresentCapabilities                        StructureType = 1000060007
	StructureTypeImageSwapchainCreateInfo                              StructureType = 1000060008
	StructureTypeBindImageMemorySwapchainInfo                          StructureType = 1000060009
	StructureTypeAcquireNextImageInfo                                  StructureType = 1000060010
	StructureTypeDeviceGroupPresentInfo                                StructureType = 1000060011
	StructureTypeDeviceGroupSwapchainCreateInfo                        StructureType = 1000060012
	StructureTypeDisplayModeCreateInfo                                 StructureType = 1000002000
	StructureTypeDisplaySurfaceCreateInfo                              StructureType = 1000002001
	StructureTypeDisplayPresentInfo                                    StructureType = 1000003000
	StructureTypeXlibSurfaceCreateInfo                                 StructureType = 1000004000
	StructureTypeXcbSurfaceCreateInfo                                  StructureType = 1000005000
	StructureTypeWaylandSurfaceCreateInfo                              StructureType = 1000006000
	StructureTypeMirSurfaceCreateInfo                                  StructureType = 1000007000
	StructureTypeAndroidSurfaceCreateInfo                              StructureType = 1000008000
	StructureTypeWin32SurfaceCreateInfo                                StructureType = 1000009000
	StructureTypeDebugReportCallbackCreateInfo                         StructureType = 1000011000
	StructureTypePipelineRasterizationStateRasterizationOrderAmd       StructureType = 1000018000
	StructureTypeDebugMarkerObjectNameInfo                             StructureType = 1000022000
	StructureTypeDebugMarkerObjectTagInfo                              StructureType = 1000022001
	StructureTypeDebugMarkerMarkerInfo                                 StructureType = 1000022002
	StructureTypeDedicatedAllocationImageCreateInfoNv                  StructureType = 1000026000
	StructureTypeDedicatedAllocationBufferCreateInfoNv                 StructureType = 1000026001
	StructureTypeDedicatedAllocationMemoryAllocateInfoNv               StructureType = 1000026002
	StructureTypePhysicalDeviceTransformFeedbackFeatures               StructureType = 1000028000
	StructureTypePhysicalDeviceTransformFeedbackProperties             StructureType = 1000028001
	StructureTypePipelineRasterizationStateStreamCreateInfo            StructureType = 1000028002
	StructureTypeTextureLodGatherFormatPropertiesAmd                   StructureType = 1000041000
	StructureTypePhysicalDeviceCornerSampledImageFeaturesNv            StructureType = 1000050000
	StructureTypeExternalMemoryImageCreateInfoNv                       StructureType = 1000056000
	StructureTypeExportMemoryAllocateInfoNv                            StructureType = 1000056001
	StructureTypeImportMemoryWin32HandleInfoNv                         StructureType = 1000057000
	StructureTypeExportMemoryWin32HandleInfoNv                         StructureType = 1000057001
	StructureTypeWin32KeyedMutexAcquireReleaseInfoNv                   StructureType = 1000058000
	StructureTypeValidationFlags                                       StructureType = 1000061000
	StructureTypeViSurfaceCreateInfoNn                                 StructureType = 1000062000
	StructureTypeImageViewAstcDecodeMode                               StructureType = 1000067000
	StructureTypePhysicalDeviceAstcDecodeFeatures                      StructureType = 1000067001
	StructureTypeImportMemoryWin32HandleInfo                           StructureType = 1000073000
	StructureTypeExportMemoryWin32HandleInfo                           StructureType = 1000073001
	StructureTypeMemoryWin32HandleProperties                           StructureType = 1000073002
	StructureTypeMemoryGetWin32HandleInfo                              StructureType = 1000073003
	StructureTypeImportMemoryFdInfo                                    StructureType = 1000074000
	StructureTypeMemoryFdProperties                                    StructureType = 1000074001
	StructureTypeMemoryGetFdInfo                                       StructureType = 1000074002
	StructureTypeWin32KeyedMutexAcquireReleaseInfo                     StructureType = 1000075000
	StructureTypeImportSemaphoreWin32HandleInfo                        StructureType = 1000078000
	StructureTypeExportSemaphoreWin32HandleInfo                        StructureType = 1000078001
	StructureTypeD3d12FenceSubmitInfo                                  StructureType = 1000078002
	StructureTypeSemaphoreGetWin32HandleInfo                           StructureType = 1000078003
	StructureTypeImportSemaphoreFdInfo                                 StructureType = 1000079000
	StructureTypeSemaphoreGetFdInfo                                    StructureType = 1000079001
	StructureTypePhysicalDevicePushDescriptorProperties                StructureType = 1000080000
	StructureTypeCommandBufferInheritanceConditionalRenderingInfo      StructureType = 1000081000
	StructureTypePhysicalDeviceConditionalRenderingFeatures            StructureType = 1000081001
	StructureTypeConditionalRenderingBeginInfo                         StructureType = 1000081002
	StructureTypePresentRegions                                        StructureType = 1000084000
	StructureTypeObjectTableCreateInfoNvx                              StructureType = 1000086000
	StructureTypeIndirectCommandsLayoutCreateInfoNvx                   StructureType = 1000086001
	StructureTypeCmdProcessCommandsInfoNvx                             StructureType = 1000086002
	StructureTypeCmdReserveSpaceForCommandsInfoNvx                     StructureType = 1000086003
	StructureTypeDeviceGeneratedCommandsLimitsNvx                      StructureType = 1000086004
	StructureTypeDeviceGeneratedCommandsFeaturesNvx                    StructureType = 1000086005
	StructureTypePipelineViewportWScalingStateCreateInfoNv             StructureType = 1000087000
	StructureTypeSurfaceCapabilities2                                  StructureType = 1000090000
	StructureTypeDisplayPowerInfo                                      StructureType = 1000091000
	StructureTypeDeviceEventInfo                                       StructureType = 1000091001
	StructureTypeDisplayEventInfo                                      StructureType = 1000091002
	StructureTypeSwapchainCounterCreateInfo                            StructureType = 1000091003
	StructureTypePresentTimesInfoGoogle                                StructureType = 1000092000
	StructureTypePhysicalDeviceMultiviewPerViewAttributesPropertiesNvx StructureType = 1000097000
	StructureTypePipelineViewportSwizzleStateCreateInfoNv              StructureType = 1000098000
	StructureTypePhysicalDeviceDiscardRectangleProperties              StructureType = 1000099000
	StructureTypePipelineDiscardRectangleStateCreateInfo               StructureType = 1000099001
	StructureTypePhysicalDeviceConservativeRasterizationProperties     StructureType = 1000101000
	StructureTypePipelineRasterizationConservativeStateCreateInfo      StructureType = 1000101001
	StructureTypeHdrMetadata                                           StructureType = 1000105000
	StructureTypeAttachmentDescription2                                StructureType = 1000109000
	StructureTypeAttachmentReference2                                  StructureType = 1000109001
	StructureTypeSubpassDescription2                                   StructureType = 1000109002
	StructureTypeSubpassDependency2                                    StructureType = 1000109003
	StructureTypeRenderPassCreateInfo2                                 StructureType = 1000109004
	StructureTypeSubpassBeginInfo                                      StructureType = 1000109005
	StructureTypeSubpassEndInfo                                        StructureType = 1000109006
	StructureTypeSharedPresentSurfaceCapabilities                      StructureType = 1000111000
	StructureTypeImportFenceWin32HandleInfo                            StructureType = 1000114000
	StructureTypeExportFenceWin32HandleInfo                            StructureType = 1000114001
	StructureTypeFenceGetWin32HandleInfo                               StructureType = 1000114002
	StructureTypeImportFenceFdInfo                                     StructureType = 1000115000
	StructureTypeFenceGetFdInfo                                        StructureType = 1000115001
	StructureTypePhysicalDeviceSurfaceInfo2                            StructureType = 1000119000
	StructureTypeSurfaceFormat2                                        StructureType = 1000119002
	StructureTypeDisplayProperties2                                    StructureType = 1000121000
	StructureTypeDisplayPlaneProperties2                               StructureType = 1000121001
	StructureTypeDisplayModeProperties2                                StructureType = 1000121002
	StructureTypeDisplayPlaneInfo2                                     StructureType = 1000121003
	StructureTypeDisplayPlaneCapabilities2                             StructureType = 1000121004
	StructureTypeIosSurfaceCreateInfoMvk                               StructureType = 1000122000
	StructureTypeMacosSurfaceCreateInfoMvk                             StructureType = 1000123000
	StructureTypeDebugUtilsObjectNameInfo                              StructureType = 1000128000
	StructureTypeDebugUtilsObjectTagInfo                               StructureType = 1000128001
	StructureTypeDebugUtilsLabel                                       StructureType = 1000128002
	StructureTypeDebugUtilsMessengerCallbackData                       StructureType = 1000128003
	StructureTypeDebugUtilsMessengerCreateInfo                         StructureType = 1000128004
	StructureTypeAndroidHardwareBufferUsageAndroid                     StructureType = 1000129000
	StructureTypeAndroidHardwareBufferPropertiesAndroid                StructureType = 1000129001
	StructureTypeAndroidHardwareBufferFormatPropertiesAndroid          StructureType = 1000129002
	StructureTypeImportAndroidHardwareBufferInfoAndroid                StructureType = 1000129003
	StructureTypeMemoryGetAndroidHardwareBufferInfoAndroid             StructureType = 1000129004
	StructureTypeExternalFormatAndroid                                 StructureType = 1000129005
	StructureTypePhysicalDeviceSamplerFilterMinmaxProperties           StructureType = 1000130000
	StructureTypeSamplerReductionModeCreateInfo                        StructureType = 1000130001
	StructureTypePhysicalDeviceInlineUniformBlockFeatures              StructureType = 1000138000
	StructureTypePhysicalDeviceInlineUniformBlockProperties            StructureType = 1000138001
	StructureTypeWriteDescriptorSetInlineUniformBlock                  StructureType = 1000138002
	StructureTypeDescriptorPoolInlineUniformBlockCreateInfo            StructureType = 1000138003
	StructureTypeSampleLocationsInfo                                   StructureType = 1000143000
	StructureTypeRenderPassSampleLocationsBeginInfo                    StructureType = 1000143001
	StructureTypePipelineSampleLocationsStateCreateInfo                StructureType = 1000143002
	StructureTypePhysicalDeviceSampleLocationsProperties               StructureType = 1000143003
	StructureTypeMultisampleProperties                                 StructureType = 1000143004
	StructureTypeImageFormatListCreateInfo                             StructureType = 1000147000
	StructureTypePhysicalDeviceBlendOperationAdvancedFeatures          StructureType = 1000148000
	StructureTypePhysicalDeviceBlendOperationAdvancedProperties        StructureType = 1000148001
	StructureTypePipelineColorBlendAdvancedStateCreateInfo             StructureType = 1000148002
	StructureTypePipelineCoverageToColorStateCreateInfoNv              StructureType = 1000149000
	StructureTypePipelineCoverageModulationStateCreateInfoNv           StructureType = 1000152000
	StructureTypeDrmFormatModifierPropertiesList                       StructureType = 1000158000
	StructureTypeDrmFormatModifierProperties                           StructureType = 1000158001
	StructureTypePhysicalDeviceImageDrmFormatModifierInfo              StructureType = 1000158002
	StructureTypeImageDrmFormatModifierListCreateInfo                  StructureType = 1000158003
	StructureTypeImageExcplicitDrmFormatModifierCreateInfo             StructureType = 1000158004
	StructureTypeImageDrmFormatModifierProperties                      StructureType = 1000158005
	StructureTypeValidationCacheCreateInfo                             StructureType = 1000160000
	StructureTypeShaderModuleValidationCacheCreateInfo                 StructureType = 1000160001
	StructureTypeDescriptorSetLayoutBindingFlagsCreateInfo             StructureType = 1000161000
	StructureTypePhysicalDeviceDescriptorIndexingFeatures              StructureType = 1000161001
	StructureTypePhysicalDeviceDescriptorIndexingProperties            StructureType = 1000161002
	StructureTypeDescriptorSetVariableDescriptorCountAllocateInfo      StructureType = 1000161003
	StructureTypeDescriptorSetVariableDescriptorCountLayoutSupport     StructureType = 1000161004
	StructureTypePipelineViewportShadingRateImageStateCreateInfoNv     StructureType = 1000164000
	StructureTypePhysicalDeviceShadingRateImageFeaturesNv              StructureType = 1000164001
	StructureTypePhysicalDeviceShadingRateImagePropertiesNv            StructureType = 1000164002
	StructureTypePipelineViewportCoarseSampleOrderStateCreateInfoNv    StructureType = 1000164005
	StructureTypeRaytracingPipelineCreateInfoNvx                       StructureType = 1000165000
	StructureTypeAccelerationStructureCreateInfoNvx                    StructureType = 1000165001
	StructureTypeGeometryInstanceNvx                                   StructureType = 1000165002
	StructureTypeGeometryNvx                                           StructureType = 1000165003
	StructureTypeGeometryTrianglesNvx                                  StructureType = 1000165004
	StructureTypeGeometryAabbNvx                                       StructureType = 1000165005
	StructureTypeBindAccelerationStructureMemoryInfoNvx                StructureType = 1000165006
	StructureTypeDescriptorAccelerationStructureInfoNvx                StructureType = 1000165007
	StructureTypeAccelerationStructureMemoryRequirementsInfoNvx        StructureType = 1000165008
	StructureTypePhysicalDeviceRaytracingPropertiesNvx                 StructureType = 1000165009
	StructureTypeHitShaderModuleCreateInfoNvx                          StructureType = 1000165010
	StructureTypePhysicalDeviceRepresentativeFragmentTestFeaturesNv    StructureType = 1000166000
	StructureTypePipelineRepresentativeFragmentTestStateCreateInfoNv   StructureType = 1000166001
	StructureTypeDeviceQueueGlobalPriorityCreateInfo                   StructureType = 1000174000
	StructureTypePhysicalDevice8bitStorageFeatures                     StructureType = 1000177000
	StructureTypeImportMemoryHostPointerInfo                           StructureType = 1000178000
	StructureTypeMemoryHostPointerProperties                           StructureType = 1000178001
	StructureTypePhysicalDeviceExternalMemoryHostProperties            StructureType = 1000178002
	StructureTypePhysicalDeviceShaderAtomicInt64Features               StructureType = 1000180000
	StructureTypeCalibratedTimestampInfo                               StructureType = 1000184000
	StructureTypePhysicalDeviceShaderCorePropertiesAmd                 StructureType = 1000185000
	StructureTypePhysicalDeviceVertexAttributeDivisorProperties        StructureType = 1000190000
	StructureTypePipelineVertexInputDivisorStateCreateInfo             StructureType = 1000190001
	StructureTypePhysicalDeviceVertexAttributeDivisorFeatures          StructureType = 1000190002
	StructureTypePhysicalDeviceDriverProperties                        StructureType = 1000196000
	StructureTypePhysicalDeviceComputeShaderDerivativesFeaturesNv      StructureType = 1000201000
	StructureTypePhysicalDeviceMeshShaderFeaturesNv                    StructureType = 1000202000
	StructureTypePhysicalDeviceMeshShaderPropertiesNv                  StructureType = 1000202001
	StructureTypePhysicalDeviceFragmentShaderBarycentricFeaturesNv     StructureType = 1000203000
	StructureTypePhysicalDeviceShaderImageFootprintFeaturesNv          StructureType = 1000204000
	StructureTypePipelineViewportExclusiveScissorStateCreateInfoNv     StructureType = 1000205000
	StructureTypePhysicalDeviceExclusiveScissorFeaturesNv              StructureType = 1000205002
	StructureTypeCheckpointDataNv                                      StructureType = 1000206000
	StructureTypeQueueFamilyCheckpointPropertiesNv                     StructureType = 1000206001
	StructureTypePhysicalDeviceVulkanMemoryModelFeatures               StructureType = 1000211000
	StructureTypePhysicalDevicePciBusInfoProperties                    StructureType = 1000212000
	StructureTypeImagepipeSurfaceCreateInfoFuchsia                     StructureType = 1000214000
	StructureTypeDebugReportCreateInfo                                 StructureType = 1000011000
	StructureTypeBeginRange                                            StructureType = 0
	StructureTypeEndRange                                              StructureType = 48
	StructureTypeRangeSize                                             StructureType = 49
	StructureTypeMaxEnum                                               StructureType = 2147483647
)

StructureType enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkStructureType.html

type SubgroupFeatureFlagBits

type SubgroupFeatureFlagBits int32

SubgroupFeatureFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubgroupFeatureFlagBits.html

const (
	SubgroupFeatureBasicBit           SubgroupFeatureFlagBits = 1
	SubgroupFeatureVoteBit            SubgroupFeatureFlagBits = 2
	SubgroupFeatureArithmeticBit      SubgroupFeatureFlagBits = 4
	SubgroupFeatureBallotBit          SubgroupFeatureFlagBits = 8
	SubgroupFeatureShuffleBit         SubgroupFeatureFlagBits = 16
	SubgroupFeatureShuffleRelativeBit SubgroupFeatureFlagBits = 32
	SubgroupFeatureClusteredBit       SubgroupFeatureFlagBits = 64
	SubgroupFeatureQuadBit            SubgroupFeatureFlagBits = 128
	SubgroupFeaturePartitionedBitNv   SubgroupFeatureFlagBits = 256
	SubgroupFeatureFlagBitsMaxEnum    SubgroupFeatureFlagBits = 2147483647
)

SubgroupFeatureFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubgroupFeatureFlagBits.html

type SubgroupFeatureFlags

type SubgroupFeatureFlags uint32

SubgroupFeatureFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubgroupFeatureFlags.html

type SubmitInfo

type SubmitInfo struct {
	SType                StructureType
	PNext                unsafe.Pointer
	WaitSemaphoreCount   uint32
	PWaitSemaphores      *Semaphore
	PWaitDstStageMask    *PipelineStageFlags
	CommandBufferCount   uint32
	PCommandBuffers      *CommandBuffer
	SignalSemaphoreCount uint32
	PSignalSemaphores    *Semaphore
}

SubmitInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubmitInfo.html

type SubpassContents

type SubpassContents int32

SubpassContents as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassContents.html

const (
	SubpassContentsInline                  SubpassContents = iota
	SubpassContentsSecondaryCommandBuffers SubpassContents = 1
	SubpassContentsBeginRange              SubpassContents = 0
	SubpassContentsEndRange                SubpassContents = 1
	SubpassContentsRangeSize               SubpassContents = 2
	SubpassContentsMaxEnum                 SubpassContents = 2147483647
)

SubpassContents enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassContents.html

type SubpassDependency

type SubpassDependency struct {
	SrcSubpass      uint32
	DstSubpass      uint32
	SrcStageMask    PipelineStageFlags
	DstStageMask    PipelineStageFlags
	SrcAccessMask   AccessFlags
	DstAccessMask   AccessFlags
	DependencyFlags DependencyFlags
}

SubpassDependency as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDependency.html

type SubpassDependency2

type SubpassDependency2 struct {
	SType           StructureType
	PNext           unsafe.Pointer
	SrcSubpass      uint32
	DstSubpass      uint32
	SrcStageMask    PipelineStageFlags
	DstStageMask    PipelineStageFlags
	SrcAccessMask   AccessFlags
	DstAccessMask   AccessFlags
	DependencyFlags DependencyFlags
	ViewOffset      int32
}

SubpassDependency2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassDependency2KHR

type SubpassDescription

type SubpassDescription struct {
	Flags                   SubpassDescriptionFlags
	PipelineBindPoint       PipelineBindPoint
	InputAttachmentCount    uint32
	PInputAttachments       *AttachmentReference
	ColorAttachmentCount    uint32
	PColorAttachments       *AttachmentReference
	PResolveAttachments     *AttachmentReference
	PDepthStencilAttachment *AttachmentReference
	PreserveAttachmentCount uint32
	PPreserveAttachments    *uint32
}

SubpassDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescription.html

type SubpassDescription2

type SubpassDescription2 struct {
	SType                   StructureType
	PNext                   unsafe.Pointer
	Flags                   SubpassDescriptionFlags
	PipelineBindPoint       PipelineBindPoint
	ViewMask                uint32
	InputAttachmentCount    uint32
	PInputAttachments       *AttachmentReference2
	ColorAttachmentCount    uint32
	PColorAttachments       *AttachmentReference2
	PResolveAttachments     *AttachmentReference2
	PDepthStencilAttachment *AttachmentReference2
	PreserveAttachmentCount uint32
	PPreserveAttachments    *uint32
}

SubpassDescription2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSubpassDescription2KHR

type SubpassDescriptionFlagBits

type SubpassDescriptionFlagBits int32

SubpassDescriptionFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html

const (
	SubpassDescriptionPerViewAttributesBitNvx    SubpassDescriptionFlagBits = 1
	SubpassDescriptionPerViewPositionXOnlyBitNvx SubpassDescriptionFlagBits = 2
	SubpassDescriptionFlagBitsMaxEnum            SubpassDescriptionFlagBits = 2147483647
)

SubpassDescriptionFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlagBits.html

type SubpassDescriptionFlags

type SubpassDescriptionFlags uint32

SubpassDescriptionFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassDescriptionFlags.html

type SubpassSampleLocations

type SubpassSampleLocations struct {
	SubpassIndex        uint32
	SampleLocationsInfo SampleLocationsInfo
}

SubpassSampleLocations as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubpassSampleLocationsEXT.html

type SubresourceLayout

type SubresourceLayout struct {
	Offset     DeviceSize
	Size       DeviceSize
	RowPitch   DeviceSize
	ArrayPitch DeviceSize
	DepthPitch DeviceSize
}

SubresourceLayout as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSubresourceLayout.html

type Surface

type Surface C.VkSurfaceKHR

Surface as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceKHR

func SurfaceFromPointer

func SurfaceFromPointer(surface uintptr) Surface

SurfaceFromPointer casts a pointer to a Vulkan surface into a Surface.

type SurfaceCapabilities

type SurfaceCapabilities struct {
	MinImageCount           uint32
	MaxImageCount           uint32
	CurrentExtent           Extent2D
	MinImageExtent          Extent2D
	MaxImageExtent          Extent2D
	MaxImageArrayLayers     uint32
	SupportedTransforms     SurfaceTransformFlags
	CurrentTransform        SurfaceTransformFlagBits
	SupportedCompositeAlpha CompositeAlphaFlags
	SupportedUsageFlags     ImageUsageFlags
}

SurfaceCapabilities as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilitiesKHR

type SurfaceCapabilities2

type SurfaceCapabilities2 struct {
	SType               StructureType
	PNext               unsafe.Pointer
	SurfaceCapabilities SurfaceCapabilities
}

SurfaceCapabilities2 as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceCapabilities2KHR

type SurfaceCounterFlagBits

type SurfaceCounterFlagBits int32

SurfaceCounterFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagBitsEXT.html

const (
	SurfaceCounterVblank          SurfaceCounterFlagBits = 1
	SurfaceCounterFlagBitsMaxEnum SurfaceCounterFlagBits = 2147483647
)

SurfaceCounterFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSurfaceCounterFlagBitsEXT.html

type SurfaceFormat

type SurfaceFormat struct {
	Format     Format
	ColorSpace ColorSpace
}

SurfaceFormat as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceFormatKHR

type SurfaceTransformFlagBits

type SurfaceTransformFlagBits int32

SurfaceTransformFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceTransformFlagBitsKHR

const (
	SurfaceTransformIdentityBit                  SurfaceTransformFlagBits = 1
	SurfaceTransformRotate90Bit                  SurfaceTransformFlagBits = 2
	SurfaceTransformRotate180Bit                 SurfaceTransformFlagBits = 4
	SurfaceTransformRotate270Bit                 SurfaceTransformFlagBits = 8
	SurfaceTransformHorizontalMirrorBit          SurfaceTransformFlagBits = 16
	SurfaceTransformHorizontalMirrorRotate90Bit  SurfaceTransformFlagBits = 32
	SurfaceTransformHorizontalMirrorRotate180Bit SurfaceTransformFlagBits = 64
	SurfaceTransformHorizontalMirrorRotate270Bit SurfaceTransformFlagBits = 128
	SurfaceTransformInheritBit                   SurfaceTransformFlagBits = 256
	SurfaceTransformFlagBitsMaxEnum              SurfaceTransformFlagBits = 2147483647
)

SurfaceTransformFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSurfaceTransformFlagBitsKHR

type SwapchainCounterCreateInfo

type SwapchainCounterCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	SurfaceCounters SurfaceCounterFlags
}

SwapchainCounterCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSwapchainCounterCreateInfoEXT.html

type SwapchainCreateFlagBits

type SwapchainCreateFlagBits int32

SwapchainCreateFlagBits as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateFlagBitsKHR

const (
	SwapchainCreateSplitInstanceBindRegionsBit SwapchainCreateFlagBits = 1
	SwapchainCreateProtectedBit                SwapchainCreateFlagBits = 2
	SwapchainCreateFlagBitsMaxEnum             SwapchainCreateFlagBits = 2147483647
)

SwapchainCreateFlagBits enumeration from https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateFlagBitsKHR

type SwapchainCreateInfo

type SwapchainCreateInfo struct {
	SType                 StructureType
	PNext                 unsafe.Pointer
	Flags                 SwapchainCreateFlags
	Surface               Surface
	MinImageCount         uint32
	ImageFormat           Format
	ImageColorSpace       ColorSpace
	ImageExtent           Extent2D
	ImageArrayLayers      uint32
	ImageUsage            ImageUsageFlags
	ImageSharingMode      SharingMode
	QueueFamilyIndexCount uint32
	PQueueFamilyIndices   *uint32
	PreTransform          SurfaceTransformFlagBits
	CompositeAlpha        CompositeAlphaFlagBits
	PresentMode           PresentMode
	Clipped               Bool32
	OldSwapchain          Swapchain
}

SwapchainCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0-wsi_extensions/xhtml/vkspec.html#VkSwapchainCreateInfoKHR

type SystemAllocationScope

type SystemAllocationScope int32

SystemAllocationScope as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSystemAllocationScope.html

const (
	SystemAllocationScopeCommand    SystemAllocationScope = iota
	SystemAllocationScopeObject     SystemAllocationScope = 1
	SystemAllocationScopeCache      SystemAllocationScope = 2
	SystemAllocationScopeDevice     SystemAllocationScope = 3
	SystemAllocationScopeInstance   SystemAllocationScope = 4
	SystemAllocationScopeBeginRange SystemAllocationScope = 0
	SystemAllocationScopeEndRange   SystemAllocationScope = 4
	SystemAllocationScopeRangeSize  SystemAllocationScope = 5
	SystemAllocationScopeMaxEnum    SystemAllocationScope = 2147483647
)

SystemAllocationScope enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkSystemAllocationScope.html

type TessellationDomainOrigin

type TessellationDomainOrigin int32

TessellationDomainOrigin as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTessellationDomainOrigin.html

const (
	TessellationDomainOriginUpperLeft  TessellationDomainOrigin = iota
	TessellationDomainOriginLowerLeft  TessellationDomainOrigin = 1
	TessellationDomainOriginBeginRange TessellationDomainOrigin = 0
	TessellationDomainOriginEndRange   TessellationDomainOrigin = 1
	TessellationDomainOriginRangeSize  TessellationDomainOrigin = 2
	TessellationDomainOriginMaxEnum    TessellationDomainOrigin = 2147483647
)

TessellationDomainOrigin enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTessellationDomainOrigin.html

type TextureLODGatherFormatPropertiesAMD

type TextureLODGatherFormatPropertiesAMD struct {
	SType                           StructureType
	PNext                           unsafe.Pointer
	SupportsTextureGatherLODBiasAMD Bool32
}

TextureLODGatherFormatPropertiesAMD as declared in https://www.khronos.org/registry/vulkan/specs/1.0-extensions/xhtml/vkspec.html#VkTextureLODGatherFormatPropertiesAMD

type TimeDomain

type TimeDomain int32

TimeDomain as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html

const (
	TimeDomainDevice                  TimeDomain = iota
	TimeDomainClockMonotonic          TimeDomain = 1
	TimeDomainClockMonotonicRaw       TimeDomain = 2
	TimeDomainQueryPerformanceCounter TimeDomain = 3
	TimeDomainBeginRange              TimeDomain = 0
	TimeDomainEndRange                TimeDomain = 3
	TimeDomainRangeSize               TimeDomain = 4
	TimeDomainMaxEnum                 TimeDomain = 2147483647
)

TimeDomain enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkTimeDomainEXT.html

type ValidationCacheCreateFlags

type ValidationCacheCreateFlags uint32

ValidationCacheCreateFlags type as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateFlagsEXT.html

type ValidationCacheCreateInfo

type ValidationCacheCreateInfo struct {
	SType           StructureType
	PNext           unsafe.Pointer
	Flags           ValidationCacheCreateFlags
	InitialDataSize uint
	PInitialData    unsafe.Pointer
}

ValidationCacheCreateInfo as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheCreateInfoEXT.html

type ValidationCacheHeaderVersion

type ValidationCacheHeaderVersion int32

ValidationCacheHeaderVersion as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheHeaderVersionEXT.html

const (
	ValidationCacheHeaderVersionOne        ValidationCacheHeaderVersion = 1
	ValidationCacheHeaderVersionBeginRange ValidationCacheHeaderVersion = 1
	ValidationCacheHeaderVersionEndRange   ValidationCacheHeaderVersion = 1
	ValidationCacheHeaderVersionRangeSize  ValidationCacheHeaderVersion = 1
	ValidationCacheHeaderVersionMaxEnum    ValidationCacheHeaderVersion = 2147483647
)

ValidationCacheHeaderVersion enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCacheHeaderVersionEXT.html

type ValidationCheck

type ValidationCheck int32

ValidationCheck as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCheckEXT.html

const (
	ValidationCheckAll        ValidationCheck = iota
	ValidationCheckShaders    ValidationCheck = 1
	ValidationCheckBeginRange ValidationCheck = 0
	ValidationCheckEndRange   ValidationCheck = 1
	ValidationCheckRangeSize  ValidationCheck = 2
	ValidationCheckMaxEnum    ValidationCheck = 2147483647
)

ValidationCheck enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationCheckEXT.html

type ValidationFlags

type ValidationFlags struct {
	SType                        StructureType
	PNext                        unsafe.Pointer
	DisabledValidationCheckCount uint32
	PDisabledValidationChecks    *ValidationCheck
}

ValidationFlags as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkValidationFlagsEXT.html

type VendorId

type VendorId int32

VendorId as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html

const (
	VendorIdViv        VendorId = 65537
	VendorIdVsi        VendorId = 65538
	VendorIdKazan      VendorId = 65539
	VendorIdBeginRange VendorId = 65537
	VendorIdEndRange   VendorId = 65539
	VendorIdRangeSize  VendorId = 3
	VendorIdMaxEnum    VendorId = 2147483647
)

VendorId enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVendorId.html

type Version

type Version uint32

func (Version) Major

func (v Version) Major() int

func (Version) Minor

func (v Version) Minor() int

func (Version) Patch

func (v Version) Patch() int

func (Version) String

func (v Version) String() string

type VertexInputAttributeDescription

type VertexInputAttributeDescription struct {
	Location uint32
	Binding  uint32
	Format   Format
	Offset   uint32
}

VertexInputAttributeDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputAttributeDescription.html

type VertexInputBindingDescription

type VertexInputBindingDescription struct {
	Binding   uint32
	Stride    uint32
	InputRate VertexInputRate
}

VertexInputBindingDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDescription.html

type VertexInputBindingDivisorDescription

type VertexInputBindingDivisorDescription struct {
	Binding uint32
	Divisor uint32
}

VertexInputBindingDivisorDescription as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputBindingDivisorDescriptionEXT.html

type VertexInputRate

type VertexInputRate int32

VertexInputRate as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html

const (
	VertexInputRateVertex     VertexInputRate = iota
	VertexInputRateInstance   VertexInputRate = 1
	VertexInputRateBeginRange VertexInputRate = 0
	VertexInputRateEndRange   VertexInputRate = 1
	VertexInputRateRangeSize  VertexInputRate = 2
	VertexInputRateMaxEnum    VertexInputRate = 2147483647
)

VertexInputRate enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkVertexInputRate.html

type Viewport

type Viewport struct {
	X        float32
	Y        float32
	Width    float32
	Height   float32
	MinDepth float32
	MaxDepth float32
}

Viewport as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewport.html

type ViewportCoordinateSwizzleNV

type ViewportCoordinateSwizzleNV int32

ViewportCoordinateSwizzleNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportCoordinateSwizzleNV.html

const (
	ViewportCoordinateSwizzlePositiveXNv  ViewportCoordinateSwizzleNV = iota
	ViewportCoordinateSwizzleNegativeXNv  ViewportCoordinateSwizzleNV = 1
	ViewportCoordinateSwizzlePositiveYNv  ViewportCoordinateSwizzleNV = 2
	ViewportCoordinateSwizzleNegativeYNv  ViewportCoordinateSwizzleNV = 3
	ViewportCoordinateSwizzlePositiveZNv  ViewportCoordinateSwizzleNV = 4
	ViewportCoordinateSwizzleNegativeZNv  ViewportCoordinateSwizzleNV = 5
	ViewportCoordinateSwizzlePositiveWNv  ViewportCoordinateSwizzleNV = 6
	ViewportCoordinateSwizzleNegativeWNv  ViewportCoordinateSwizzleNV = 7
	ViewportCoordinateSwizzleBeginRangeNv ViewportCoordinateSwizzleNV = 0
	ViewportCoordinateSwizzleEndRangeNv   ViewportCoordinateSwizzleNV = 7
	ViewportCoordinateSwizzleRangeSizeNv  ViewportCoordinateSwizzleNV = 8
	ViewportCoordinateSwizzleMaxEnumNv    ViewportCoordinateSwizzleNV = 2147483647
)

ViewportCoordinateSwizzleNV enumeration from https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportCoordinateSwizzleNV.html

type ViewportWScalingNV

type ViewportWScalingNV struct {
	Xcoeff float32
	Ycoeff float32
}

ViewportWScalingNV as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkViewportWScalingNV.html

type WriteDescriptorSet

type WriteDescriptorSet struct {
	SType            StructureType
	PNext            unsafe.Pointer
	DstSet           DescriptorSet
	DstBinding       uint32
	DstArrayElement  uint32
	DescriptorCount  uint32
	DescriptorType   DescriptorType
	PImageInfo       *DescriptorImageInfo
	PBufferInfo      *DescriptorBufferInfo
	PTexelBufferView *BufferView
}

WriteDescriptorSet as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSet.html

type WriteDescriptorSetInlineUniformBlock

type WriteDescriptorSetInlineUniformBlock struct {
	SType    StructureType
	PNext    unsafe.Pointer
	DataSize uint32
	PData    unsafe.Pointer
}

WriteDescriptorSetInlineUniformBlock as declared in https://www.khronos.org/registry/vulkan/specs/1.0/man/html/VkWriteDescriptorSetInlineUniformBlockEXT.html

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL