Structure representing a Ping-Pong buffer setup for compute shaders.
More...
#include <ST_VJ_PingPongBuffer.h>
Structure representing a Ping-Pong buffer setup for compute shaders.
Manages two GPU buffers (read and write) and handles swapping (ping-ponging) between them during compute shader execution.
◆ FST_VJ_PingPongBuffer()
| FST_VJ_PingPongBuffer::FST_VJ_PingPongBuffer |
( |
| ) |
|
|
inline |
Default constructor. Initializes all pointers to nullptr.
◆ ~FST_VJ_PingPongBuffer()
| FST_VJ_PingPongBuffer::~FST_VJ_PingPongBuffer |
( |
| ) |
|
|
inline |
Destructor. Ensures that all resources are properly released.
◆ PingPong()
| void FST_VJ_PingPongBuffer::PingPong |
( |
FRDGBuilder & | GraphBuilder | ) |
|
|
inline |
Swaps the read and write buffers.
- Parameters
-
| GraphBuilder | The graph builder used to create SRV and UAVs for the new buffers. |
◆ RegisterR()
| void FST_VJ_PingPongBuffer::RegisterR |
( |
FRDGBuilder & | GraphBuilder, |
|
|
FString | readName ) |
|
inline |
Registers only the SRV for the read buffer.
- Parameters
-
| GraphBuilder | The graph builder for registering resources. |
| readName | Name used for the read buffer SRV registration. |
◆ RegisterRW()
| void FST_VJ_PingPongBuffer::RegisterRW |
( |
FRDGBuilder & | GraphBuilder, |
|
|
FString | readName, |
|
|
FString | writeName ) |
|
inline |
Registers both the SRV and UAV for the read and write buffers, respectively.
- Parameters
-
| GraphBuilder | The graph builder for registering resources. |
| readName | Name used for the read buffer SRV registration. |
| writeName | Name used for the write buffer UAV registration. |
◆ RegisterW()
| void FST_VJ_PingPongBuffer::RegisterW |
( |
FRDGBuilder & | GraphBuilder, |
|
|
FString | writeName ) |
|
inline |
Registers only the UAV for the write buffer.
- Parameters
-
| GraphBuilder | The graph builder for registering resources. |
| writeName | Name used for the write buffer UAV registration. |
◆ ReleaseData()
| void FST_VJ_PingPongBuffer::ReleaseData |
( |
| ) |
|
|
inline |
Releases all buffer resources and resets references to nullptr.
◆ ReadPooled
| TRefCountPtr<FRDGPooledBuffer> FST_VJ_PingPongBuffer::ReadPooled = nullptr |
Pooled buffer used for reading.
◆ ReadScopedRef
| FRDGBufferRef FST_VJ_PingPongBuffer::ReadScopedRef = nullptr |
RDG scoped reference for the read buffer.
◆ ReadScopedSRV
| FRDGBufferSRVRef FST_VJ_PingPongBuffer::ReadScopedSRV = nullptr |
Shader Resource View for the read buffer.
◆ WritePooled
| TRefCountPtr<FRDGPooledBuffer> FST_VJ_PingPongBuffer::WritePooled = nullptr |
Pooled buffer used for writing.
◆ WriteScopedRef
| FRDGBufferRef FST_VJ_PingPongBuffer::WriteScopedRef = nullptr |
RDG scoped reference for the write buffer.
◆ WriteScopedUAV
| FRDGBufferUAVRef FST_VJ_PingPongBuffer::WriteScopedUAV = nullptr |
Unordered Access View for the write buffer.
The documentation for this struct was generated from the following file:
- H:/Games/Unreal/Aaron/FunWithShaders/Plugins/ST_VJMaster/Source/ST_AudioVisualisation/Public/Compute/Utils/ST_VJ_PingPongBuffer.h