Documentation ¶
Index ¶
- func Info(instance vulkan.Instance) error
- type Buffer
- type CPUMemoryAllocator
- type GPUMemoryAllocator
- type Image
- type Memory
- type MemoryAllocator
- type Shader
- type TransferBuffer
- func (b *TransferBuffer) Buffer() vulkan.Buffer
- func (b *TransferBuffer) Close()
- func (b *TransferBuffer) Transfer(queue vulkan.Queue, semaphore vulkan.Semaphore, ...) error
- func (b *TransferBuffer) TransferCommandBuffers(count uint32) ([]vulkan.CommandBuffer, error)
- func (b *TransferBuffer) TransferCommands(commandBuffer vulkan.CommandBuffer) error
- func (b *TransferBuffer) TransferSubmit(queue vulkan.Queue, commandBuffers []vulkan.CommandBuffer, ...) error
- type Transferer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Buffer ¶
func NewBuffer ¶
func NewBuffer(device vulkan.Device, allocator MemoryAllocator, usage vulkan.BufferUsageFlags, data interface{}) (*Buffer, error)
type CPUMemoryAllocator ¶
type CPUMemoryAllocator vulkan.PhysicalDeviceMemoryProperties
func (CPUMemoryAllocator) Allocate ¶
func (a CPUMemoryAllocator) Allocate(requirements vulkan.MemoryRequirements) (uint32, vulkan.MemoryType, bool)
type GPUMemoryAllocator ¶
type GPUMemoryAllocator vulkan.PhysicalDeviceMemoryProperties
func (GPUMemoryAllocator) Allocate ¶
func (a GPUMemoryAllocator) Allocate(requirements vulkan.MemoryRequirements) (uint32, vulkan.MemoryType, bool)
type Image ¶
type Image struct { Image image.Image Handle vulkan.Image View vulkan.ImageView Memory vulkan.DeviceMemory Buffer vulkan.Buffer BufferMemory vulkan.DeviceMemory vulkan.Extent2D Device vulkan.Device }
type Memory ¶
type Memory struct { Type vulkan.MemoryType Memory vulkan.DeviceMemory Device vulkan.Device // contains filtered or unexported fields }
func (*Memory) Map ¶
func (m *Memory) Map(offset, size vulkan.DeviceSize, flags vulkan.MemoryMapFlags) (uintptr, error)
func (*Memory) Mapped ¶
func (m *Memory) Mapped(offset, size vulkan.DeviceSize, flags vulkan.MemoryMapFlags, fn func(unsafe.Pointer)) error
type MemoryAllocator ¶
type MemoryAllocator interface {
Allocate(requirements vulkan.MemoryRequirements) (uint32, vulkan.MemoryType, bool)
}
type Shader ¶
type Shader struct { Handle vulkan.ShaderModule Flag vulkan.ShaderStageFlagBits // contains filtered or unexported fields }
func NewShaderFromReader ¶
func (Shader) Stage ¶
func (s Shader) Stage() vulkan.PipelineShaderStageCreateInfo
type TransferBuffer ¶
type TransferBuffer struct { HandleHost vulkan.Buffer HandleDevice vulkan.Buffer MemoryHost Memory MemoryDevice Memory Device vulkan.Device // contains filtered or unexported fields }
func NewTransferBuffer ¶
func NewTransferBuffer(device vulkan.Device, allocatorFrom, allocatorTo MemoryAllocator, fromFamily, toFamily uint32, usage vulkan.BufferUsageFlags, data any) (*TransferBuffer, error)
func (*TransferBuffer) Buffer ¶
func (b *TransferBuffer) Buffer() vulkan.Buffer
func (*TransferBuffer) Close ¶
func (b *TransferBuffer) Close()
func (*TransferBuffer) Transfer ¶
func (b *TransferBuffer) Transfer(queue vulkan.Queue, semaphore vulkan.Semaphore, stageMask vulkan.PipelineStageFlags2, fence vulkan.Fence) error
func (*TransferBuffer) TransferCommandBuffers ¶
func (b *TransferBuffer) TransferCommandBuffers(count uint32) ([]vulkan.CommandBuffer, error)
func (*TransferBuffer) TransferCommands ¶
func (b *TransferBuffer) TransferCommands(commandBuffer vulkan.CommandBuffer) error
func (*TransferBuffer) TransferSubmit ¶
func (b *TransferBuffer) TransferSubmit(queue vulkan.Queue, commandBuffers []vulkan.CommandBuffer, semaphore vulkan.Semaphore, stageMask vulkan.PipelineStageFlags2, fence vulkan.Fence) error
type Transferer ¶
type Transferer interface { Transfer(queue vulkan.Queue, semaphore vulkan.Semaphore, stageMask vulkan.PipelineStageFlags2, fence vulkan.Fence) error TransferCommandBuffers(count uint32) ([]vulkan.CommandBuffer, error) TransferCommands(commandBuffer vulkan.CommandBuffer) error TransferSubmit(queue vulkan.Queue, commandBuffers []vulkan.CommandBuffer, semaphore vulkan.Semaphore, stageMask vulkan.PipelineStageFlags2, fence vulkan.Fence) error }
Click to show internal directories.
Click to hide internal directories.