MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ BufferUsageHint

enum class MayaFlux::Portal::Graphics::BufferUsageHint : uint8_t
strong

Semantic usage hint for buffer allocation and memory properties.

This enum describes the intended usage pattern of a buffer, which informs the graphics backend how to allocate memory and set Vulkan usage flags. It is not a direct mapping to Vulkan flags, but rather a higher-level abstraction for common use cases.

Enumerator
STAGING 

Host-visible staging buffer (CPU-writable, eTransferSrc|Dst)

DEVICE 

Device-local GPU-only buffer.

COMPUTE 

Storage buffer for compute shaders (device-local)

VERTEX 

Vertex buffer.

INDEX 

Index buffer.

UNIFORM 

Uniform buffer (host-visible)

UNIFORM_BDA 

Uniform buffer with device address query support.

STORAGE_BDA 

Storage buffer with device address query support.

INDIRECT 

Indirect draw/dispatch buffer (device-local)

HOST_STORAGE 

Host-visible storage buffer (eStorageBuffer + eHostVisible|eHostCoherent)

COMPUTE_STORAGE 

Bare eStorageBuffer, no transfer flags. GpuResourceManager's host-visible/host-coherent compute buffers.

Definition at line 120 of file GraphicsUtils.hpp.

120 : uint8_t {
121 STAGING, ///< Host-visible staging buffer (CPU-writable, eTransferSrc|Dst)
122 DEVICE, ///< Device-local GPU-only buffer
123 COMPUTE, ///< Storage buffer for compute shaders (device-local)
124 VERTEX, ///< Vertex buffer
125 INDEX, ///< Index buffer
126 UNIFORM, ///< Uniform buffer (host-visible)
127 UNIFORM_BDA, ///< Uniform buffer with device address query support
128 STORAGE_BDA, ///< Storage buffer with device address query support
129 INDIRECT, ///< Indirect draw/dispatch buffer (device-local)
130 HOST_STORAGE, ///< Host-visible storage buffer (eStorageBuffer + eHostVisible|eHostCoherent)
131 COMPUTE_STORAGE, ///< Bare eStorageBuffer, no transfer flags. GpuResourceManager's host-visible/host-coherent compute buffers.
132};
@ STORAGE_BDA
Storage buffer with device address query support.
@ HOST_STORAGE
Host-visible storage buffer (eStorageBuffer + eHostVisible|eHostCoherent)
@ INDIRECT
Indirect draw/dispatch buffer (device-local)
@ STAGING
Host-visible staging buffer (CPU-writable, eTransferSrc|Dst)
@ UNIFORM_BDA
Uniform buffer with device address query support.
@ COMPUTE_STORAGE
Bare eStorageBuffer, no transfer flags. GpuResourceManager's host-visible/host-coherent compute buffe...
@ DEVICE
Device-local GPU-only buffer.