Navigation
API > API/Runtime > API/Runtime/RHI
Inheritance Hierarchy
- FNoncopyable
- FRHICommandListBase
- FRHIComputeCommandList
- FRHICommandList
- FRHICommandListImmediate
References
| Module | RHI |
| Header | /Engine/Source/Runtime/RHI/Public/RHICommandList.h |
| Include | #include "RHICommandList.h" |
Syntax
class FRHICommandListImmediate : public FRHICommandList
Constructors
No constructors are accessible with public or protected access.
Destructors
No destructors are accessible with public or protected access.
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| FTexture2DRHIRef | AsyncReallocateTexture2D
(
FRHITexture2D* Texture2D, |
||
| void | BeginDrawingViewport
(
FRHIViewport* Viewport, |
||
| void | BeginFrame () |
||
| void | BeginScene () |
||
| FUpdateTexture3DData | BeginUpdateTexture3D
(
FRHITexture3D* Texture, |
||
| void | |||
| ETextureReallocationStatus | CancelAsyncReallocateTexture2D
(
FRHITexture2D* Texture2D, |
||
| void | Global graph events must be destroyed explicitly to avoid undefined order of static destruction, as they can be destroyed after their allocator. | ||
| void | CopyBuffer
(
FRHIBuffer* SourceBuffer, |
||
| void | EndDrawingViewport
(
FRHIViewport* Viewport, |
||
| void | EndFrame () |
||
| void | EndMultiUpdateTexture3D
(
TArray< FUpdateTexture3DData >& UpdateDataArray |
||
| void | EndScene () |
||
| void | EndUpdateTexture3D
(
FUpdateTexture3DData& UpdateData |
||
| void | EnqueueLambda
(
LAMBDA&& Lambda |
||
| void | EnqueueLambda
(
const TCHAR* LambdaName, |
||
| ETextureReallocationStatus | FinalizeAsyncReallocateTexture2D
(
FRHITexture2D* Texture2D, |
||
| int32 | |||
| void | |||
| FRHICommandListImmediate & | Get () |
||
| FRHICommandListImmediate & | Get
(
FRHICommandListBase& RHICmdList |
||
| uint32 | |||
| void * | |||
| void * | |||
| void * | |||
| void * | |||
| void * | |||
| void * | |||
| FGraphEventArray & | |||
| bool | GetTextureMemoryVisualizeData
(
FColor* TextureData, |
||
| void | ImmediateFlush
(
EImmediateFlushType::Type FlushType |
Dispatches work to the RHI thread and the GPU. | |
| void | |||
| bool | |||
| bool | IsStalled () |
||
| void * | LockBufferMGPU
(
FRHIBuffer* Buffer, |
LockBufferMGPU / UnlockBufferMGPU may ONLY be called for buffers with the EBufferUsageFlags::MultiGPUAllocate flag set! And buffers with that flag set may not call the regular (single GPU) LockBuffer / UnlockBuffer. | |
| void * | LockStagingBuffer
(
FRHIStagingBuffer* StagingBuffer, |
||
| void * | LockTexture2D
(
FRHITexture2D* Texture, |
||
| void * | LockTexture2DArray
(
FRHITexture2DArray* Texture, |
||
| void * | LockTextureCubeFace
(
FRHITexture* Texture, |
||
| void | MapStagingSurface
(
FRHITexture* Texture, |
||
| void | MapStagingSurface
(
FRHITexture* Texture, |
||
| void | |||
| void | QueueAsyncCommandListSubmit
(
FQueuedCommandList QueuedCommandList, |
||
| void | QueueAsyncCommandListSubmit
(
TArrayView< FQueuedCommandList > CommandLists, |
Chains together one or more RHI command lists into the immediate command list, allowing in-order submission of parallel rendering work. | |
| void | Read3DSurfaceFloatData
(
FRHITexture* Texture, |
||
| void | ReadSurfaceData
(
FRHITexture* Texture, |
||
| void | ReadSurfaceData
(
FRHITexture* Texture, |
||
| void | ReadSurfaceFloatData
(
FRHITexture* Texture, |
||
| void | ReadSurfaceFloatData
(
FRHITexture* Texture, |
||
| void | |||
| bool | |||
| void | |||
| void | Transition
(
TArrayView< const FRHITransitionInfo > Infos, |
Performs an immediate transition with the option of broadcasting to multiple pipelines. | |
| void | UnlockBufferMGPU
(
FRHIBuffer* Buffer, |
||
| void | UnlockStagingBuffer
(
FRHIStagingBuffer* StagingBuffer |
||
| void | UnlockTexture2D
(
FRHITexture2D* Texture, |
||
| void | UnlockTexture2DArray
(
FRHITexture2DArray* Texture, |
||
| void | UnlockTextureCubeFace
(
FRHITexture* Texture, |
||
| void | UnmapStagingSurface
(
FRHITexture* Texture, |
||
| void | |||
| void | UpdateRHIResources
(
FRHIResourceUpdateInfo* UpdateInfos, |
||
| void | UpdateTextureReference
(
FRHITextureReference* TextureRef, |
||
| void | VirtualTextureSetFirstMipInMemory
(
FRHITexture2D* Texture, |
||
| void | VirtualTextureSetFirstMipVisible
(
FRHITexture2D* Texture, |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FQueuedCommandList |
Enums
| Type | Name | Description | |
|---|---|---|---|
| ETranslatePriority |
Constants
| Name | Description |
|---|---|
| FrameDrawStats | |
| RHIThreadTask | |
| WaitOutstandingTasks |
Deprecated Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AdvanceFrameForGetViewportBackBuffer
(
FRHIViewport* Viewport |
Use the global scope RHIAdvanceFrameForGetViewportBackBuffer function. | |
| void | BindDebugLabelName
(
FRHIUnorderedAccessView* UnorderedAccessViewRHI, |
Use the global scope RHIBindDebugLabelName function. | |
| void | BindDebugLabelName
(
FRHITexture* Texture, |
Use the global scope RHIBindDebugLabelName function. | |
| uint32 | ComputeMemorySize
(
FRHITexture* TextureRHI |
Use the global scope RHIComputeMemorySize function. | |
| void | CopySharedMips
(
FRHITexture* DestTexture, |
CopySharedMips should be replaced with UE::RHI::CopySharedMips(). ** Note ** The argument ordering of the new function has changed. The new function also does not issue RHI transitions, so the caller is responsible for ensuring src/dst textures are in CopySrc/CopyDest state. | |
| FAmplificationShaderRHIRef | CreateAmplificationShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreateAmplificationShader function. | |
| FBlendStateRHIRef | CreateBlendState
(
const FBlendStateInitializerRHI& Initializer |
Use the global scope RHICreateBlendState function. | |
| FBoundShaderStateRHIRef | CreateBoundShaderState
(
FRHIVertexDeclaration* VertexDeclaration, |
Use the global scope RHICreateBoundShaderState function. | |
| FComputeFenceRHIRef | CreateComputeFence
(
const FName& Name |
Compute fences are deprecated. Use RHI transitions instead. | |
| FComputePipelineStateRHIRef | CreateComputePipelineState
(
FRHIComputeShader* ComputeShader |
Use the global scope RHICreateComputePipelineState function. | |
| FComputeShaderRHIRef | CreateComputeShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreateComputeShader function. | |
| FDepthStencilStateRHIRef | CreateDepthStencilState
(
const FDepthStencilStateInitializerRHI& Initializer |
Use the global scope RHICreateDepthStencilState function. | |
| FGeometryShaderRHIRef | CreateGeometryShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreateGeometryShader function. | |
| FGPUFenceRHIRef | CreateGPUFence
(
const FName& Name |
Use the global scope RHICreateGPUFence function. | |
| FGraphicsPipelineStateRHIRef | CreateGraphicsPipelineState
(
const FGraphicsPipelineStateInitializer& Initializer |
Use the global scope RHICreateGraphicsPipelineState function. | |
| FMeshShaderRHIRef | CreateMeshShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreateMeshShader function. | |
| FPixelShaderRHIRef | CreatePixelShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreatePixelShader function. | |
| FRasterizerStateRHIRef | CreateRasterizerState
(
const FRasterizerStateInitializerRHI& Initializer |
Use the global scope RHICreateRasterizerState function. | |
| FSamplerStateRHIRef | CreateSamplerState
(
const FSamplerStateInitializerRHI& Initializer |
Use the global scope RHICreateSamplerState function. | |
| FStagingBufferRHIRef | Use the global scope RHICreateStagingBuffer function. | ||
| FUniformBufferRHIRef | CreateUniformBuffer
(
const void* Contents, |
Use the global scope RHICreateUniformBuffer function. | |
| FVertexShaderRHIRef | CreateVertexShader
(
TArrayView< const uint8 > Code, |
Use the global scope RHICreateVertexShader function. | |
| FViewportRHIRef | CreateViewport
(
void* WindowHandle, |
Use the global scope RHICreateViewport function. | |
| void | GenerateMips
(
FRHITexture* Texture |
This function is deprecated and will be removed in future releases. Renderer version implemented. | |
| bool | GetAvailableResolutions
(
FScreenResolutionArray& Resolutions, |
Use the global scope RHIGetAvailableResolutions function. | |
| IRHICommandContext * | Use the global scope RHIGetDefaultContext function. | ||
| bool | GetRenderQueryResult
(
FRHIRenderQuery* RenderQuery, |
Use the global scope RHIGetRenderQueryResult function. | |
| void | GetSupportedResolution
(
uint32& Width, |
Use the global scope RHIGetSupportedResolution function. | |
| void | GetTextureMemoryStats
(
FTextureMemoryStats& OutStats |
Use the global scope RHIGetTextureMemoryStats function. | |
| FTexture2DRHIRef | GetViewportBackBuffer
(
FRHIViewport* Viewport |
Use the global scope RHIGetViewportBackBuffer function. | |
| uint32 | GetViewportNextPresentGPUIndex
(
FRHIViewport* Viewport |
Use the global scope RHIGetViewportNextPresentGPUIndex function. | |
| void | ResizeViewport
(
FRHIViewport* Viewport, |
Use the global scope RHIResizeViewport function. | |
| void | Use the global scope RHIResumeRendering function. | ||
| void | SubmitCommandsHint is deprecated. Consider calling ImmediateFlush(EImmediateFlushType::DispatchToRHIThread) instead. | ||
| void | Use the global scope RHISuspendRendering function. | ||
| void | Tick
(
float DeltaTime |
Use the global scope RHITick function. |