EBufferUsageFlags

Resource usage flags - for vertex and index buffers.

Windows
MacOS
Linux

References

Module

RHI

Header

/Engine/Source/Runtime/RHI/Public/RHIDefinitions.h

Include

#include "RHIDefinitions.h"

Syntax

enum EBufferUsageFlags
{
    BUF_None                     = 0x0000,
    BUF_Static                   = 0x0001,
    BUF_Dynamic                  = 0x0002,
    BUF_Volatile                 = 0x0004,
    BUF_UnorderedAccess          = 0x0008,
    BUF_ByteAddressBuffer        = 0x0020,
    BUF_SourceCopy               = 0x0040,
    BUF_StreamOutput             = 0x0080,
    BUF_DrawIndirect             = 0x0100,
    BUF_ShaderResource           = 0x0200,
    BUF_KeepCPUAccessible        = 0x0400,
    BUF_FastVRAM                 = 0x1000,
    BUF_Transient                = 0x2000,
    BUF_Shared                   = 0x4000,
    BUF_AccelerationStructure    = 0x8000,
    BUF_VertexBuffer             = 0x10000,
    BUF_IndexBuffer              = 0x20000,
    BUF_StructuredBuffer         = 0x40000,
    BUF_AnyDynamic               = (BUF_Dynamic | BUF_Volatile),
}

Values

Name

Description

BUF_None

BUF_Static

The buffer will be written to once.

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

Create a byte address buffer, which is basically a structured buffer with a uint32 type.

BUF_SourceCopy

Buffer that the GPU will use as a source for a copy.

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_FastVRAM

Unused BUF_ZeroStride = 0x0800, Buffer should go in fast vram (hint only). Requires BUF_Transient

BUF_Transient

Buffer should be allocated from transient memory.

BUF_Shared

Create a buffer that can be shared with an external RHI or process.

BUF_AccelerationStructure

Buffer contains opaque ray tracing acceleration structure data.

BUF_VertexBuffer

BUF_IndexBuffer

BUF_StructuredBuffer

BUF_AnyDynamic

Helper bit-masks.

Remarks

Resource usage flags - for vertex and index buffers.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss