Skip to main content

Module buffer

Module buffer 

Source
Expand description

SSBO management: typed buffers, double-buffering, atomic counters, buffer pools, barrier types, memory tracking, mapped ranges, copy engine.

Structs§

AtomicCounter
GPU atomic counter buffer. Used for particle birth/death counting, indirect dispatch argument generation, etc.
BufferCopyEngine
Performs GPU-side buffer-to-buffer copies without CPU readback.
BufferDebug
Debug utilities for labeling buffers (requires GL_KHR_debug).
BufferHandle
Opaque handle to a GPU buffer (wraps a raw OpenGL buffer name).
BufferPool
A pool that recycles GPU buffers to avoid frequent allocation/deallocation.
BufferRingAllocator
A ring allocator for streaming per-frame data into a large buffer. Each frame gets a slice of the ring; after N frames the oldest slice is reused.
CopyRegion
Describes a region to copy between two buffers.
FieldDescriptor
Metadata about a field within a structured buffer.
IndirectBuffer
Buffer that stores indirect dispatch commands.
IndirectDispatchCommand
Indirect dispatch arguments as laid out in GPU memory.
MappedRange
Represents a mapped sub-range of a buffer for CPU write access. The mapping must be flushed and unmapped before the GPU can read.
MemoryTracker
Tracks total GPU memory allocated through this subsystem.
MultiCounter
Holds multiple atomic counters in a single buffer.
ParticleBuffer
Double-buffered particle storage for ping-pong compute dispatch.
ParticleGpuData
A particle position/velocity datum, tightly packed for GPU.
SharedBufferPool
Thread-safe buffer pool.
StructuredBuffer
A buffer that tracks its internal field layout for shader interop.
TypedBuffer
A strongly-typed GPU Shader Storage Buffer Object.

Enums§

BufferBarrierType
Types of memory barriers that can be issued after compute writes.
BufferUsage
Intended usage hint when creating a buffer.

Functions§

issue_barrier
Issue a glMemoryBarrier with the given barrier type.
issue_barrier_raw
Issue a glMemoryBarrier with raw bits.
shared_tracker
Create a new shared memory tracker (convenience wrapper).