Language:
Discover
By Skill Level
By Category

EBufferUsageFlags

Choose your OS:

Syntax

enum EBufferUsageFlags
{
    BUF_None                 = 0x0000,
    BUF_Static               = 0x0001,
    BUF_Dynamic              = 0x0002,
    BUF_Volatile             = 0x0004,
    BUF_UnorderedAccess      = 0x0008,
    BUF_ByteAddressBuffer    = 0x0020,
    BUF_UAVCounter           = 0x0040,
    BUF_StreamOutput         = 0x0080,
    BUF_DrawIndirect         = 0x0100,
    BUF_ShaderResource       = 0x0200,
    BUF_KeepCPUAccessible    = 0x0400,
    BUF_ZeroStride           = 0x0800,
    BUF_FastVRAM             = 0x1000,
    BUF_Transient            = 0x2000,
    BUF_UINT8                = 0x4000,
    BUF_AnyDynamic           = (BUF_Dynamic | BUF_Volatile),
}

Values

Name

Description

BUF_None

BUF_Static

Mutually exclusive write-frequency flags.

BUF_Dynamic

The buffer will be written to occasionally, GPU read only, CPU write only.

BUF_Volatile

The buffer's data will have a lifetime of one frame.

BUF_UnorderedAccess

Mutually exclusive bind flags.

BUF_ByteAddressBuffer

Allows an unordered access view to be created for the buffer.

BUF_UAVCounter

Create a structured buffer with an atomic UAV counter.

BUF_StreamOutput

Create a buffer that can be bound as a stream output target.

BUF_DrawIndirect

Create a buffer which contains the arguments used by DispatchIndirect or DrawIndirect.

BUF_ShaderResource

Create a buffer that can be bound as a shader resource.

BUF_KeepCPUAccessible

Request that this buffer is directly CPU accessible (

BUF_ZeroStride

Provide information that this buffer will contain only one vertex, which should be delivered to every primitive drawn.

BUF_FastVRAM

Buffer should go in fast vram (hint only). Requires BUF_Transient

BUF_Transient

Buffer should be allocated from transient memory.

BUF_UINT8

Buffer that should be accessed one byte at a time.

BUF_AnyDynamic

Helper bit-masks.

Remarks

Resource usage flags - for vertex and index buffers.

References

Module

RHI

Header

Runtime/RHI/Public/RHIDefinitions.h