Versions in this module Expand all Collapse all v0 v0.0.1 Jan 21, 2024 Changes in this version + const ACCESS_COLOR_ATTACHMENT_READ_BIT — linux/amd64 + const ACCESS_COLOR_ATTACHMENT_WRITE_BIT — linux/amd64 + const ACCESS_HOST_READ_BIT — linux/amd64 + const ACCESS_HOST_WRITE_BIT — linux/amd64 + const ACCESS_INDEX_READ_BIT — linux/amd64 + const ACCESS_MEMORY_READ_BIT — linux/amd64 + const ACCESS_MEMORY_WRITE_BIT — linux/amd64 + const ACCESS_SHADER_READ_BIT — linux/amd64 + const ACCESS_SHADER_WRITE_BIT — linux/amd64 + const ACCESS_TRANSFER_READ_BIT — linux/amd64 + const ACCESS_TRANSFER_WRITE_BIT — linux/amd64 + const ACCESS_VERTEX_ATTRIBUTE_READ_BIT — linux/amd64 + const ATTACHMENT_LOAD_OP_CLEAR — linux/amd64 + const ATTACHMENT_LOAD_OP_DONT_CARE — linux/amd64 + const ATTACHMENT_LOAD_OP_LOAD — linux/amd64 + const BLEND_FACTOR_DST_COLOR — linux/amd64 + const BLEND_FACTOR_ONE — linux/amd64 + const BLEND_FACTOR_ONE_MINUS_SRC_ALPHA — linux/amd64 + const BLEND_FACTOR_ZERO — linux/amd64 + const BUFFER_USAGE_INDEX_BUFFER_BIT — linux/amd64 + const BUFFER_USAGE_STORAGE_BUFFER_BIT — linux/amd64 + const BUFFER_USAGE_TRANSFER_DST_BIT — linux/amd64 + const BUFFER_USAGE_TRANSFER_SRC_BIT — linux/amd64 + const BUFFER_USAGE_UNIFORM_BUFFER_BIT — linux/amd64 + const BUFFER_USAGE_VERTEX_BUFFER_BIT — linux/amd64 + const DEPENDENCY_BY_REGION_BIT — linux/amd64 + const DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER — linux/amd64 + const DESCRIPTOR_TYPE_STORAGE_BUFFER — linux/amd64 + const DESCRIPTOR_TYPE_STORAGE_IMAGE — linux/amd64 + const DESCRIPTOR_TYPE_UNIFORM_BUFFER — linux/amd64 + const ERROR_DEVICE_LOST — linux/amd64 + const ERROR_OUT_OF_DATE_KHR — linux/amd64 + const ERROR_SURFACE_LOST_KHR — linux/amd64 + const FENCE_CREATE_SIGNALED_BIT — linux/amd64 + const FILTER_LINEAR — linux/amd64 + const FILTER_NEAREST — linux/amd64 + const FORMAT_B8G8R8A8_SRGB — linux/amd64 + const FORMAT_FEATURE_COLOR_ATTACHMENT_BIT — linux/amd64 + const FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT — linux/amd64 + const FORMAT_FEATURE_SAMPLED_IMAGE_BIT — linux/amd64 + const FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT — linux/amd64 + const FORMAT_R16_SFLOAT — linux/amd64 + const FORMAT_R32G32B32A32_SFLOAT — linux/amd64 + const FORMAT_R32G32B32_SFLOAT — linux/amd64 + const FORMAT_R32G32_SFLOAT — linux/amd64 + const FORMAT_R32_SFLOAT — linux/amd64 + const FORMAT_R8G8B8A8_SRGB — linux/amd64 + const FORMAT_R8G8B8A8_UNORM — linux/amd64 + const IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL — linux/amd64 + const IMAGE_LAYOUT_GENERAL — linux/amd64 + const IMAGE_LAYOUT_PRESENT_SRC_KHR — linux/amd64 + const IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL — linux/amd64 + const IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL — linux/amd64 + const IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL — linux/amd64 + const IMAGE_LAYOUT_UNDEFINED — linux/amd64 + const IMAGE_USAGE_COLOR_ATTACHMENT_BIT — linux/amd64 + const IMAGE_USAGE_SAMPLED_BIT — linux/amd64 + const IMAGE_USAGE_STORAGE_BIT — linux/amd64 + const IMAGE_USAGE_TRANSFER_DST_BIT — linux/amd64 + const IMAGE_USAGE_TRANSFER_SRC_BIT — linux/amd64 + const INDEX_TYPE_UINT16 — linux/amd64 + const INDEX_TYPE_UINT32 — linux/amd64 + const MEMORY_PROPERTY_DEVICE_LOCAL_BIT — linux/amd64 + const MEMORY_PROPERTY_HOST_COHERENT_BIT — linux/amd64 + const MEMORY_PROPERTY_HOST_VISIBLE_BIT — linux/amd64 + const PIPELINE_BIND_POINT_COMPUTE — linux/amd64 + const PIPELINE_BIND_POINT_GRAPHICS — linux/amd64 + const PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT — linux/amd64 + const PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT — linux/amd64 + const PIPELINE_STAGE_COMPUTE_SHADER_BIT — linux/amd64 + const PIPELINE_STAGE_FRAGMENT_SHADER_BIT — linux/amd64 + const PIPELINE_STAGE_HOST_BIT — linux/amd64 + const PIPELINE_STAGE_TOP_OF_PIPE_BIT — linux/amd64 + const PIPELINE_STAGE_TRANSFER_BIT — linux/amd64 + const PIPELINE_STAGE_VERTEX_INPUT_BIT — linux/amd64 + const PRIMITIVE_TOPOLOGY_TRIANGLE_LIST — linux/amd64 + const PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP — linux/amd64 + const QUEUE_COMPUTE_BIT — linux/amd64 + const QUEUE_GRAPHICS_BIT — linux/amd64 + const REMAINING_MIP_LEVELS — linux/amd64 + const SAMPLER_MIPMAP_MODE_LINEAR — linux/amd64 + const SAMPLER_MIPMAP_MODE_NEAREST — linux/amd64 + const SHADER_STAGE_COMPUTE_BIT — linux/amd64 + const SHADER_STAGE_FRAGMENT_BIT — linux/amd64 + const SHADER_STAGE_VERTEX_BIT — linux/amd64 + const SUBOPTIMAL_KHR — linux/amd64 + func AcquireNextImage(d Device, swchain Swapchain, sem Semaphore, fence Fence) (int, error) — linux/amd64 + func BeginCommandBuffer(buf CommandBuffer) error — linux/amd64 + func CmdBeginRenderPass(buf CommandBuffer, rp RenderPass, fbo Framebuffer, width, height int, ...) — linux/amd64 + func CmdBindDescriptorSets(cmdBuf CommandBuffer, point PipelineBindPoint, layout PipelineLayout, ...) — linux/amd64 + func CmdBindIndexBuffer(cmdBuf CommandBuffer, buffer Buffer, offset int, typ IndexType) — linux/amd64 + func CmdBindPipeline(cmdBuf CommandBuffer, bindPoint PipelineBindPoint, pipe Pipeline) — linux/amd64 + func CmdBindVertexBuffers(cmdBuf CommandBuffer, first int, buffers []Buffer, sizes []DeviceSize) — linux/amd64 + func CmdBlitImage(cmdBuf CommandBuffer, src Image, srcLayout ImageLayout, dst Image, ...) — linux/amd64 + func CmdCopyBuffer(cmdBuf CommandBuffer, src, dst Buffer, srcOff, dstOff, size int) — linux/amd64 + func CmdCopyBufferToImage(cmdBuf CommandBuffer, src Buffer, dst Image, layout ImageLayout, ...) — linux/amd64 + func CmdCopyImage(cmdBuf CommandBuffer, src Image, srcLayout ImageLayout, dst Image, ...) — linux/amd64 + func CmdCopyImageToBuffer(cmdBuf CommandBuffer, src Image, srcLayout ImageLayout, dst Buffer, ...) — linux/amd64 + func CmdDispatch(cmdBuf CommandBuffer, x, y, z int) — linux/amd64 + func CmdDraw(cmdBuf CommandBuffer, vertCount, instCount, firstVert, firstInst int) — linux/amd64 + func CmdDrawIndexed(cmdBuf CommandBuffer, idxCount, instCount, firstIdx, vertOff, firstInst int) — linux/amd64 + func CmdEndRenderPass(buf CommandBuffer) — linux/amd64 + func CmdPipelineBarrier(cmdBuf CommandBuffer, srcStage, dstStage PipelineStageFlags, ...) — linux/amd64 + func CmdPushConstants(cmdBuf CommandBuffer, layout PipelineLayout, stages ShaderStageFlags, ...) — linux/amd64 + func CmdSetViewport(cmdBuf CommandBuffer, first int, viewports ...Viewport) — linux/amd64 + func CreateBuffer(pd PhysicalDevice, d Device, size int, usage BufferUsageFlags, ...) (Buffer, DeviceMemory, error) — linux/amd64 + func CreateImage(pd PhysicalDevice, d Device, format Format, width, height, mipmaps int, ...) (Image, DeviceMemory, error) — linux/amd64 + func CreateSwapchain(pd PhysicalDevice, d Device, surf Surface, width, height int, old Swapchain) (Swapchain, []Image, Format, error) — linux/amd64 + func DestroyBuffer(d Device, buf Buffer) — linux/amd64 + func DestroyCommandPool(d Device, pool CommandPool) — linux/amd64 + func DestroyDescriptorPool(d Device, pool DescriptorPool) — linux/amd64 + func DestroyDescriptorSetLayout(d Device, l DescriptorSetLayout) — linux/amd64 + func DestroyDevice(dev Device) — linux/amd64 + func DestroyFence(d Device, f Fence) — linux/amd64 + func DestroyFramebuffer(d Device, f Framebuffer) — linux/amd64 + func DestroyImage(d Device, img Image) — linux/amd64 + func DestroyImageView(d Device, view ImageView) — linux/amd64 + func DestroyInstance(inst Instance) — linux/amd64 + func DestroyPipeline(d Device, p Pipeline) — linux/amd64 + func DestroyPipelineLayout(d Device, l PipelineLayout) — linux/amd64 + func DestroyRenderPass(d Device, r RenderPass) — linux/amd64 + func DestroySampler(d Device, sampler Sampler) — linux/amd64 + func DestroySemaphore(d Device, sem Semaphore) — linux/amd64 + func DestroyShaderModule(d Device, mod ShaderModule) — linux/amd64 + func DestroySurface(inst Instance, s Surface) — linux/amd64 + func DestroySwapchain(d Device, swchain Swapchain) — linux/amd64 + func DeviceWaitIdle(d Device) error — linux/amd64 + func EndCommandBuffer(buf CommandBuffer) error — linux/amd64 + func FreeCommandBuffers(d Device, pool CommandPool, bufs ...CommandBuffer) — linux/amd64 + func FreeMemory(d Device, mem DeviceMemory) — linux/amd64 + func MapMemory(d Device, mem DeviceMemory, offset, size int) ([]byte, error) — linux/amd64 + func PresentQueue(q Queue, swchain Swapchain, sem Semaphore, imgIdx int) error — linux/amd64 + func QueueSubmit(q Queue, buf CommandBuffer, waitSems []Semaphore, ...) error — linux/amd64 + func QueueWaitIdle(q Queue) error — linux/amd64 + func ResetCommandBuffer(buf CommandBuffer) error — linux/amd64 + func ResetDescriptorPool(d Device, pool DescriptorPool) error — linux/amd64 + func ResetFences(d Device, fences ...Fence) error — linux/amd64 + func UnmapMemory(d Device, mem DeviceMemory) — linux/amd64 + func UpdateDescriptorSet(d Device, write WriteDescriptorSet) — linux/amd64 + func WaitForFences(d Device, fences ...Fence) error — linux/amd64 + type AccessFlags = C.VkAccessFlags — linux/amd64 + type AttachmentLoadOp = C.VkAttachmentLoadOp — linux/amd64 + type BlendFactor = C.VkBlendFactor — linux/amd64 + type Buffer = C.VkBuffer — linux/amd64 + type BufferImageCopy = C.VkBufferImageCopy — linux/amd64 + func BuildBufferImageCopy(bufOff, bufStride, x, y, width, height int) BufferImageCopy + type BufferMemoryBarrier = C.VkBufferMemoryBarrier — linux/amd64 + func BuildBufferMemoryBarrier(buf Buffer, srcMask, dstMask AccessFlags) BufferMemoryBarrier + type BufferUsageFlags = C.VkBufferUsageFlags — linux/amd64 + type CommandBuffer = C.VkCommandBuffer — linux/amd64 + func AllocateCommandBuffer(d Device, pool CommandPool) (CommandBuffer, error) + type CommandPool = C.VkCommandPool — linux/amd64 + func CreateCommandPool(d Device, queueIndex int) (CommandPool, error) + type DependencyFlags = C.VkDependencyFlags — linux/amd64 + type DescriptorPool = C.VkDescriptorPool — linux/amd64 + func CreateDescriptorPool(d Device, maxSets int, sizes []DescriptorPoolSize) (DescriptorPool, error) + type DescriptorPoolSize = C.VkDescriptorPoolSize — linux/amd64 + func BuildDescriptorPoolSize(typ DescriptorType, count int) DescriptorPoolSize + type DescriptorSet = C.VkDescriptorSet — linux/amd64 + func AllocateDescriptorSets(d Device, pool DescriptorPool, layout DescriptorSetLayout, count int) ([]DescriptorSet, error) + type DescriptorSetLayout = C.VkDescriptorSetLayout — linux/amd64 + func CreateDescriptorSetLayout(d Device, bindings []DescriptorSetLayoutBinding) (DescriptorSetLayout, error) + type DescriptorSetLayoutBinding struct — linux/amd64 + Binding int + DescriptorType DescriptorType + StageFlags ShaderStageFlags + type DescriptorType = C.VkDescriptorType — linux/amd64 + type Device = C.VkDevice — linux/amd64 + func CreateDeviceAndQueue(pd C.VkPhysicalDevice, queueIdx int, exts ...string) (Device, error) + type DeviceMemory = C.VkDeviceMemory — linux/amd64 + type DeviceSize = C.VkDeviceSize — linux/amd64 + type Error C.VkResult — linux/amd64 + func (e Error) Error() string + type Fence = C.VkFence — linux/amd64 + func CreateFence(d Device, flags int) (Fence, error) + type Filter = C.VkFilter — linux/amd64 + type Format = C.VkFormat — linux/amd64 + type FormatFeatureFlags = C.VkFormatFeatureFlags — linux/amd64 + func GetPhysicalDeviceFormatProperties(physDev PhysicalDevice, format Format) FormatFeatureFlags + type Framebuffer = C.VkFramebuffer — linux/amd64 + func CreateFramebuffer(d Device, rp RenderPass, view ImageView, width, height int) (Framebuffer, error) + type Image = C.VkImage — linux/amd64 + type ImageBlit = C.VkImageBlit — linux/amd64 + func BuildImageBlit(...) ImageBlit + type ImageCopy = C.VkImageCopy — linux/amd64 + func BuildImageCopy(srcX, srcY, dstX, dstY, width, height int) ImageCopy + type ImageLayout = C.VkImageLayout — linux/amd64 + type ImageMemoryBarrier = C.VkImageMemoryBarrier — linux/amd64 + func BuildImageMemoryBarrier(img Image, srcMask, dstMask AccessFlags, oldLayout, newLayout ImageLayout, ...) ImageMemoryBarrier + type ImageUsageFlags = C.VkImageUsageFlags — linux/amd64 + type ImageView = C.VkImageView — linux/amd64 + func CreateImageView(d Device, img Image, format Format) (ImageView, error) + type IndexType = C.VkIndexType — linux/amd64 + type Instance = C.VkInstance — linux/amd64 + func CreateInstance(exts ...string) (Instance, error) + type MemoryBarrier = C.VkMemoryBarrier — linux/amd64 + func BuildMemoryBarrier(srcMask, dstMask AccessFlags) MemoryBarrier + type MemoryPropertyFlags = C.VkMemoryPropertyFlags — linux/amd64 + type PhysicalDevice = C.VkPhysicalDevice — linux/amd64 + func ChoosePhysicalDevice(inst Instance, surf Surface) (PhysicalDevice, int, error) + func EnumeratePhysicalDevices(inst Instance) ([]PhysicalDevice, error) + type Pipeline = C.VkPipeline — linux/amd64 + func CreateComputePipeline(d Device, mod ShaderModule, layout PipelineLayout) (Pipeline, error) + func CreateGraphicsPipeline(d Device, pass RenderPass, vmod, fmod ShaderModule, blend bool, ...) (Pipeline, error) + type PipelineBindPoint = C.VkPipelineBindPoint — linux/amd64 + type PipelineLayout = C.VkPipelineLayout — linux/amd64 + func CreatePipelineLayout(d Device, pushRanges []PushConstantRange, sets []DescriptorSetLayout) (PipelineLayout, error) + type PipelineStageFlags = C.VkPipelineStageFlags — linux/amd64 + type PrimitiveTopology = C.VkPrimitiveTopology — linux/amd64 + type PushConstantRange = C.VkPushConstantRange — linux/amd64 + func BuildPushConstantRange(stages ShaderStageFlags, offset, size int) PushConstantRange + func (r PushConstantRange) Offset() int + func (r PushConstantRange) Size() int + func (r PushConstantRange) StageFlags() ShaderStageFlags + type Queue = C.VkQueue — linux/amd64 + func GetDeviceQueue(d Device, queueFamily, queueIndex int) Queue + type QueueFamilyProperties = C.VkQueueFamilyProperties — linux/amd64 + func GetPhysicalDeviceQueueFamilyProperties(pd PhysicalDevice) []QueueFamilyProperties + func (p QueueFamilyProperties) Flags() QueueFlags + type QueueFlags = C.VkQueueFlags — linux/amd64 + type RenderPass = C.VkRenderPass — linux/amd64 + func CreateRenderPass(d Device, format Format, loadOp AttachmentLoadOp, ...) (RenderPass, error) + type Sampler = C.VkSampler — linux/amd64 + func CreateSampler(d Device, minFilter, magFilter Filter, mipmapMode SamplerMipmapMode) (Sampler, error) + type SamplerMipmapMode = C.VkSamplerMipmapMode — linux/amd64 + type Semaphore = C.VkSemaphore — linux/amd64 + func CreateSemaphore(d Device) (Semaphore, error) + type ShaderModule = C.VkShaderModule — linux/amd64 + func CreateShaderModule(d Device, spirv string) (ShaderModule, error) + type ShaderStageFlags = C.VkShaderStageFlags — linux/amd64 + type SubpassDependency = C.VkSubpassDependency — linux/amd64 + func BuildSubpassDependency(srcStage, dstStage PipelineStageFlags, srcMask, dstMask AccessFlags, ...) SubpassDependency + type Surface = C.VkSurfaceKHR — linux/amd64 + func CreateWaylandSurface(inst Instance, disp unsafe.Pointer, wlSurf unsafe.Pointer) (Surface, error) + func CreateXlibSurface(inst Instance, dpy unsafe.Pointer, window uintptr) (Surface, error) + type SurfaceCapabilities = C.VkSurfaceCapabilitiesKHR — linux/amd64 + func GetPhysicalDeviceSurfaceCapabilities(pd PhysicalDevice, surf Surface) (SurfaceCapabilities, error) + func (c SurfaceCapabilities) MaxExtent() image.Point + func (c SurfaceCapabilities) MinExtent() image.Point + type Swapchain = C.VkSwapchainKHR — linux/amd64 + type VertexInputAttributeDescription struct — linux/amd64 + Binding int + Format Format + Location int + Offset int + type VertexInputBindingDescription struct — linux/amd64 + Binding int + Stride int + type Viewport = C.VkViewport — linux/amd64 + func BuildViewport(x, y, width, height float32) Viewport + type WriteDescriptorSet = C.VkWriteDescriptorSet — linux/amd64 + func BuildWriteDescriptorSetBuffer(set DescriptorSet, binding int, typ DescriptorType, buf Buffer) WriteDescriptorSet + func BuildWriteDescriptorSetImage(set DescriptorSet, binding int, typ DescriptorType, sampler Sampler, ...) WriteDescriptorSet