![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <RHIResources.h>
Inheritance diagram for FRHIGPUFence:Public Member Functions | |
| FRHIGPUFence (FName InName) | |
| virtual void | Clear ()=0 |
| virtual bool | Poll () const =0 |
| virtual bool | Poll (FRHIGPUMask GPUMask) const |
| virtual void | Wait (FRHICommandListImmediate &RHICmdList, FRHIGPUMask GPUMask) const =0 |
| FName | GetFName () const |
Public Member Functions inherited from FRHIResource | |
| RHI_API | FRHIResource (ERHIResourceType InResourceType) |
| uint32 | AddRef () const |
| uint32 | Release () const |
| uint32 | GetRefCount () const |
| bool | IsValid () const |
| void | DisableLifetimeExtension () |
| ERHIResourceType | GetType () const |
| FName | GetOwnerName () const |
| void | SetOwnerName (FName InOwnerName) |
Public Attributes | |
| FThreadSafeCounter | NumPendingWriteCommands |
Protected Attributes | |
| const FName | FenceName |
Additional Inherited Members | |
Protected Member Functions inherited from FRHIResource | |
| virtual RHI_API | ~FRHIResource () |
|
inline |
Implemented in FMetalGPUFence, FD3D12GPUFence, FOpenGLGPUFence, FVulkanGPUFence, and FD3D11GPUFence.
|
inline |
Poll the fence to see if the GPU has signaled it.
CAUTION: Do not call poll in a loop to block until completion. Some platform RHIs will not signal fences unless the RHI thread continues to make progress and submit GPU work.
To block for completion, call Wait(), which can only be done from the render thread.
Use Poll() only to check a fence. If it returns false, continue to do useful work and recheck later, ideally on the following frame.
Implemented in FMetalGPUFence, FD3D12GPUFence, FOpenGLGPUFence, FVulkanGPUFence, and FD3D11GPUFence.
|
inlinevirtual |
Poll on a subset of the GPUs that this fence supports.
CAUTION: Do not call poll in a loop to block until completion. Some platform RHIs will not signal fences unless the RHI thread continues to make progress and submit GPU work.
To block for completion, call Wait(), which can only be done from the render thread.
Use Poll() only to check a fence. If it returns false, continue to do useful work and recheck later, ideally on the following frame.
Reimplemented in FD3D12GPUFence.
|
pure virtual |
Blocks the caller until the fence has passed on the GPU. Can only be called from the render thread.
CAUTION: Use of this function may cause a hitch if the fence is not yet signalled and we have to wait for the GPU to catch up. Rendering code should be written to avoid immediately waiting on GPU fences.
Implemented in FMetalGPUFence, FD3D12GPUFence, FOpenGLGPUFence, FVulkanGPUFence, and FD3D11GPUFence.
|
protected |
| FThreadSafeCounter FRHIGPUFence::NumPendingWriteCommands |