Mercurial > games > semicongine
changeset 18:90e117952f74
add: basic vertex buffer functionality
author | Sam <sam@basx.dev> |
---|---|
date | Thu, 05 Jan 2023 01:16:48 +0700 |
parents | b40466fa446a |
children | b55d6ecde79d |
files | Makefile config.nims src/buffer.nim src/engine.nim src/vulkan.nim |
diffstat | 5 files changed, 294 insertions(+), 206 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile Sun Jan 01 01:00:50 2023 +0700 +++ b/Makefile Thu Jan 05 01:16:48 2023 +0700 @@ -1,5 +1,4 @@ SOURCES := $(shell find src -name '*.nim') -COMPILE_OPTIONS := --path:src --mm:orc --experimental:strictEffects --threads:on --app:gui DEBUG_OPTIONS := --debugger:native --checks:on --assertions:on RELEASE_OPTIONS := -d:release --checks:off --assertions:off WINDOWS_DEBUG_OPTIONS := --cc:vcc --passC:'/MDd' --passL:'ucrtd.lib' @@ -28,21 +27,15 @@ # end of HACK----------------------------------------------------------- -make_dirs: - mkdir -p build/debug/linux - mkdir -p build/release/linux - mkdir -p build/debug/windows - mkdir -p build/release/windows - # build hello_triangle -build/debug/linux/hello_triangle: ${SOURCES} make_dirs - nim c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim -build/release/linux/hello_triangle: ${SOURCES} make_dirs - nim c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim -build/debug/windows/hello_triangle.exe: ${SOURCES} make_dirs build/nim_windows - ${WINE_NIM} c ${COMPILE_OPTIONS} ${DEBUG_OPTIONS} ${WINDOWS_DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim -build/release/windows/hello_triangle.exe: ${SOURCES} make_dirs build/nim_windows - ${WINE_NIM} c ${COMPILE_OPTIONS} ${RELEASE_OPTIONS} ${WINDOWS_RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim +build/debug/linux/hello_triangle: ${SOURCES} + nim build_linux_debug ${DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim +build/release/linux/hello_triangle: ${SOURCES} + nim build_linux_release c ${RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim +build/debug/windows/hello_triangle.exe: ${SOURCES} build/nim_windows + ${WINE_NIM} c ${DEBUG_OPTIONS} ${WINDOWS_DEBUG_OPTIONS} -o:$@ examples/hello_triangle.nim +build/release/windows/hello_triangle.exe: ${SOURCES} build/nim_windows + ${WINE_NIM} c ${RELEASE_OPTIONS} ${WINDOWS_RELEASE_OPTIONS} -o:$@ examples/hello_triangle.nim build_all_linux: build/debug/linux/hello_triangle build/release/linux/hello_triangle build_all_windows: build/debug/windows/hello_triangle.exe build/release/windows/hello_triangle.exe
--- a/config.nims Sun Jan 01 01:00:50 2023 +0700 +++ b/config.nims Thu Jan 05 01:16:48 2023 +0700 @@ -1,1 +1,32 @@ -switch("path", "src") +import os + +const buildbase = "build" + +proc compilerFlags() = + switch("path", "src") + switch("mm", "orc") + switch("experimental", "strictEffects") + switch("threads", "on") + switch("app", "gui") + +proc compilerFlagsDebug() = + switch("debugger", "native") + switch("checks", "on") + switch("assertions", "on") + +proc compilerFlagsRelease() = + switch("define", "release") + switch("checks", "off") + switch("assertions", "off") + +task build_linux_debug, "build linux debug": + compilerFlags() + compilerFlagsDebug() + buildbase.joinPath("debug/linux").mkDir() + setCommand "c" + +task build_linux_release, "build linux release": + compilerFlags() + compilerFlagsRelease() + buildbase.joinPath("release/linux").mkDir() + setCommand "c"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/buffer.nim Thu Jan 05 01:16:48 2023 +0700 @@ -0,0 +1,57 @@ +import ./vulkan +import ./vulkan_helpers + +type + BufferType* = enum + VertexBuffer = VK_BUFFER_USAGE_VERTEX_BUFFER_BIT + Buffer* = object + device*: VkDevice + vkBuffer*: VkBuffer + size*: uint64 + memoryRequirements*: VkMemoryRequirements + memory*: VkDeviceMemory + +proc findMemoryType(buffer: Buffer, physicalDevice: VkPhysicalDevice, properties: VkMemoryPropertyFlags): uint32 = + var physicalProperties: VkPhysicalDeviceMemoryProperties + vkGetPhysicalDeviceMemoryProperties(physicalDevice, addr(physicalProperties)) + + for i in 0'u32 ..< physicalProperties.memoryTypeCount: + if bool(buffer.memoryRequirements.memoryTypeBits and (1'u32 shl i)) and (uint32(physicalProperties.memoryTypes[i].propertyFlags) and uint32(properties)) == uint32(properties): + return i + +proc InitBuffer*(device: VkDevice, physicalDevice: VkPhysicalDevice, size: uint64, bufferType: BufferType): Buffer = + result.device = device + result.size = size + var bufferInfo = VkBufferCreateInfo( + sType: VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, + size: VkDeviceSize(result.size), + usage: VkBufferUsageFlags(bufferType), + sharingMode: VK_SHARING_MODE_EXCLUSIVE, + + ) + checkVkResult vkCreateBuffer(result.device, addr(bufferInfo), nil, addr(result.vkBuffer)) + vkGetBufferMemoryRequirements(result.device, result.vkBuffer, addr(result.memoryRequirements)) + + var allocInfo = VkMemoryAllocateInfo( + sType: VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, + allocationSize: result.memoryRequirements.size, + memoryTypeIndex: result.findMemoryType( + physicalDevice, + VkMemoryPropertyFlags(uint32(VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT) or uint32(VK_MEMORY_PROPERTY_HOST_COHERENT_BIT)) + ) + ) + checkVkResult result.device.vkAllocateMemory(addr(allocInfo), nil, addr(result.memory)) + checkVkResult result.device.vkBindBufferMemory(result.vkBuffer, result.memory, VkDeviceSize(0)) + + +template withMapping*(buffer: Buffer, data: pointer, body: untyped): untyped = + checkVkResult buffer.device.vkMapMemory(buffer.memory, offset=VkDeviceSize(0), VkDeviceSize(buffer.size), VkMemoryMapFlags(0), addr(data)); + body + buffer.device.vkUnmapMemory(buffer.memory); + + +proc `=copy`(a: var Buffer, b: Buffer){.error.} + +proc `=destroy`*(buffer: var Buffer) = + vkDestroyBuffer(buffer.device, buffer.vkBuffer, nil) + vkFreeMemory(buffer.device, buffer.memory, nil);
--- a/src/engine.nim Sun Jan 01 01:00:50 2023 +0700 +++ b/src/engine.nim Thu Jan 05 01:16:48 2023 +0700 @@ -11,6 +11,7 @@ import ./math/vector import ./shader import ./vertex +import ./buffer import ./glslang/glslang @@ -26,35 +27,26 @@ position: VertexAttribute[Vec2[float32]] color: VertexAttribute[Vec3[float32]] -const vertices = [ - (Vec2([ 0.0'f32, -0.5'f32]), Vec3([1.0'f32, 0.0'f32, 0.0'f32])), - (Vec2([ 0.5'f32, 0.5'f32]), Vec3([0.0'f32, 1.0'f32, 0.0'f32])), - (Vec2([-0.5'f32, 0.5'f32]), Vec3([0.0'f32, 0.0'f32, 1.0'f32])) -] - - -proc getBindingDescription(binding: int): auto = - VkVertexInputBindingDescription( - binding: uint32(binding), - stride: uint32(sizeof(vertices[0])), - inputRate: VK_VERTEX_INPUT_RATE_VERTEX, # VK_VERTEX_INPUT_RATE_INSTANCE for instances - ) +var vertices = ( + [ + Vec2([-0.5'f32, -0.5'f32]), + Vec2([ 0.5'f32, 0.5'f32]), + Vec2([-0.5'f32, 0.5'f32]), -proc getAttributeDescriptions(binding: int): auto = + Vec2([ 0.0'f32, -0.7'f32]), + Vec2([ 0.6'f32, 0.1'f32]), + Vec2([ 0.3'f32, 0.4'f32]), + ], [ - VkVertexInputAttributeDescription( - binding: 0'u32, - location: 0, - format: VK_FORMAT_R32G32_SFLOAT, - offset: 0, - ), - VkVertexInputAttributeDescription( - binding: 0'u32, - location: 1, - format: VK_FORMAT_R32G32B32_SFLOAT, - offset: uint32(sizeof(Vec2)), # use offsetOf? - ), + Vec3([1.0'f32, 1.0'f32, 0.0'f32]), + Vec3([0.0'f32, 1.0'f32, 0.0'f32]), + Vec3([0.0'f32, 1.0'f32, 1.0'f32]), + + Vec3([1.0'f32, 1.0'f32, 0.0'f32]), + Vec3([1.0'f32, 0.0'f32, 0.0'f32]), + Vec3([0.0'f32, 1.0'f32, 1.0'f32]), ] +) var vertexShaderCode = """ #version 450 @@ -81,10 +73,10 @@ type Device = object + device: VkDevice physicalDevice: PhysicalDevice graphicsQueueFamily: uint32 presentationQueueFamily: uint32 - device: VkDevice graphicsQueue: VkQueue presentationQueue: VkQueue Swapchain = object @@ -123,6 +115,8 @@ imageAvailableSemaphores*: array[MAX_FRAMES_IN_FLIGHT, VkSemaphore] renderFinishedSemaphores*: array[MAX_FRAMES_IN_FLIGHT, VkSemaphore] inFlightFences*: array[MAX_FRAMES_IN_FLIGHT, VkFence] + bufferA*: Buffer + bufferB*: Buffer Engine* = object vulkan*: Vulkan window: NativeWindow @@ -542,9 +536,16 @@ result.vulkan.renderFinishedSemaphores, result.vulkan.inFlightFences, ) = result.vulkan.device.device.setupSyncPrimitives() + result.vulkan.bufferA = result.vulkan.device.device.InitBuffer(result.vulkan.device.physicalDevice.device, uint64(sizeof(vertices[0])), VertexBuffer) + result.vulkan.bufferB = result.vulkan.device.device.InitBuffer(result.vulkan.device.physicalDevice.device, uint64(sizeof(vertices[1])), VertexBuffer) + var d: pointer + result.vulkan.bufferA.withMapping(d): + copyMem(d, addr(vertices[0]), sizeof(vertices[0])) + result.vulkan.bufferB.withMapping(d): + copyMem(d, addr(vertices[1]), sizeof(vertices[1])) -proc recordCommandBuffer(renderPass: VkRenderPass, pipeline: VkPipeline, commandBuffer: VkCommandBuffer, framebuffer: VkFramebuffer, frameDimension: VkExtent2D) = +proc recordCommandBuffer(renderPass: VkRenderPass, pipeline: VkPipeline, commandBuffer: VkCommandBuffer, framebuffer: VkFramebuffer, frameDimension: VkExtent2D, engine: var Engine) = var beginInfo = VkCommandBufferBeginInfo( sType: VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, @@ -576,14 +577,19 @@ ) checkVkResult commandBuffer.vkBeginCommandBuffer(addr(beginInfo)) commandBuffer.vkCmdBeginRenderPass(addr(renderPassInfo), VK_SUBPASS_CONTENTS_INLINE) - commandBuffer.vkCmdBindPipeline(VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline) commandBuffer.vkCmdSetViewport(firstViewport=0, viewportCount=1, addr(viewport)) commandBuffer.vkCmdSetScissor(firstScissor=0, scissorCount=1, addr(scissor)) - commandBuffer.vkCmdDraw(vertexCount=3, instanceCount=1, firstVertex=0, firstInstance=0) + commandBuffer.vkCmdBindPipeline(VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline) + + var + vertexBuffers = [engine.vulkan.bufferA.vkBuffer, engine.vulkan.bufferB.vkBuffer] + offsets = [VkDeviceSize(0), VkDeviceSize(0)] + commandBuffer.vkCmdBindVertexBuffers(firstBinding=0'u32, bindingCount=2'u32, pBuffers=addr(vertexBuffers[0]), pOffsets=addr(offsets[0])) + commandBuffer.vkCmdDraw(vertexCount=uint32(vertices[0].len), instanceCount=1'u32, firstVertex=0'u32, firstInstance=0'u32) commandBuffer.vkCmdEndRenderPass() checkVkResult commandBuffer.vkEndCommandBuffer() -proc drawFrame(window: NativeWindow, vulkan: var Vulkan, currentFrame: int, resized: bool) = +proc drawFrame(window: NativeWindow, vulkan: var Vulkan, currentFrame: int, resized: bool, engine: var Engine) = checkVkResult vulkan.device.device.vkWaitForFences(1, addr(vulkan.inFlightFences[currentFrame]), VK_TRUE, high(uint64)) var bufferImageIndex: uint32 let nextImageResult = vulkan.device.device.vkAcquireNextImageKHR( @@ -601,7 +607,7 @@ checkVkResult vulkan.device.device.vkResetFences(1, addr(vulkan.inFlightFences[currentFrame])) checkVkResult vulkan.commandBuffers[currentFrame].vkResetCommandBuffer(VkCommandBufferResetFlags(0)) - vulkan.renderPass.recordCommandBuffer(vulkan.pipeline.pipeline, vulkan.commandBuffers[currentFrame], vulkan.framebuffers[bufferImageIndex], vulkan.frameDimension) + vulkan.renderPass.recordCommandBuffer(vulkan.pipeline.pipeline, vulkan.commandBuffers[currentFrame], vulkan.framebuffers[bufferImageIndex], vulkan.frameDimension, engine) var waitSemaphores = [vulkan.imageAvailableSemaphores[currentFrame]] waitStages = [VkPipelineStageFlags(VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT)] @@ -653,12 +659,14 @@ killed = true else: discard - engine.window.drawFrame(engine.vulkan, currentFrame, resized) + engine.window.drawFrame(engine.vulkan, currentFrame, resized, engine) resized = false currentFrame = (currentFrame + 1) mod MAX_FRAMES_IN_FLIGHT; checkVkResult engine.vulkan.device.device.vkDeviceWaitIdle() -proc trash*(engine: Engine) = +proc trash*(engine: var Engine) = + `=destroy` engine.vulkan.bufferA + `=destroy` engine.vulkan.bufferB engine.vulkan.device.device.trash(engine.vulkan.swapchain, engine.vulkan.framebuffers) checkVkResult engine.vulkan.device.device.vkDeviceWaitIdle()
--- a/src/vulkan.nim Sun Jan 01 01:00:50 2023 +0700 +++ b/src/vulkan.nim Thu Jan 05 01:16:48 2023 +0700 @@ -17,7 +17,6 @@ when defined(windows): {. emit: """#define VK_USE_PLATFORM_WIN32_KHR""" .} - # {.passl: gorge("pkg-config --libs vulkan").} const vkDLL = "vulkan-1.dll" elif defined(linux): {.passl: gorge("pkg-config --libs vulkan").} @@ -78,7 +77,7 @@ VK_SHADER_UNUSED_NV* = VK_SHADER_UNUSED_KHR type - VkImageLayout* {.size: int32.sizeof.} = enum + VkImageLayout* {.size: sizeof(cint).} = enum VK_IMAGE_LAYOUT_UNDEFINED = 0 VK_IMAGE_LAYOUT_GENERAL = 1 VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL = 2 @@ -89,21 +88,21 @@ VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL = 7 VK_IMAGE_LAYOUT_PREINITIALIZED = 8 VK_IMAGE_LAYOUT_PRESENT_SRC_KHR = 1000001002, - VkAttachmentLoadOp* {.size: int32.sizeof.} = enum + VkAttachmentLoadOp* {.size: sizeof(cint).} = enum VK_ATTACHMENT_LOAD_OP_LOAD = 0 VK_ATTACHMENT_LOAD_OP_CLEAR = 1 VK_ATTACHMENT_LOAD_OP_DONT_CARE = 2 - VkAttachmentStoreOp* {.size: int32.sizeof.} = enum + VkAttachmentStoreOp* {.size: sizeof(cint).} = enum VK_ATTACHMENT_STORE_OP_STORE = 0 VK_ATTACHMENT_STORE_OP_DONT_CARE = 1 - VkImageType* {.size: int32.sizeof.} = enum + VkImageType* {.size: sizeof(cint).} = enum VK_IMAGE_TYPE_1D = 0 VK_IMAGE_TYPE_2D = 1 VK_IMAGE_TYPE_3D = 2 - VkImageTiling* {.size: int32.sizeof.} = enum + VkImageTiling* {.size: sizeof(cint).} = enum VK_IMAGE_TILING_OPTIMAL = 0 VK_IMAGE_TILING_LINEAR = 1 - VkImageViewType* {.size: int32.sizeof.} = enum + VkImageViewType* {.size: sizeof(cint).} = enum VK_IMAGE_VIEW_TYPE_1D = 0 VK_IMAGE_VIEW_TYPE_2D = 1 VK_IMAGE_VIEW_TYPE_3D = 2 @@ -111,10 +110,10 @@ VK_IMAGE_VIEW_TYPE_1D_ARRAY = 4 VK_IMAGE_VIEW_TYPE_2D_ARRAY = 5 VK_IMAGE_VIEW_TYPE_CUBE_ARRAY = 6 - VkCommandBufferLevel* {.size: int32.sizeof.} = enum + VkCommandBufferLevel* {.size: sizeof(cint).} = enum VK_COMMAND_BUFFER_LEVEL_PRIMARY = 0 VK_COMMAND_BUFFER_LEVEL_SECONDARY = 1 - VkComponentSwizzle* {.size: int32.sizeof.} = enum + VkComponentSwizzle* {.size: sizeof(cint).} = enum VK_COMPONENT_SWIZZLE_IDENTITY = 0 VK_COMPONENT_SWIZZLE_ZERO = 1 VK_COMPONENT_SWIZZLE_ONE = 2 @@ -122,7 +121,7 @@ VK_COMPONENT_SWIZZLE_G = 4 VK_COMPONENT_SWIZZLE_B = 5 VK_COMPONENT_SWIZZLE_A = 6 - VkDescriptorType* {.size: int32.sizeof.} = enum + VkDescriptorType* {.size: sizeof(cint).} = enum VK_DESCRIPTOR_TYPE_SAMPLER = 0 VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER = 1 VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE = 2 @@ -134,23 +133,23 @@ VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC = 8 VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC = 9 VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT = 10 - VkQueryType* {.size: int32.sizeof.} = enum + VkQueryType* {.size: sizeof(cint).} = enum VK_QUERY_TYPE_OCCLUSION = 0 VK_QUERY_TYPE_PIPELINE_STATISTICS = 1 VK_QUERY_TYPE_TIMESTAMP = 2 - VkBorderColor* {.size: int32.sizeof.} = enum + VkBorderColor* {.size: sizeof(cint).} = enum VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0 VK_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1 VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2 VK_BORDER_COLOR_INT_OPAQUE_BLACK = 3 VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4 VK_BORDER_COLOR_INT_OPAQUE_WHITE = 5 - VkPipelineBindPoint* {.size: int32.sizeof.} = enum + VkPipelineBindPoint* {.size: sizeof(cint).} = enum VK_PIPELINE_BIND_POINT_GRAPHICS = 0 VK_PIPELINE_BIND_POINT_COMPUTE = 1 - VkPipelineCacheHeaderVersion* {.size: int32.sizeof.} = enum + VkPipelineCacheHeaderVersion* {.size: sizeof(cint).} = enum VK_PIPELINE_CACHE_HEADER_VERSION_ONE = 1 - VkPrimitiveTopology* {.size: int32.sizeof.} = enum + VkPrimitiveTopology* {.size: sizeof(cint).} = enum VK_PRIMITIVE_TOPOLOGY_POINT_LIST = 0 VK_PRIMITIVE_TOPOLOGY_LINE_LIST = 1 VK_PRIMITIVE_TOPOLOGY_LINE_STRIP = 2 @@ -162,24 +161,24 @@ VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY = 8 VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = 9 VK_PRIMITIVE_TOPOLOGY_PATCH_LIST = 10 - VkSharingMode* {.size: int32.sizeof.} = enum + VkSharingMode* {.size: sizeof(cint).} = enum VK_SHARING_MODE_EXCLUSIVE = 0 VK_SHARING_MODE_CONCURRENT = 1 - VkIndexType* {.size: int32.sizeof.} = enum + VkIndexType* {.size: sizeof(cint).} = enum VK_INDEX_TYPE_UINT16 = 0 VK_INDEX_TYPE_UINT32 = 1 - VkFilter* {.size: int32.sizeof.} = enum + VkFilter* {.size: sizeof(cint).} = enum VK_FILTER_NEAREST = 0 VK_FILTER_LINEAR = 1 - VkSamplerMipmapMode* {.size: int32.sizeof.} = enum + VkSamplerMipmapMode* {.size: sizeof(cint).} = enum VK_SAMPLER_MIPMAP_MODE_NEAREST = 0 VK_SAMPLER_MIPMAP_MODE_LINEAR = 1 - VkSamplerAddressMode* {.size: int32.sizeof.} = enum + VkSamplerAddressMode* {.size: sizeof(cint).} = enum VK_SAMPLER_ADDRESS_MODE_REPEAT = 0 VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT = 1 VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE = 2 VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER = 3 - VkCompareOp* {.size: int32.sizeof.} = enum + VkCompareOp* {.size: sizeof(cint).} = enum VK_COMPARE_OP_NEVER = 0 VK_COMPARE_OP_LESS = 1 VK_COMPARE_OP_EQUAL = 2 @@ -188,19 +187,19 @@ VK_COMPARE_OP_NOT_EQUAL = 5 VK_COMPARE_OP_GREATER_OR_EQUAL = 6 VK_COMPARE_OP_ALWAYS = 7 - VkPolygonMode* {.size: int32.sizeof.} = enum + VkPolygonMode* {.size: sizeof(cint).} = enum VK_POLYGON_MODE_FILL = 0 VK_POLYGON_MODE_LINE = 1 VK_POLYGON_MODE_POINT = 2 - VkCullModeFlagBits* {.size: int32.sizeof.} = enum + VkCullModeFlagBits* {.size: sizeof(cint).} = enum VK_CULL_MODE_NONE = 0 VK_CULL_MODE_FRONT_BIT = 1 VK_CULL_MODE_BACK_BIT = 2 VK_CULL_MODE_FRONT_AND_BACK = 3 - VkFrontFace* {.size: int32.sizeof.} = enum + VkFrontFace* {.size: sizeof(cint).} = enum VK_FRONT_FACE_COUNTER_CLOCKWISE = 0 VK_FRONT_FACE_CLOCKWISE = 1 - VkBlendFactor* {.size: int32.sizeof.} = enum + VkBlendFactor* {.size: sizeof(cint).} = enum VK_BLEND_FACTOR_ZERO = 0 VK_BLEND_FACTOR_ONE = 1 VK_BLEND_FACTOR_SRC_COLOR = 2 @@ -220,13 +219,13 @@ VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16 VK_BLEND_FACTOR_SRC1_ALPHA = 17 VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18 - VkBlendOp* {.size: int32.sizeof.} = enum + VkBlendOp* {.size: sizeof(cint).} = enum VK_BLEND_OP_ADD = 0 VK_BLEND_OP_SUBTRACT = 1 VK_BLEND_OP_REVERSE_SUBTRACT = 2 VK_BLEND_OP_MIN = 3 VK_BLEND_OP_MAX = 4 - VkStencilOp* {.size: int32.sizeof.} = enum + VkStencilOp* {.size: sizeof(cint).} = enum VK_STENCIL_OP_KEEP = 0 VK_STENCIL_OP_ZERO = 1 VK_STENCIL_OP_REPLACE = 2 @@ -235,7 +234,7 @@ VK_STENCIL_OP_INVERT = 5 VK_STENCIL_OP_INCREMENT_AND_WRAP = 6 VK_STENCIL_OP_DECREMENT_AND_WRAP = 7 - VkLogicOp* {.size: int32.sizeof.} = enum + VkLogicOp* {.size: sizeof(cint).} = enum VK_LOGIC_OP_CLEAR = 0 VK_LOGIC_OP_AND = 1 VK_LOGIC_OP_AND_REVERSE = 2 @@ -252,24 +251,24 @@ VK_LOGIC_OP_OR_INVERTED = 13 VK_LOGIC_OP_NAND = 14 VK_LOGIC_OP_SET = 15 - VkInternalAllocationType* {.size: int32.sizeof.} = enum + VkInternalAllocationType* {.size: sizeof(cint).} = enum VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE = 0 - VkSystemAllocationScope* {.size: int32.sizeof.} = enum + VkSystemAllocationScope* {.size: sizeof(cint).} = enum VK_SYSTEM_ALLOCATION_SCOPE_COMMAND = 0 VK_SYSTEM_ALLOCATION_SCOPE_OBJECT = 1 VK_SYSTEM_ALLOCATION_SCOPE_CACHE = 2 VK_SYSTEM_ALLOCATION_SCOPE_DEVICE = 3 VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE = 4 - VkPhysicalDeviceType* {.size: int32.sizeof.} = enum + VkPhysicalDeviceType* {.size: sizeof(cint).} = enum VK_PHYSICAL_DEVICE_TYPE_OTHER = 0 VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU = 1 VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU = 2 VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU = 3 VK_PHYSICAL_DEVICE_TYPE_CPU = 4 - VkVertexInputRate* {.size: int32.sizeof.} = enum + VkVertexInputRate* {.size: sizeof(cint).} = enum VK_VERTEX_INPUT_RATE_VERTEX = 0 VK_VERTEX_INPUT_RATE_INSTANCE = 1 - VkFormat* {.size: int32.sizeof.} = enum + VkFormat* {.size: sizeof(cint).} = enum VK_FORMAT_UNDEFINED = 0 VK_FORMAT_R4G4_UNORM_PACK8 = 1 VK_FORMAT_R4G4B4A4_UNORM_PACK16 = 2 @@ -455,7 +454,7 @@ VK_FORMAT_ASTC_12x10_SRGB_BLOCK = 182 VK_FORMAT_ASTC_12x12_UNORM_BLOCK = 183 VK_FORMAT_ASTC_12x12_SRGB_BLOCK = 184 - VkStructureType* {.size: int32.sizeof.} = enum + VkStructureType* {.size: sizeof(cint).} = enum VK_STRUCTURE_TYPE_APPLICATION_INFO = 0 VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO = 1 VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO = 2 @@ -510,10 +509,10 @@ VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR = 1000004000 # added by sam VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR = 1000009000 # added by sam VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT = 1000128004 # added by sam - VkSubpassContents* {.size: int32.sizeof.} = enum + VkSubpassContents* {.size: sizeof(cint).} = enum VK_SUBPASS_CONTENTS_INLINE = 0 VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS = 1 - VkResult* {.size: int32.sizeof.} = enum + VkResult* {.size: sizeof(cint).} = enum VK_ERROR_OUT_OF_DATE_KHR = -1000001004 # added by sam VK_ERROR_UNKNOWN = -13 VK_ERROR_FRAGMENTED_POOL = -12 @@ -535,7 +534,7 @@ VK_EVENT_RESET = 4 VK_INCOMPLETE = 5 VK_SUBOPTIMAL_KHR = 1000001003, # added by sam - VkDynamicState* {.size: int32.sizeof.} = enum + VkDynamicState* {.size: sizeof(cint).} = enum VK_DYNAMIC_STATE_VIEWPORT = 0 VK_DYNAMIC_STATE_SCISSOR = 1 VK_DYNAMIC_STATE_LINE_WIDTH = 2 @@ -545,9 +544,9 @@ VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6 VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7 VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8 - VkDescriptorUpdateTemplateType* {.size: int32.sizeof.} = enum + VkDescriptorUpdateTemplateType* {.size: sizeof(cint).} = enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET = 0 - VkObjectType* {.size: int32.sizeof.} = enum + VkObjectType* {.size: sizeof(cint).} = enum VK_OBJECT_TYPE_UNKNOWN = 0 VK_OBJECT_TYPE_INSTANCE = 1 VK_OBJECT_TYPE_PHYSICAL_DEVICE = 2 @@ -574,20 +573,20 @@ VK_OBJECT_TYPE_DESCRIPTOR_SET = 23 VK_OBJECT_TYPE_FRAMEBUFFER = 24 VK_OBJECT_TYPE_COMMAND_POOL = 25 - VkQueueFlagBits* {.size: int32.sizeof.} = enum + VkQueueFlagBits* {.size: sizeof(cint).} = enum VK_QUEUE_GRAPHICS_BIT = 1 VK_QUEUE_COMPUTE_BIT = 2 VK_QUEUE_TRANSFER_BIT = 4 VK_QUEUE_SPARSE_BINDING_BIT = 8 - VkMemoryPropertyFlagBits* {.size: int32.sizeof.} = enum + VkMemoryPropertyFlagBits* {.size: sizeof(cint).} = enum VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT = 1 VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT = 2 VK_MEMORY_PROPERTY_HOST_COHERENT_BIT = 4 VK_MEMORY_PROPERTY_HOST_CACHED_BIT = 8 VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT = 16 - VkMemoryHeapFlagBits* {.size: int32.sizeof.} = enum + VkMemoryHeapFlagBits* {.size: sizeof(cint).} = enum VK_MEMORY_HEAP_DEVICE_LOCAL_BIT = 1 - VkAccessFlagBits* {.size: int32.sizeof.} = enum + VkAccessFlagBits* {.size: sizeof(cint).} = enum VK_ACCESS_INDIRECT_COMMAND_READ_BIT = 1 VK_ACCESS_INDEX_READ_BIT = 2 VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT = 4 @@ -605,7 +604,7 @@ VK_ACCESS_HOST_WRITE_BIT = 16384 VK_ACCESS_MEMORY_READ_BIT = 32768 VK_ACCESS_MEMORY_WRITE_BIT = 65536 - VkBufferUsageFlagBits* {.size: int32.sizeof.} = enum + VkBufferUsageFlagBits* {.size: sizeof(cint).} = enum VK_BUFFER_USAGE_TRANSFER_SRC_BIT = 1 VK_BUFFER_USAGE_TRANSFER_DST_BIT = 2 VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT = 4 @@ -615,11 +614,11 @@ VK_BUFFER_USAGE_INDEX_BUFFER_BIT = 64 VK_BUFFER_USAGE_VERTEX_BUFFER_BIT = 128 VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT = 256 - VkBufferCreateFlagBits* {.size: int32.sizeof.} = enum + VkBufferCreateFlagBits* {.size: sizeof(cint).} = enum VK_BUFFER_CREATE_SPARSE_BINDING_BIT = 1 VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT = 2 VK_BUFFER_CREATE_SPARSE_ALIASED_BIT = 4 - VkShaderStageFlagBits* {.size: int32.sizeof.} = enum + VkShaderStageFlagBits* {.size: sizeof(cint).} = enum VK_SHADER_STAGE_VERTEX_BIT = 1 VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT = 2 VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = 4 @@ -628,7 +627,7 @@ VK_SHADER_STAGE_ALL_GRAPHICS = 31 VK_SHADER_STAGE_COMPUTE_BIT = 32 VK_SHADER_STAGE_ALL = 2147483647 - VkImageUsageFlagBits* {.size: int32.sizeof.} = enum + VkImageUsageFlagBits* {.size: sizeof(cint).} = enum VK_IMAGE_USAGE_TRANSFER_SRC_BIT = 1 VK_IMAGE_USAGE_TRANSFER_DST_BIT = 2 VK_IMAGE_USAGE_SAMPLED_BIT = 4 @@ -637,24 +636,24 @@ VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 32 VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT = 64 VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT = 128 - VkImageCreateFlagBits* {.size: int32.sizeof.} = enum + VkImageCreateFlagBits* {.size: sizeof(cint).} = enum VK_IMAGE_CREATE_SPARSE_BINDING_BIT = 1 VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT = 2 VK_IMAGE_CREATE_SPARSE_ALIASED_BIT = 4 VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT = 8 VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT = 16 - VkPipelineCreateFlagBits* {.size: int32.sizeof.} = enum + VkPipelineCreateFlagBits* {.size: sizeof(cint).} = enum VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT = 1 VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT = 2 VK_PIPELINE_CREATE_DERIVATIVE_BIT = 4 - VkColorComponentFlagBits* {.size: int32.sizeof.} = enum + VkColorComponentFlagBits* {.size: sizeof(cint).} = enum VK_COLOR_COMPONENT_R_BIT = 1 VK_COLOR_COMPONENT_G_BIT = 2 VK_COLOR_COMPONENT_B_BIT = 4 VK_COLOR_COMPONENT_A_BIT = 8 - VkFenceCreateFlagBits* {.size: int32.sizeof.} = enum + VkFenceCreateFlagBits* {.size: sizeof(cint).} = enum VK_FENCE_CREATE_SIGNALED_BIT = 1 - VkFormatFeatureFlagBits* {.size: int32.sizeof.} = enum + VkFormatFeatureFlagBits* {.size: sizeof(cint).} = enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT = 1 VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT = 2 VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT = 4 @@ -668,18 +667,18 @@ VK_FORMAT_FEATURE_BLIT_SRC_BIT = 1024 VK_FORMAT_FEATURE_BLIT_DST_BIT = 2048 VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT = 4096 - VkQueryControlFlagBits* {.size: int32.sizeof.} = enum + VkQueryControlFlagBits* {.size: sizeof(cint).} = enum VK_QUERY_CONTROL_PRECISE_BIT = 1 - VkQueryResultFlagBits* {.size: int32.sizeof.} = enum + VkQueryResultFlagBits* {.size: sizeof(cint).} = enum VK_QUERY_RESULT_64_BIT = 1 VK_QUERY_RESULT_WAIT_BIT = 2 VK_QUERY_RESULT_WITH_AVAILABILITY_BIT = 4 VK_QUERY_RESULT_PARTIAL_BIT = 8 - VkCommandBufferUsageFlagBits* {.size: int32.sizeof.} = enum + VkCommandBufferUsageFlagBits* {.size: sizeof(cint).} = enum VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT = 1 VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT = 2 VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT = 4 - VkQueryPipelineStatisticFlagBits* {.size: int32.sizeof.} = enum + VkQueryPipelineStatisticFlagBits* {.size: sizeof(cint).} = enum VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT = 1 VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT = 2 VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT = 4 @@ -691,18 +690,18 @@ VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT = 256 VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT = 512 VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT = 1024 - VkImageAspectFlagBits* {.size: int32.sizeof.} = enum + VkImageAspectFlagBits* {.size: sizeof(cint).} = enum VK_IMAGE_ASPECT_COLOR_BIT = 1 VK_IMAGE_ASPECT_DEPTH_BIT = 2 VK_IMAGE_ASPECT_STENCIL_BIT = 4 VK_IMAGE_ASPECT_METADATA_BIT = 8 - VkSparseImageFormatFlagBits* {.size: int32.sizeof.} = enum + VkSparseImageFormatFlagBits* {.size: sizeof(cint).} = enum VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT = 1 VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT = 2 VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT = 4 - VkSparseMemoryBindFlagBits* {.size: int32.sizeof.} = enum + VkSparseMemoryBindFlagBits* {.size: sizeof(cint).} = enum VK_SPARSE_MEMORY_BIND_METADATA_BIT = 1 - VkPipelineStageFlagBits* {.size: int32.sizeof.} = enum + VkPipelineStageFlagBits* {.size: sizeof(cint).} = enum VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT = 1 VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT = 2 VK_PIPELINE_STAGE_VERTEX_INPUT_BIT = 4 @@ -720,14 +719,14 @@ VK_PIPELINE_STAGE_HOST_BIT = 16384 VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT = 32768 VK_PIPELINE_STAGE_ALL_COMMANDS_BIT = 65536 - VkCommandPoolCreateFlagBits* {.size: int32.sizeof.} = enum + VkCommandPoolCreateFlagBits* {.size: sizeof(cint).} = enum VK_COMMAND_POOL_CREATE_TRANSIENT_BIT = 1 VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT = 2 - VkCommandPoolResetFlagBits* {.size: int32.sizeof.} = enum + VkCommandPoolResetFlagBits* {.size: sizeof(cint).} = enum VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = 1 - VkCommandBufferResetFlagBits* {.size: int32.sizeof.} = enum + VkCommandBufferResetFlagBits* {.size: sizeof(cint).} = enum VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT = 1 - VkSampleCountFlagBits* {.size: int32.sizeof.} = enum + VkSampleCountFlagBits* {.size: sizeof(cint).} = enum VK_SAMPLE_COUNT_1_BIT = 1 VK_SAMPLE_COUNT_2_BIT = 2 VK_SAMPLE_COUNT_4_BIT = 4 @@ -735,39 +734,39 @@ VK_SAMPLE_COUNT_16_BIT = 16 VK_SAMPLE_COUNT_32_BIT = 32 VK_SAMPLE_COUNT_64_BIT = 64 - VkAttachmentDescriptionFlagBits* {.size: int32.sizeof.} = enum + VkAttachmentDescriptionFlagBits* {.size: sizeof(cint).} = enum VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT = 1 - VkStencilFaceFlagBits* {.size: int32.sizeof.} = enum + VkStencilFaceFlagBits* {.size: sizeof(cint).} = enum VK_STENCIL_FACE_FRONT_BIT = 1 VK_STENCIL_FACE_BACK_BIT = 2 VK_STENCIL_FACE_FRONT_AND_BACK = 3 - VkDescriptorPoolCreateFlagBits* {.size: int32.sizeof.} = enum + VkDescriptorPoolCreateFlagBits* {.size: sizeof(cint).} = enum VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 1 - VkDependencyFlagBits* {.size: int32.sizeof.} = enum + VkDependencyFlagBits* {.size: sizeof(cint).} = enum VK_DEPENDENCY_BY_REGION_BIT = 1 - VkSemaphoreType* {.size: int32.sizeof.} = enum + VkSemaphoreType* {.size: sizeof(cint).} = enum VK_SEMAPHORE_TYPE_BINARY = 0 VK_SEMAPHORE_TYPE_TIMELINE = 1 - VkSemaphoreWaitFlagBits* {.size: int32.sizeof.} = enum + VkSemaphoreWaitFlagBits* {.size: sizeof(cint).} = enum VK_SEMAPHORE_WAIT_ANY_BIT = 1 - VkPresentModeKHR* {.size: int32.sizeof.} = enum + VkPresentModeKHR* {.size: sizeof(cint).} = enum VK_PRESENT_MODE_IMMEDIATE_KHR = 0 VK_PRESENT_MODE_MAILBOX_KHR = 1 VK_PRESENT_MODE_FIFO_KHR = 2 VK_PRESENT_MODE_FIFO_RELAXED_KHR = 3 - VkColorSpaceKHR* {.size: int32.sizeof.} = enum + VkColorSpaceKHR* {.size: sizeof(cint).} = enum VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0 - VkDisplayPlaneAlphaFlagBitsKHR* {.size: int32.sizeof.} = enum + VkDisplayPlaneAlphaFlagBitsKHR* {.size: sizeof(cint).} = enum VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR = 1 VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR = 2 VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR = 4 VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR = 8 - VkCompositeAlphaFlagBitsKHR* {.size: int32.sizeof.} = enum + VkCompositeAlphaFlagBitsKHR* {.size: sizeof(cint).} = enum VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR = 1 VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR = 2 VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR = 4 VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR = 8 - VkSurfaceTransformFlagBitsKHR* {.size: int32.sizeof.} = enum + VkSurfaceTransformFlagBitsKHR* {.size: sizeof(cint).} = enum VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR = 1 VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR = 2 VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR = 4 @@ -777,20 +776,20 @@ VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR = 64 VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR = 128 VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR = 256 - VkSwapchainImageUsageFlagBitsANDROID* {.size: int32.sizeof.} = enum + VkSwapchainImageUsageFlagBitsANDROID* {.size: sizeof(cint).} = enum VK_SWAPCHAIN_IMAGE_USAGE_SHARED_BIT_ANDROID = 1 - VkTimeDomainEXT* {.size: int32.sizeof.} = enum + VkTimeDomainEXT* {.size: sizeof(cint).} = enum VK_TIME_DOMAIN_DEVICE_EXT = 0 VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT = 1 VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT = 2 VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT = 3 - VkDebugReportFlagBitsEXT* {.size: int32.sizeof.} = enum + VkDebugReportFlagBitsEXT* {.size: sizeof(cint).} = enum VK_DEBUG_REPORT_INFORMATION_BIT_EXT = 1 VK_DEBUG_REPORT_WARNING_BIT_EXT = 2 VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = 4 VK_DEBUG_REPORT_ERROR_BIT_EXT = 8 VK_DEBUG_REPORT_DEBUG_BIT_EXT = 16 - VkDebugReportObjectTypeEXT* {.size: int32.sizeof.} = enum + VkDebugReportObjectTypeEXT* {.size: sizeof(cint).} = enum VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT = 0 VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT = 1 VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT = 2 @@ -823,28 +822,28 @@ VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT = 29 VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT = 30 VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT = 33 - VkRasterizationOrderAMD* {.size: int32.sizeof.} = enum + VkRasterizationOrderAMD* {.size: sizeof(cint).} = enum VK_RASTERIZATION_ORDER_STRICT_AMD = 0 VK_RASTERIZATION_ORDER_RELAXED_AMD = 1 - VkExternalMemoryHandleTypeFlagBitsNV* {.size: int32.sizeof.} = enum + VkExternalMemoryHandleTypeFlagBitsNV* {.size: sizeof(cint).} = enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV = 1 VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV = 2 VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV = 4 VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV = 8 - VkExternalMemoryFeatureFlagBitsNV* {.size: int32.sizeof.} = enum + VkExternalMemoryFeatureFlagBitsNV* {.size: sizeof(cint).} = enum VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV = 1 VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV = 2 VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV = 4 - VkValidationCheckEXT* {.size: int32.sizeof.} = enum + VkValidationCheckEXT* {.size: sizeof(cint).} = enum VK_VALIDATION_CHECK_ALL_EXT = 0 VK_VALIDATION_CHECK_SHADERS_EXT = 1 - VkValidationFeatureEnableEXT* {.size: int32.sizeof.} = enum + VkValidationFeatureEnableEXT* {.size: sizeof(cint).} = enum VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT = 0 VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT = 1 VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT = 2 VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT = 3 VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT = 4 - VkValidationFeatureDisableEXT* {.size: int32.sizeof.} = enum + VkValidationFeatureDisableEXT* {.size: sizeof(cint).} = enum VK_VALIDATION_FEATURE_DISABLE_ALL_EXT = 0 VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT = 1 VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT = 2 @@ -852,7 +851,7 @@ VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT = 4 VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT = 5 VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT = 6 - VkSubgroupFeatureFlagBits* {.size: int32.sizeof.} = enum + VkSubgroupFeatureFlagBits* {.size: sizeof(cint).} = enum VK_SUBGROUP_FEATURE_BASIC_BIT = 1 VK_SUBGROUP_FEATURE_VOTE_BIT = 2 VK_SUBGROUP_FEATURE_ARITHMETIC_BIT = 4 @@ -861,13 +860,13 @@ VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT = 32 VK_SUBGROUP_FEATURE_CLUSTERED_BIT = 64 VK_SUBGROUP_FEATURE_QUAD_BIT = 128 - VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: int32.sizeof.} = enum + VkIndirectCommandsLayoutUsageFlagBitsNV* {.size: sizeof(cint).} = enum VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV = 1 VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV = 2 VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV = 4 - VkIndirectStateFlagBitsNV* {.size: int32.sizeof.} = enum + VkIndirectStateFlagBitsNV* {.size: sizeof(cint).} = enum VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV = 1 - VkIndirectCommandsTokenTypeNV* {.size: int32.sizeof.} = enum + VkIndirectCommandsTokenTypeNV* {.size: sizeof(cint).} = enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV = 0 VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV = 1 VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV = 2 @@ -876,7 +875,7 @@ VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV = 5 VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV = 6 VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV = 7 - VkExternalMemoryHandleTypeFlagBits* {.size: int32.sizeof.} = enum + VkExternalMemoryHandleTypeFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT = 1 VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 @@ -884,54 +883,54 @@ VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT = 16 VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT = 32 VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT = 64 - VkExternalMemoryFeatureFlagBits* {.size: int32.sizeof.} = enum + VkExternalMemoryFeatureFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT = 1 VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT = 2 VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT = 4 - VkExternalSemaphoreHandleTypeFlagBits* {.size: int32.sizeof.} = enum + VkExternalSemaphoreHandleTypeFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT = 1 VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT = 8 VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT = 16 - VkExternalSemaphoreFeatureFlagBits* {.size: int32.sizeof.} = enum + VkExternalSemaphoreFeatureFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT = 1 VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT = 2 - VkSemaphoreImportFlagBits* {.size: int32.sizeof.} = enum + VkSemaphoreImportFlagBits* {.size: sizeof(cint).} = enum VK_SEMAPHORE_IMPORT_TEMPORARY_BIT = 1 - VkExternalFenceHandleTypeFlagBits* {.size: int32.sizeof.} = enum + VkExternalFenceHandleTypeFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT = 1 VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT = 2 VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT = 4 VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT = 8 - VkExternalFenceFeatureFlagBits* {.size: int32.sizeof.} = enum + VkExternalFenceFeatureFlagBits* {.size: sizeof(cint).} = enum VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT = 1 VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT = 2 - VkFenceImportFlagBits* {.size: int32.sizeof.} = enum + VkFenceImportFlagBits* {.size: sizeof(cint).} = enum VK_FENCE_IMPORT_TEMPORARY_BIT = 1 - VkSurfaceCounterFlagBitsEXT* {.size: int32.sizeof.} = enum + VkSurfaceCounterFlagBitsEXT* {.size: sizeof(cint).} = enum VK_SURFACE_COUNTER_VBLANK_EXT = 1 - VkDisplayPowerStateEXT* {.size: int32.sizeof.} = enum + VkDisplayPowerStateEXT* {.size: sizeof(cint).} = enum VK_DISPLAY_POWER_STATE_OFF_EXT = 0 VK_DISPLAY_POWER_STATE_SUSPEND_EXT = 1 VK_DISPLAY_POWER_STATE_ON_EXT = 2 - VkDeviceEventTypeEXT* {.size: int32.sizeof.} = enum + VkDeviceEventTypeEXT* {.size: sizeof(cint).} = enum VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT = 0 - VkDisplayEventTypeEXT* {.size: int32.sizeof.} = enum + VkDisplayEventTypeEXT* {.size: sizeof(cint).} = enum VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT = 0 - VkPeerMemoryFeatureFlagBits* {.size: int32.sizeof.} = enum + VkPeerMemoryFeatureFlagBits* {.size: sizeof(cint).} = enum VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT = 1 VK_PEER_MEMORY_FEATURE_COPY_DST_BIT = 2 VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT = 4 VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT = 8 - VkMemoryAllocateFlagBits* {.size: int32.sizeof.} = enum + VkMemoryAllocateFlagBits* {.size: sizeof(cint).} = enum VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT = 1 - VkDeviceGroupPresentModeFlagBitsKHR* {.size: int32.sizeof.} = enum + VkDeviceGroupPresentModeFlagBitsKHR* {.size: sizeof(cint).} = enum VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR = 1 VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR = 2 VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR = 4 VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR = 8 - VkViewportCoordinateSwizzleNV* {.size: int32.sizeof.} = enum + VkViewportCoordinateSwizzleNV* {.size: sizeof(cint).} = enum VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV = 0 VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV = 1 VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV = 2 @@ -940,79 +939,79 @@ VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV = 5 VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV = 6 VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV = 7 - VkDiscardRectangleModeEXT* {.size: int32.sizeof.} = enum + VkDiscardRectangleModeEXT* {.size: sizeof(cint).} = enum VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT = 0 VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT = 1 - VkPointClippingBehavior* {.size: int32.sizeof.} = enum + VkPointClippingBehavior* {.size: sizeof(cint).} = enum VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES = 0 VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY = 1 - VkSamplerReductionMode* {.size: int32.sizeof.} = enum + VkSamplerReductionMode* {.size: sizeof(cint).} = enum VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE = 0 VK_SAMPLER_REDUCTION_MODE_MIN = 1 VK_SAMPLER_REDUCTION_MODE_MAX = 2 - VkTessellationDomainOrigin* {.size: int32.sizeof.} = enum + VkTessellationDomainOrigin* {.size: sizeof(cint).} = enum VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT = 0 VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT = 1 - VkSamplerYcbcrModelConversion* {.size: int32.sizeof.} = enum + VkSamplerYcbcrModelConversion* {.size: sizeof(cint).} = enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY = 0 VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY = 1 VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 = 2 VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 = 3 VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 = 4 - VkSamplerYcbcrRange* {.size: int32.sizeof.} = enum + VkSamplerYcbcrRange* {.size: sizeof(cint).} = enum VK_SAMPLER_YCBCR_RANGE_ITU_FULL = 0 VK_SAMPLER_YCBCR_RANGE_ITU_NARROW = 1 - VkChromaLocation* {.size: int32.sizeof.} = enum + VkChromaLocation* {.size: sizeof(cint).} = enum VK_CHROMA_LOCATION_COSITED_EVEN = 0 VK_CHROMA_LOCATION_MIDPOINT = 1 - VkBlendOverlapEXT* {.size: int32.sizeof.} = enum + VkBlendOverlapEXT* {.size: sizeof(cint).} = enum VK_BLEND_OVERLAP_UNCORRELATED_EXT = 0 VK_BLEND_OVERLAP_DISJOINT_EXT = 1 VK_BLEND_OVERLAP_CONJOINT_EXT = 2 - VkCoverageModulationModeNV* {.size: int32.sizeof.} = enum + VkCoverageModulationModeNV* {.size: sizeof(cint).} = enum VK_COVERAGE_MODULATION_MODE_NONE_NV = 0 VK_COVERAGE_MODULATION_MODE_RGB_NV = 1 VK_COVERAGE_MODULATION_MODE_ALPHA_NV = 2 VK_COVERAGE_MODULATION_MODE_RGBA_NV = 3 - VkCoverageReductionModeNV* {.size: int32.sizeof.} = enum + VkCoverageReductionModeNV* {.size: sizeof(cint).} = enum VK_COVERAGE_REDUCTION_MODE_MERGE_NV = 0 VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV = 1 - VkValidationCacheHeaderVersionEXT* {.size: int32.sizeof.} = enum + VkValidationCacheHeaderVersionEXT* {.size: sizeof(cint).} = enum VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT = 1 - VkShaderInfoTypeAMD* {.size: int32.sizeof.} = enum + VkShaderInfoTypeAMD* {.size: sizeof(cint).} = enum VK_SHADER_INFO_TYPE_STATISTICS_AMD = 0 VK_SHADER_INFO_TYPE_BINARY_AMD = 1 VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = 2 - VkQueueGlobalPriorityEXT* {.size: int32.sizeof.} = enum + VkQueueGlobalPriorityEXT* {.size: sizeof(cint).} = enum VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT = 128 VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT = 256 VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT = 512 VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT = 1024 - VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: int32.sizeof.} = enum + VkDebugUtilsMessageSeverityFlagBitsEXT* {.size: sizeof(cint).} = enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT = 1 VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT = 16 VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT = 256 VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT = 4096 - VkDebugUtilsMessageTypeFlagBitsEXT* {.size: int32.sizeof.} = enum + VkDebugUtilsMessageTypeFlagBitsEXT* {.size: sizeof(cint).} = enum VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 1 VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 2 VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 4 - VkConservativeRasterizationModeEXT* {.size: int32.sizeof.} = enum + VkConservativeRasterizationModeEXT* {.size: sizeof(cint).} = enum VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT = 0 VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT = 1 VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT = 2 - VkDescriptorBindingFlagBits* {.size: int32.sizeof.} = enum + VkDescriptorBindingFlagBits* {.size: sizeof(cint).} = enum VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT = 1 VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT = 2 VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT = 4 VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT = 8 - VkVendorId* {.size: int32.sizeof.} = enum + VkVendorId* {.size: sizeof(cint).} = enum VK_VENDOR_ID_VIV = 65537 VK_VENDOR_ID_VSI = 65538 VK_VENDOR_ID_KAZAN = 65539 VK_VENDOR_ID_CODEPLAY = 65540 VK_VENDOR_ID_MESA = 65541 - VkDriverId* {.size: int32.sizeof.} = enum + VkDriverId* {.size: sizeof(cint).} = enum VK_DRIVER_ID_AMD_PROPRIETARY = 1 VK_DRIVER_ID_AMD_OPEN_SOURCE = 2 VK_DRIVER_ID_MESA_RADV = 3 @@ -1027,15 +1026,15 @@ VK_DRIVER_ID_BROADCOM_PROPRIETARY = 12 VK_DRIVER_ID_MESA_LLVMPIPE = 13 VK_DRIVER_ID_MOLTENVK = 14 - VkConditionalRenderingFlagBitsEXT* {.size: int32.sizeof.} = enum + VkConditionalRenderingFlagBitsEXT* {.size: sizeof(cint).} = enum VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT = 1 - VkResolveModeFlagBits* {.size: int32.sizeof.} = enum + VkResolveModeFlagBits* {.size: sizeof(cint).} = enum VK_RESOLVE_MODE_NONE = 0 VK_RESOLVE_MODE_SAMPLE_ZERO_BIT = 1 VK_RESOLVE_MODE_AVERAGE_BIT = 2 VK_RESOLVE_MODE_MIN_BIT = 4 VK_RESOLVE_MODE_MAX_BIT = 8 - VkShadingRatePaletteEntryNV* {.size: int32.sizeof.} = enum + VkShadingRatePaletteEntryNV* {.size: sizeof(cint).} = enum VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV = 0 VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV = 1 VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV = 2 @@ -1048,58 +1047,58 @@ VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV = 9 VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV = 10 VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV = 11 - VkCoarseSampleOrderTypeNV* {.size: int32.sizeof.} = enum + VkCoarseSampleOrderTypeNV* {.size: sizeof(cint).} = enum VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV = 0 VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV = 1 VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV = 2 VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = 3 - VkGeometryInstanceFlagBitsKHR* {.size: int32.sizeof.} = enum + VkGeometryInstanceFlagBitsKHR* {.size: sizeof(cint).} = enum VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR = 1 VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = 2 VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 4 VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 8 - VkGeometryFlagBitsKHR* {.size: int32.sizeof.} = enum + VkGeometryFlagBitsKHR* {.size: sizeof(cint).} = enum VK_GEOMETRY_OPAQUE_BIT_KHR = 1 VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = 2 - VkBuildAccelerationStructureFlagBitsKHR* {.size: int32.sizeof.} = enum + VkBuildAccelerationStructureFlagBitsKHR* {.size: sizeof(cint).} = enum VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 1 VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 2 VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 4 VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 8 VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 16 - VkCopyAccelerationStructureModeKHR* {.size: int32.sizeof.} = enum + VkCopyAccelerationStructureModeKHR* {.size: sizeof(cint).} = enum VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR = 0 VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR = 1 VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR = 2 VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = 3 - VkAccelerationStructureTypeKHR* {.size: int32.sizeof.} = enum + VkAccelerationStructureTypeKHR* {.size: sizeof(cint).} = enum VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR = 0 VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR = 1 - VkGeometryTypeKHR* {.size: int32.sizeof.} = enum + VkGeometryTypeKHR* {.size: sizeof(cint).} = enum VK_GEOMETRY_TYPE_TRIANGLES_KHR = 0 VK_GEOMETRY_TYPE_AABBS_KHR = 1 - VkAccelerationStructureMemoryRequirementsTypeKHR* {.size: int32.sizeof.} = enum + VkAccelerationStructureMemoryRequirementsTypeKHR* {.size: sizeof(cint).} = enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_KHR = 0 VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_KHR = 1 VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_KHR = 2 - VkAccelerationStructureBuildTypeKHR* {.size: int32.sizeof.} = enum + VkAccelerationStructureBuildTypeKHR* {.size: sizeof(cint).} = enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0 VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1 VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2 - VkRayTracingShaderGroupTypeKHR* {.size: int32.sizeof.} = enum + VkRayTracingShaderGroupTypeKHR* {.size: sizeof(cint).} = enum VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR = 0 VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR = 1 VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR = 2 - VkMemoryOverallocationBehaviorAMD* {.size: int32.sizeof.} = enum + VkMemoryOverallocationBehaviorAMD* {.size: sizeof(cint).} = enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD = 0 VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD = 1 VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD = 2 - VkScopeNV* {.size: int32.sizeof.} = enum + VkScopeNV* {.size: sizeof(cint).} = enum VK_SCOPE_DEVICE_NV = 1 VK_SCOPE_WORKGROUP_NV = 2 VK_SCOPE_SUBGROUP_NV = 3 VK_SCOPE_QUEUE_FAMILY_NV = 5 - VkComponentTypeNV* {.size: int32.sizeof.} = enum + VkComponentTypeNV* {.size: sizeof(cint).} = enum VK_COMPONENT_TYPE_FLOAT16_NV = 0 VK_COMPONENT_TYPE_FLOAT32_NV = 1 VK_COMPONENT_TYPE_FLOAT64_NV = 2 @@ -1111,24 +1110,24 @@ VK_COMPONENT_TYPE_UINT16_NV = 8 VK_COMPONENT_TYPE_UINT32_NV = 9 VK_COMPONENT_TYPE_UINT64_NV = 10 - VkDeviceDiagnosticsConfigFlagBitsNV* {.size: int32.sizeof.} = enum + VkDeviceDiagnosticsConfigFlagBitsNV* {.size: sizeof(cint).} = enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV = 1 VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV = 2 VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV = 4 - VkPipelineCreationFeedbackFlagBitsEXT* {.size: int32.sizeof.} = enum + VkPipelineCreationFeedbackFlagBitsEXT* {.size: sizeof(cint).} = enum VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT = 1 VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT = 2 VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT = 4 - VkFullScreenExclusiveEXT* {.size: int32.sizeof.} = enum + VkFullScreenExclusiveEXT* {.size: sizeof(cint).} = enum VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT = 0 VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT = 1 VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT = 2 VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT = 3 - VkPerformanceCounterScopeKHR* {.size: int32.sizeof.} = enum + VkPerformanceCounterScopeKHR* {.size: sizeof(cint).} = enum VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR = 0 VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR = 1 VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR = 2 - VkPerformanceCounterUnitKHR* {.size: int32.sizeof.} = enum + VkPerformanceCounterUnitKHR* {.size: sizeof(cint).} = enum VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR = 0 VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR = 1 VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR = 2 @@ -1140,47 +1139,47 @@ VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR = 8 VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR = 9 VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR = 10 - VkPerformanceCounterStorageKHR* {.size: int32.sizeof.} = enum + VkPerformanceCounterStorageKHR* {.size: sizeof(cint).} = enum VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR = 0 VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR = 1 VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR = 2 VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR = 3 VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR = 4 VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR = 5 - VkPerformanceCounterDescriptionFlagBitsKHR* {.size: int32.sizeof.} = enum + VkPerformanceCounterDescriptionFlagBitsKHR* {.size: sizeof(cint).} = enum VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR = 1 VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR = 2 - VkPerformanceConfigurationTypeINTEL* {.size: int32.sizeof.} = enum + VkPerformanceConfigurationTypeINTEL* {.size: sizeof(cint).} = enum VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL = 0 - VkQueryPoolSamplingModeINTEL* {.size: int32.sizeof.} = enum + VkQueryPoolSamplingModeINTEL* {.size: sizeof(cint).} = enum VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL = 0 - VkPerformanceOverrideTypeINTEL* {.size: int32.sizeof.} = enum + VkPerformanceOverrideTypeINTEL* {.size: sizeof(cint).} = enum VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL = 0 VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = 1 - VkPerformanceParameterTypeINTEL* {.size: int32.sizeof.} = enum + VkPerformanceParameterTypeINTEL* {.size: sizeof(cint).} = enum VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL = 0 VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL = 1 - VkPerformanceValueTypeINTEL* {.size: int32.sizeof.} = enum + VkPerformanceValueTypeINTEL* {.size: sizeof(cint).} = enum VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL = 0 VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL = 1 VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL = 2 VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL = 3 VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL = 4 - VkShaderFloatControlsIndependence* {.size: int32.sizeof.} = enum + VkShaderFloatControlsIndependence* {.size: sizeof(cint).} = enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY = 0 VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL = 1 VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE = 2 - VkPipelineExecutableStatisticFormatKHR* {.size: int32.sizeof.} = enum + VkPipelineExecutableStatisticFormatKHR* {.size: sizeof(cint).} = enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR = 0 VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR = 1 VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR = 2 VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR = 3 - VkLineRasterizationModeEXT* {.size: int32.sizeof.} = enum + VkLineRasterizationModeEXT* {.size: sizeof(cint).} = enum VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT = 0 VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT = 1 VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT = 2 VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT = 3 - VkToolPurposeFlagBitsEXT* {.size: int32.sizeof.} = enum + VkToolPurposeFlagBitsEXT* {.size: sizeof(cint).} = enum VK_TOOL_PURPOSE_VALIDATION_BIT_EXT = 1 VK_TOOL_PURPOSE_PROFILING_BIT_EXT = 2 VK_TOOL_PURPOSE_TRACING_BIT_EXT = 4