Documentation
¶
Index ¶
- type Buffer
- func (b *Buffer) Begin()
- func (b *Buffer) CmdBeginRenderPass(pass *renderpass.Renderpass, framebuffer *framebuffer.Framebuffer)
- func (b *Buffer) CmdBindGraphicsDescriptor(layout *pipeline.Layout, index int, set descriptor.Set)
- func (b *Buffer) CmdBindGraphicsPipeline(pipe *pipeline.Pipeline)
- func (b *Buffer) CmdBindIndexBuffers(idx buffer.T, offset int, kind core1_0.IndexType)
- func (b *Buffer) CmdBindVertexBuffer(vtx buffer.T, offset int)
- func (b *Buffer) CmdConvertImage(src *image.Image, srcLayout core1_0.ImageLayout, dst *image.Image, ...)
- func (b *Buffer) CmdCopyBuffer(src, dst buffer.T, regions ...core1_0.BufferCopy)
- func (b *Buffer) CmdCopyBufferToImage(source buffer.T, dst *image.Image, layout core1_0.ImageLayout)
- func (b *Buffer) CmdCopyImage(src *image.Image, srcLayout core1_0.ImageLayout, dst *image.Image, ...)
- func (b *Buffer) CmdCopyImageToBuffer(src *image.Image, srcLayout core1_0.ImageLayout, ...)
- func (b *Buffer) CmdDraw(cmd Draw)
- func (b *Buffer) CmdDrawIndexed(cmd DrawIndexed)
- func (b *Buffer) CmdDrawIndexedIndirect(buffer buffer.T, offset, count, stride int)
- func (b *Buffer) CmdDrawIndirect(buffer buffer.T, offset, count, stride int)
- func (b *Buffer) CmdEndRenderPass()
- func (b *Buffer) CmdImageBarrier(srcMask, dstMask core1_0.PipelineStageFlags, image *image.Image, ...)
- func (b *Buffer) CmdNextSubpass()
- func (b *Buffer) CmdPushConstant(stages core1_0.ShaderStageFlags, offset int, value any)
- func (b *Buffer) CmdSetScissor(x, y, w, h int) core1_0.Rect2D
- func (b *Buffer) CmdSetViewport(x, y, w, h int) core1_0.Viewport
- func (b *Buffer) Destroy()
- func (b *Buffer) End()
- func (b *Buffer) Ptr() core1_0.CommandBuffer
- func (b *Buffer) Reset()
- type Channel
- type CommandFn
- type Draw
- type DrawBuffer
- type DrawIndexed
- type DrawIndexedBuffer
- type IndirectDrawBuffer
- type IndirectDrawIndexedBuffer
- func (i *IndirectDrawIndexedBuffer) BeginDrawIndirect()
- func (i *IndirectDrawIndexedBuffer) CmdDrawIndexed(cmd DrawIndexed)
- func (i *IndirectDrawIndexedBuffer) Destroy()
- func (i *IndirectDrawIndexedBuffer) EndDrawIndirect(cmd *Buffer)
- func (i *IndirectDrawIndexedBuffer) Flush()
- func (i *IndirectDrawIndexedBuffer) Reset()
- type Pool
- type Recorder
- type SubmitInfo
- type Wait
- type WorkFunc
- type Worker
- type Workers
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Buffer ¶
type Buffer struct {
// contains filtered or unexported fields
}
func (*Buffer) CmdBeginRenderPass ¶
func (b *Buffer) CmdBeginRenderPass(pass *renderpass.Renderpass, framebuffer *framebuffer.Framebuffer)
func (*Buffer) CmdBindGraphicsDescriptor ¶
func (*Buffer) CmdBindGraphicsPipeline ¶
func (*Buffer) CmdBindIndexBuffers ¶
func (*Buffer) CmdConvertImage ¶
func (b *Buffer) CmdConvertImage(src *image.Image, srcLayout core1_0.ImageLayout, dst *image.Image, dstLayout core1_0.ImageLayout, aspects core1_0.ImageAspectFlags)
func (*Buffer) CmdCopyBuffer ¶
func (b *Buffer) CmdCopyBuffer(src, dst buffer.T, regions ...core1_0.BufferCopy)
func (*Buffer) CmdCopyBufferToImage ¶
func (*Buffer) CmdCopyImage ¶
func (b *Buffer) CmdCopyImage(src *image.Image, srcLayout core1_0.ImageLayout, dst *image.Image, dstLayout core1_0.ImageLayout, aspects core1_0.ImageAspectFlags)
func (*Buffer) CmdCopyImageToBuffer ¶
func (b *Buffer) CmdCopyImageToBuffer(src *image.Image, srcLayout core1_0.ImageLayout, aspects core1_0.ImageAspectFlags, dst buffer.T)
func (*Buffer) CmdDrawIndexed ¶
func (b *Buffer) CmdDrawIndexed(cmd DrawIndexed)
func (*Buffer) CmdDrawIndexedIndirect ¶
func (*Buffer) CmdDrawIndirect ¶
func (*Buffer) CmdEndRenderPass ¶
func (b *Buffer) CmdEndRenderPass()
func (*Buffer) CmdImageBarrier ¶
func (b *Buffer) CmdImageBarrier(srcMask, dstMask core1_0.PipelineStageFlags, image *image.Image, oldLayout, newLayout core1_0.ImageLayout, aspects core1_0.ImageAspectFlags, mipLevel, levels int)
func (*Buffer) CmdNextSubpass ¶
func (b *Buffer) CmdNextSubpass()
func (*Buffer) CmdPushConstant ¶
func (b *Buffer) CmdPushConstant(stages core1_0.ShaderStageFlags, offset int, value any)
func (*Buffer) Ptr ¶
func (b *Buffer) Ptr() core1_0.CommandBuffer
type Channel ¶
type Channel struct {
// contains filtered or unexported fields
}
func NewChannel ¶
func (*Channel) Flush ¶
func (ch *Channel) Flush()
Flush blocks the caller until all pending work is completed
func (*Channel) InvokeSync ¶
InvokeSync schedules a callback to be called on the worker thread, and blocks until the callback is finished.
type DrawBuffer ¶
type DrawBuffer interface {
CmdDraw(Draw)
}
type DrawIndexed ¶
type DrawIndexedBuffer ¶
type DrawIndexedBuffer interface {
CmdDrawIndexed(DrawIndexed)
}
type IndirectDrawBuffer ¶
type IndirectDrawBuffer struct {
// contains filtered or unexported fields
}
func NewIndirectDrawBuffer ¶
func NewIndirectDrawBuffer(dev *device.Device, key string, size int) *IndirectDrawBuffer
func (*IndirectDrawBuffer) BeginDrawIndirect ¶
func (i *IndirectDrawBuffer) BeginDrawIndirect()
func (*IndirectDrawBuffer) CmdDraw ¶
func (i *IndirectDrawBuffer) CmdDraw(cmd Draw)
func (*IndirectDrawBuffer) Destroy ¶
func (i *IndirectDrawBuffer) Destroy()
func (*IndirectDrawBuffer) EndDrawIndirect ¶
func (i *IndirectDrawBuffer) EndDrawIndirect(cmd *Buffer)
func (*IndirectDrawBuffer) Flush ¶
func (i *IndirectDrawBuffer) Flush()
func (*IndirectDrawBuffer) Reset ¶
func (i *IndirectDrawBuffer) Reset()
type IndirectDrawIndexedBuffer ¶
type IndirectDrawIndexedBuffer struct {
// contains filtered or unexported fields
}
func NewIndirectDrawIndexedBuffer ¶
func NewIndirectDrawIndexedBuffer(dev *device.Device, key string, size int) *IndirectDrawIndexedBuffer
func (*IndirectDrawIndexedBuffer) BeginDrawIndirect ¶
func (i *IndirectDrawIndexedBuffer) BeginDrawIndirect()
func (*IndirectDrawIndexedBuffer) CmdDrawIndexed ¶
func (i *IndirectDrawIndexedBuffer) CmdDrawIndexed(cmd DrawIndexed)
func (*IndirectDrawIndexedBuffer) Destroy ¶
func (i *IndirectDrawIndexedBuffer) Destroy()
func (*IndirectDrawIndexedBuffer) EndDrawIndirect ¶
func (i *IndirectDrawIndexedBuffer) EndDrawIndirect(cmd *Buffer)
func (*IndirectDrawIndexedBuffer) Flush ¶
func (i *IndirectDrawIndexedBuffer) Flush()
func (*IndirectDrawIndexedBuffer) Reset ¶
func (i *IndirectDrawIndexedBuffer) Reset()
type Pool ¶
type Pool struct {
// contains filtered or unexported fields
}
func (*Pool) AllocateBuffers ¶
func (p *Pool) AllocateBuffers(level core1_0.CommandBufferLevel, count int) []*Buffer
func (*Pool) Ptr ¶
func (p *Pool) Ptr() core1_0.CommandPool
type SubmitInfo ¶
type Worker ¶
type Worker interface {
Submit(SubmitInfo)
Destroy()
Flush()
Invoke(func())
}
Workers manage a command pool thread
Click to show internal directories.
Click to hide internal directories.