IRHIComputeContext

Context that is capable of doing Compute work. Can be async or compute on the gfx pipe.

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

RHI

Header

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

Include

#include "RHIContext.h"

Syntax

class IRHIComputeContext

Remarks

Context that is capable of doing Compute work. Can be async or compute on the gfx pipe.

Destructors

Name Description

Public function Virtual

~IRHIComputeContext()

Functions

Name Description

Public function

IRHIComputeC...

 

GetHighestLevelContext()

Public function

IRHIComputeC...

 

GetLowestLevelContext()

Fast implementations when the RHI validation layer is disabled.

Public function

void

 

RHIBeginTransitions

(
    TArrayView< const FRHITransition&#...
)

Public function Virtual

void

 

RHIBeginUAVOverlap

Public function Virtual

void

 

RHIBeginUAVOverlap()

Public function Virtual

void

 

RHIBuildAccelerationStructure

(
    FRHIRayTracingGeometry* Geomet...
)

Public function Virtual

void

 

RHIBuildAccelerationStructure

(
    FRHIRayTracingScene* Scene
)

Public function Virtual

void

 

RHIBuildAccelerationStructures

(
    const TArrayView< const FAccelerati...
)

Public function

void

 

RHIClearUAVFloat

(
    FRHIUnorderedAccessView* Unord...,
    const FVector4& Values
)

Clears a UAV to the multi-channel floating point value provided.

Public function

void

 

RHIClearUAVUint

(
    FRHIUnorderedAccessView* Unord...,
    const FUintVector4& Values
)

Clears a UAV to the multi-component unsigned integer value provided.

Public function Virtual

void

 

RHICopyToStagingBuffer

(
    FRHIVertexBuffer* SourceBuffer...,
    FRHIStagingBuffer* Destination...,
    uint32 InOffset,
    uint32 InNumBytes
)

Performs a copy of the data in 'SourceBuffer' to 'DestinationStagingBuffer.' This will occur inline on the GPU timeline.

Public function

void

 

RHIDispatchComputeShader

(
    uint32 ThreadGroupCountX,
    uint32 ThreadGroupCountY,
    uint32 ThreadGroupCountZ
)

Public function

void

 

RHIDispatchIndirectComputeShader

(
    FRHIVertexBuffer* ArgumentBuff...,
    uint32 ArgumentOffset
)

Public function

void

 

RHIEndTransitions

(
    TArrayView< const FRHITransition&#...
)

Public function Virtual

void

 

RHIEndUAVOverlap()

Public function Virtual

void

 

RHIEndUAVOverlap

Public function Virtual

void *

 

RHIGetNativeCommandBuffer()

Public function Virtual

void

 

RHIInvalidateCachedState()

Some RHI implementations (OpenGL) cache render state internally Signal to RHI that cached state is no longer valid

Public function

void

 

RHIPopEvent()

Public function Virtual

void

 

RHIPostExternalCommandsReset()

Public function

void

 

RHIPushEvent

(
    const TCHAR* Name,
    FColor Color
)

Public function Virtual

void

 

RHISetAsyncComputeBudget

(
    EAsyncComputeBudget Budget
)

Public function Virtual

void

 

RHISetComputePipelineState

(
    FRHIComputePipelineState* Comp...
)

Public function

void

 

RHISetComputeShader

(
    FRHIComputeShader* ComputeShad...
)

Sets the current compute shader.

Public function Virtual

void

 

RHISetGlobalUniformBuffers

(
    const FUniformBufferStaticBindings ...
)

Public function Virtual

void

 

RHISetGPUMask

(
    FRHIGPUMask GPUMask
)

Public function

void

 

RHISetShaderParameter

(
    FRHIComputeShader* ComputeShad...,
    uint32 BufferIndex,
    uint32 BaseIndex,
    uint32 NumBytes,
    const void* NewValue
)

Public function

void

 

RHISetShaderResourceViewParameter

(
    FRHIComputeShader* ComputeShad...,
    uint32 SamplerIndex,
    FRHIShaderResourceView* SRV
)

Public function

void

 

RHISetShaderSampler

(
    FRHIComputeShader* ComputeShad...,
    uint32 SamplerIndex,
    FRHISamplerState* NewState
)

Sets sampler state.

Public function

void

 

RHISetShaderTexture

(
    FRHIComputeShader* PixelShader,
    uint32 TextureIndex,
    FRHITexture* NewTexture
)

Set the shader resource view of a surface.

Public function

void

 

RHISetShaderUniformBuffer

(
    FRHIComputeShader* ComputeShad...,
    uint32 BufferIndex,
    FRHIUniformBuffer* Buffer
)

Public function

void

 

RHISetUAVParameter

(
    FRHIComputeShader* ComputeShad...,
    uint32 UAVIndex,
    FRHIUnorderedAccessView* UAV
)

Sets a compute shader UAV parameter.

Public function

void

 

RHISetUAVParameter

(
    FRHIComputeShader* ComputeShad...,
    uint32 UAVIndex,
    FRHIUnorderedAccessView* UAV,
    uint32 InitialCount
)

Sets a compute shader counted UAV parameter and initial count

Public function

void

 

RHISubmitCommandsHint()

Submit the current command buffer to the GPU if possible.

Public function Virtual

void

 

RHITransferTextures

(
    const TArrayView< const FTransferTe...
)

Synchronizes the content of a texture resource between two GPUs using a copy operation.

Public function Virtual

void

 

RHIWriteGPUFence

(
    FRHIGPUFence* FenceRHI
)

Write the fence in the GPU timeline.

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