FDynamicValueBuffer

Encapsulates the idea of a growable FValueBuffer, that dynamically change in size depending on requirements.

Windows
MacOS
Linux

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/GPUSortManager.h

Include

#include "GPUSortManager.h"

Syntax

struct FDynamicValueBuffer

Remarks

Encapsulates the idea of a growable FValueBuffer, that dynamically change in size depending on requirements. What is specific here is that even after being grown, previous references to the smaller version are still valid for a frame. This requirement comes client system registering GPU sort tasks in InitViews(), before the total size required for the frame is known.

Variables

Name Description

Public variable

int32

 

CurrentSortBatchId

The sort batch using this buffer for this frame.

Public variable

EGPUSortFlags

 

LastSortBatchFlags

The last batch flags that used this buffer. Used to help rebind the same SortBatch between frames.

Public variable

int32

 

NumFramesRequiringShrinking

A counter used to delay shrinking by several frames.

Public variable

FValueBufferArr...

 

ValueBuffers

The current list of increasingly bigger value buffers.

Destructors

Name Description

Public function

~FDynamicValueBuffer()

Functions

Name Description

Public function

void

 

Allocate

(
    FAllocationInfo& OutInfo,
    const FSettings& InSettings,
    int32 ValueCount,
    EGPUSortFlags Flags
)

Allocate some space into the buffer for this frame.

Public function Const

int32

 

GetAllocatedCount()

Get the buffer allocated size .

Public function Const

int32

 

GetUsedCount()

Get currently used size for this frame.

Public function

void

 

ReleaseRHI()

Release resources

Public function

void

 

SkrinkAndReset

(
    const FSettings& InSettings
)

Shrinks the buffer after it has been used this frame if applicable.

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