RHI

Classes

Name

Description

Public struct

FAccelerationStructureUpdateParams

Public class

FAsyncReallocationRequest

Asynchronous reallocation request.

Public class

FBlendStateInitializerRHI

Public struct

FBoundShaderStateInput

Public class

FBoundShaderStateKey

Key used to map a set of unique decl/vs/ps combinations to a vertex shader resource

Public class

FBoundShaderStateLookupKey

Non-reference-counted version of shader state key.

Public struct

FByteAddressBuffer

Public class

FCachedBoundShaderStateLink

Encapsulates a bound shader state's entry in the cache.

Public class

FCachedBoundShaderStateLink_Threadsafe

Public struct

FClearValueBinding

Public struct

FComputedGraphicsPipelineState

Public struct

FComputedUniformBuffer

Public struct

FCopyBufferRegionParams

Public struct

FDepthStencilStateInitializerRHI

Public class

FDumpTransitionsHelper

Public struct

FDynamicReadBuffer

Public class

FDynamicRHI

The interface which is implemented by the dynamically bound RHI.

Public class

FExclusiveDepthStencil

Public class

FGenericRHIGPUFence

Generic implementation of FRHIGPUFence .

Public class

FGenericRHIStagingBuffer

Public class

FGPUDefragAllocator

Simple best fit allocator, splitting and coalescing whenever/ wherever possible.

Public struct

FGPUProfiler

Encapsulates GPU profiling logic and data.

Public class

FGPUProfilerEventNode

Stats for a single perf event node.

Public struct

FGPUProfilerEventNodeFrame

An entire frame of perf event nodes, including ancillary timers.

Public class

FGPUProfilerEventNodeStats

Stats for a single perf event node.

Public struct

FGPUTiming

Holds information if this platform's GPU allows timing

Public struct

FGPUTimingCalibrationTimestamp

Two timestamps performed on GPU and CPU at nearly the same time.

Public class

FGraphicsMinimalPipelineStateInitializer

Pipeline state without render target state Useful for mesh passes where the render target state is not changing between draws.

Public class

FGraphicsPipelineStateInitializer

Public struct

FImmutableSamplerState

Public class

FInitStaticResourceRenderThreadTask

Helper task to initialize a static resource on the render thread.

Public class

FLastRenderTimeContainer

Textures

Public struct

FLocalCmdListParallelRenderPass

Public struct

FLocalCmdListRenderSubPass

Public struct

FLocalUniformBuffer

Public struct

FLocalUniformBufferWorkArea

Public struct

FLockTracker

Public struct

FPipelineCacheFileFormatPSO

Public struct

FPipelineCacheFileFormatPSORead

Public struct

FPipelineCachePSOHeader

Public class

FPipelineFileCache

Public struct

FPipelineFileCacheRasterizerState

Public struct

FPipelineStateStats

Tracks stats for the current session between opening & closing the file-cache.

Public struct

FPSOUsageData

FPipelineFileCache : The RHI-level backend for FShaderPipelineCache , responsible for tracking PSOs and their usage stats as well as dealing with the pipeline cache files.

Public struct

FRasterizerStateInitializerRHI

Public struct

FRayTracingGeometryInitializer

Public struct

FRayTracingGeometryInstance

Public struct

FRayTracingGeometrySegment

Public struct

FRayTracingSceneInitializer

Public struct

FReadBuffer

Encapsulates a GPU read buffer with its SRV.

Public class

FReadSurfaceDataFlags

To customize the RHIReadSurfaceData() output

Public class

FRenderTask

Public struct

FResolveParams

Public struct

FResolveRect

Public class

FResourceTransitionUtility

Public class

FRHIAsyncComputeCommandList

Public class

FRHIAsyncComputeCommandListImmediate

Single commandlist for async compute generation.

Public class

FRHIBlendState

Public class

FRHIBoundShaderState

Public struct

FRHICommand

Public struct

FRHICommandAutomaticCacheFlushAfterComputeShader

Public struct

FRHICommandBase

Public struct

FRHICommandBeginComputePass

Public struct

FRHICommandBeginDrawingViewport

Public struct

FRHICommandBeginFrame

Public struct

FRHICommandBeginParallelRenderPass

Public struct

FRHICommandBeginRenderPass

Public struct

FRHICommandBeginRenderQuery

Public struct

FRHICommandBeginRenderSubPass

Public struct

FRHICommandBeginScene

Public struct

FRHICommandBeginUpdateMultiFrameResource

Public struct

FRHICommandBeginUpdateMultiFrameUAV

Public struct

FRHICommandBindClearMRTValues

Public struct

FRHICommandBuildLocalUniformBuffer

Public struct

FRHICommandClearColorTexture

Public struct

FRHICommandClearColorTextures

Public struct

FRHICommandClearDepthStencilTexture

Public struct

FRHICommandClearTinyUAV

Public struct

FRHICommandCopyTexture

Public struct

FRHICommandCopyToResolveTarget

Public struct

FRHICommandCopyToStagingBuffer

Public struct

FRHICommandDebugBreak

Public struct

FRHICommandDiscardRenderTargets

Public struct

FRHICommandDispatchComputeShader

Public struct

FRHICommandDispatchIndirectComputeShader

Public struct

FRHICommandDrawIndexedIndirect

Public struct

FRHICommandDrawIndexedPrimitive

Public struct

FRHICommandDrawIndexedPrimitiveIndirect

Public struct

FRHICommandDrawPrimitive

Public struct

FRHICommandDrawPrimitiveIndirect

Public struct

FRHICommandEndComputePass

Public struct

FRHICommandEndDrawIndexedPrimitiveUP

Public struct

FRHICommandEndDrawingViewport

Public struct

FRHICommandEndDrawPrimitiveUP

Public struct

FRHICommandEndFrame

Public struct

FRHICommandEndParallelRenderPass

Public struct

FRHICommandEndRenderPass

Public struct

FRHICommandEndRenderQuery

Public struct

FRHICommandEndRenderSubPass

Public struct

FRHICommandEndScene

Public struct

FRHICommandEndUpdateMultiFrameResource

Public struct

FRHICommandEndUpdateMultiFrameUAV

Public struct

FRHICommandFlushComputeShaderCache

Public struct

FRHICommandInvalidateCachedState

Public class

FRHICommandList

Public class

FRHICommandList_RecursiveHazardous

Public class

FRHICommandListBase

Public struct

FRHICommandListDebugContext

Public class

FRHICommandListExecutor

Public class

FRHICommandListFenceAllocator

Thread-safe allocator for GPU fences used in deferred command list execution Fences are stored in a ringbuffer

Public class

FRHICommandListImmediate

Public class

FRHICommandListIterator

Helper class for traversing a FRHICommandList .

Public struct

FRHICommandPollOcclusionQueries

Public struct

FRHICommandPopEvent

Public struct

FRHICommandPushEvent

Public struct

FRHICommandSetAsyncComputeBudget

Public struct

FRHICommandSetBlendFactor

Public struct

FRHICommandSetComputePipelineState

Public struct

FRHICommandSetComputeShader

Public struct

FRHICommandSetDepthBounds

Public struct

FRHICommandSetGraphicsPipelineState

Public struct

FRHICommandSetLocalUniformBuffer

Public struct

FRHICommandSetRenderTargets

Public struct

FRHICommandSetRenderTargetsAndClear

Public struct

FRHICommandSetScissorRect

Public struct

FRHICommandSetShaderParameter

Public struct

FRHICommandSetShaderResourceViewParameter

Public struct

FRHICommandSetShaderSampler

Public struct

FRHICommandSetShaderTexture

Public struct

FRHICommandSetShaderUniformBuffer

Public struct

FRHICommandSetStencilRef

Public struct

FRHICommandSetStereoViewport

Public struct

FRHICommandSetStreamSource

Public struct

FRHICommandSetUAVParameter

Public struct

FRHICommandSetUAVParameter_IntialCount

Public struct

FRHICommandSetViewport

Public struct

FRHICommandSubmitCommandsHint

Public struct

FRHICommandTransitionTextures

Public struct

FRHICommandTransitionTexturesArray

Public struct

FRHICommandTransitionUAVs

Public struct

FRHICommandUpdateTextureReference

Public struct

FRHICommandWaitComputeFence

Public class

FRHIComputeFence

Public class

FRHIComputePipelineState

Public class

FRHIComputePipelineStateFallback

Public class

FRHIComputeShader

Public struct

FRHICopyTextureInfo

Public class

FRHICustomPresent

Public class

FRHIDepthRenderTargetView

Public class

FRHIDepthStencilState

Public struct

FRHIDispatchIndirectParameters

Public class

FRHIDomainShader

Public struct

FRHIDrawIndexedIndirectParameters

Public struct

FRHIDrawIndirectParameters

Public struct

FRHIFlipDetails

Struct to provide details of swap chain flips

Public class

FRHIGeometryShader

Public class

FRHIGPUFence

Misc Generic GPU fence class.

Public struct

FRHIGPUMask

A mask where each bit is a GPU index.

Public class

FRHIGPUMemoryReadback

FRHIGPUMemoryReadback : Represents a memory readback request scheduled with CopyToStagingBuffer Wraps a FRHIStagingBuffer with a FRHIGPUFence for synchronization.

Public class

FRHIGraphicsPipelineState

Pipeline States

Public class

FRHIGraphicsPipelineStateFallBack

This PSO is used as a fallback for RHIs that dont support PSOs. It is used to set the graphics state using the legacy state setting APIs.

Public class

FRHIHullShader

Public class

FRHIIndexBuffer

Public struct

FRHILockTracker

Public class

FRHIPipelineBinaryLibrary

Public class

FRHIPixelShader

Public class

FRHIRasterizerState

Public class

FRHIRayTracingGeometry

Ray tracing resourcesBottom level ray tracing acceleration structure (contains triangles).

Public class

FRHIRayTracingPipelineState

Public class

FRHIRayTracingScene

Top level ray tracing acceleration structure (contains instances of meshes).

Public class

FRHIRayTracingShader

Public struct

FRHIRenderPassInfo

Public class

FRHIRenderQuery

Public class

FRHIRenderTargetView

Public class

FRHIResource

The base type of RHI resources.

Public struct

FRHIResourceCreateInfo

Public struct

FRHIResourceInfo

Public struct

FRHIResourceTableEntry

Public class

FRHISamplerState

State blocks

Public class

FRHISetRenderTargetsInfo

Public class

FRHIShader

Shaders

Public class

FRHIShaderLibrary

Shader Library

Public class

FRHIShaderResourceView

Public class

FRHIStagingBuffer

Generic staging buffer class used by FRHIGPUMemoryReadback RHI specific staging buffers derive from this

Public class

FRHIStructuredBuffer

Public class

FRHITexture

Public class

FRHITexture2D

Public class

FRHITexture2DArray

Public class

FRHITexture3D

Public class

FRHITextureCube

Public class

FRHITextureReference

Public class

FRHITextureReferenceNullImpl

Public class

FRHIUniformBuffer

Public struct

FRHIUniformBufferLayout

The layout of a uniform buffer in memory.

Public class

FRHIUnorderedAccessView

Views

Public class

FRHIVertexBuffer

Public class

FRHIVertexDeclaration

Public class

FRHIVertexShader

Public class

FRHIViewport

Public struct

FRWBuffer

Encapsulates a GPU read/write buffer with its UAV and SRV.

Public struct

FRWBufferStructured

Encapsulates a GPU read/write structured buffer with its UAV and SRV.

Public struct

FRWByteAddressBuffer

Encapsulates a GPU read/write ByteAddress buffer with its UAV and SRV.

Public struct

FSamplerStateInitializerRHI

Public struct

FScopedCommandListWaitForTasks

Public class

FScopedGPUDefragLock

FScopedGPUDefragLock can't cover any scope that will add dcb commands or we might deadlock with a master reserve failure.

Public struct

FScopedGPUMask

Public class

FScopedRHIThreadStaller

Public struct

FScreenResolutionRHI

Screen Resolution

Public struct

FStreamOutElement

RHI representation of a single stream out element.

Public struct

FTextureMemoryStats

Public struct

FUpdateTexture3DData

Struct to hold common data between begin/end updatetexture3d

Public struct

FUpdateTextureRegion2D

Specifies an update region for a texture

Public struct

FUpdateTextureRegion3D

Specifies an update region for a texture

Public struct

FVertexElement

Public class

FVertexElementTypeSupportInfo

Info for supporting the vertex element types

Public struct

FViewportBounds

Viewport bounds structure to set multiple view ports for the geometry shader (needs to be 1:1 to the D3D11 structure)

Public struct

FVRamAllocation

Public class

FWindowedGPUTimer

Simple moving window averaged GPU timer; create an instance, call Begin() and End() around the block to time, then call GetElapsedAverage to get the averaged timings; BufferSize determines the number of queries in the window, FramesBehind determines how long we wait to grab query results, so we don't have to block on them, so the effective window size is BufferSize - FramesBehind The timer keeps track of failed queries; GetElapsedAverage returns a float [0;1] that indicates fail rate: 0 means no queries have failed, 1 means all queries within the window have failed.

Public class

IDynamicRHIModule

Defines the interface of a module implementing a dynamic RHI.

Public class

IRHICommandContext

The interface RHI command context.

Public class

IRHICommandContextContainer

Public class

IRHICommandContextPSOFallback

Command Context for RHIs that do not support real Graphics Pipelines.

Public class

IRHIComputeContext

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

Public class

TPsoLruCache

Implements a Least Recently Used (LRU) cache.

Public class

TRHIGlobal

Wrapper for GRHI## global variables, allows values to be overridden for mobile preview modes.

Public struct

TRHIShaderToEnum

Template magic to convert an FRHI*Shader to its enum.

Public class

TStaticBlendState

A static RHI blend state resource.

Public class

TStaticBlendStateWriteMask

A static RHI blend state resource which only allows controlling MRT write masks, for use when only opaque blending is needed.

Public class

TStaticDepthStencilState

A static RHI stencil state resource.

Public class

TStaticRasterizerState

A static RHI rasterizer state resource.

Public class

TStaticSamplerState

A static RHI sampler state resource.

Public class

TStaticStateRHI

The base class of the static RHI state classes.

Constants

Name

Description

MAX_TEXTURE_MIP_COUNT

Maximum number of miplevels in a texture.

MaxImmutableSamplers

Maximum number of immutable samplers in a PSO.

MaxSimultaneousRenderTargets

The number of render-targets that may be simultaneously written to.

MaxSimultaneousRenderTargets_NumBits

The number of render-targets that may be simultaneously written to.

MaxSimultaneousUAVs

The number of UAVs that may be simultaneously bound to a shader.

MaxVertexElementCount

The maximum number of vertex elements which can be used by a vertex declaration.

MaxVertexElementCount_NumBits

The maximum number of vertex elements which can be used by a vertex declaration.

NAME_GLSL_150

NAME_GLSL_150_ES2

NAME_GLSL_150_ES2_NOUB

NAME_GLSL_150_ES31

NAME_GLSL_310_ES_EXT

NAME_GLSL_430

NAME_GLSL_ES2

NAME_GLSL_ES2_IOS

NAME_GLSL_ES2_WEBGL

NAME_GLSL_ES3_1_ANDROID

NAME_GLSL_SWITCH

NAME_GLSL_SWITCH_FORWARD

NAME_PCD3D_ES2

NAME_PCD3D_ES3_1

NAME_PCD3D_SM4

NAME_PCD3D_SM5

NAME_SF_METAL

NAME_SF_METAL_MACES2

NAME_SF_METAL_MACES3_1

NAME_SF_METAL_MRT

NAME_SF_METAL_MRT_MAC

NAME_SF_METAL_MRT_TVOS

NAME_SF_METAL_SM5

NAME_SF_METAL_SM5_NOTESS

NAME_SF_METAL_TVOS

NAME_SF_PS4

NAME_SF_XBOXONE_D3D12

NAME_VULKAN_ES3_1

NAME_VULKAN_ES3_1_ANDROID

NAME_VULKAN_ES3_1_ANDROID_NOUB

NAME_VULKAN_ES3_1_LUMIN

NAME_VULKAN_ES3_1_LUMIN_NOUB

NAME_VULKAN_ES3_1_NOUB

NAME_VULKAN_SM4

NAME_VULKAN_SM4_NOUB

NAME_VULKAN_SM5

NAME_VULKAN_SM5_LUMIN

NAME_VULKAN_SM5_LUMIN_NOUB

NAME_VULKAN_SM5_NOUB

ShaderArrayElementAlignBytes

The alignment in bytes between elements of array shader parameters.

Typedefs

Name

Description

FBlendStateRHIParamRef

FBlendStateRHIRef

FBoundShaderStateRHIParamRef

FBoundShaderStateRHIRef

FComputeFenceRHIParamRef

FComputeFenceRHIRef

FComputeShaderRHIParamRef

FComputeShaderRHIRef

FCustomPresentRHIParamRef

FCustomPresentRHIRef

FDepthStencilStateRHIParamRef

FDepthStencilStateRHIRef

FDomainShaderRHIParamRef

FDomainShaderRHIRef

FGeometryShaderRHIParamRef

FGeometryShaderRHIRef

FGPUFenceRHIParamRef

FGPUFenceRHIRef

FGraphicsPipelineStateRHIParamRef

FGraphicsPipelineStateRHIRef

FHullShaderRHIParamRef

FHullShaderRHIRef

FIndexBufferRHIParamRef

FIndexBufferRHIRef

FPixelShaderRHIParamRef

FPixelShaderRHIRef

FPSOMaskComparisonFn

User definable Mask Comparsion function:

FRasterizerStateRHIParamRef

FRasterizerStateRHIRef

FRayTracingGeometryRHIParamRef

FRayTracingGeometryRHIRef

FRayTracingPipelineStateRHIParamRef

FRayTracingPipelineStateRHIRef

FRayTracingSceneRHIParamRef

FRayTracingSceneRHIRef

FRayTracingShaderRHIParamRef

FRayTracingShaderRHIRef

FRenderQueryRHIParamRef

FRenderQueryRHIRef

FRHIPanicEvent

Panic delegate is called when when a fatal condition is encountered within RHI function.

FRHIPipelineBinaryLibraryParamRef

FRHIPipelineBinaryLibraryRef

FRHIShaderLibraryParamRef

FRHIShaderLibraryRef

FSamplerStateRHIParamRef

FSamplerStateRHIRef

FScreenResolutionArray

FShaderResourceViewRHIParamRef

FShaderResourceViewRHIRef

FStagingBufferRHIParamRef

FStagingBufferRHIRef

FStreamOutElementList

FStructuredBufferRHIParamRef

FStructuredBufferRHIRef

FTexture2DArrayRHIParamRef

FTexture2DArrayRHIRef

FTexture2DRHIParamRef

FTexture2DRHIRef

FTexture3DRHIParamRef

FTexture3DRHIRef

FTextureCubeRHIParamRef

FTextureCubeRHIRef

FTextureReferenceRHIParamRef

FTextureReferenceRHIRef

FTextureRHIParamRef

FTextureRHIRef

FUniformBufferRHIParamRef

FUniformBufferRHIRef

FUnorderedAccessViewRHIParamRef

FUnorderedAccessViewRHIRef

FVertexBufferRHIParamRef

FVertexBufferRHIRef

FVertexDeclarationElementList

FVertexDeclarationElementList

Shader bindings

FVertexDeclarationRHIParamRef

FVertexDeclarationRHIRef

FVertexShaderRHIParamRef

FVertexShaderRHIRef

FViewportRHIParamRef

FViewportRHIRef

Enums

Name

Description

Public enum

EApplyRendertargetOption

Utility flags for modifying render target behavior on a PSO.

Public enum

EAsyncComputeBudget

Hint to the driver on how to load balance async compute work.

Public enum

EAsyncComputePriority

Public enum

EBlendFactor

Public enum

EBlendOperation

Public enum

EBufferUsageFlags

Resource usage flags - for vertex and index buffers.

Public enum

EClearBinding

Public enum

EClearDepthStencil

Public enum

ECmdList

Public enum

EColorWriteMask

Public enum

ECompareFunction

Public enum

ECubeFace

Public enum

EDepthStencilTargetActions

Public enum

EImmediateFlushType::Type

Public enum

EPrimitiveTopologyType

Public enum

EPrimitiveType

Public enum

ERangeCompressionMode

Limited to 8 types in FReadSurfaceDataFlags

Public enum

ERasterizerCullMode

Public enum

ERasterizerFillMode

Public enum

ERenderQueryType

Public enum

ERenderTargetActions

Public enum

ERenderTargetLoadAction

Action to take when a rendertarget is set.

Public enum

ERenderTargetStoreAction

Action to take when a rendertarget is unset or at the end of a pass.

Public enum

EResourceAliasability

Public enum

EResourceLockMode

Public enum

EResourceTransitionAccess

Public enum

EResourceTransitionPipeline

Public enum

ERHIFeatureLevel::Type

The RHI's feature level indicates what level of support can be relied upon.

Public enum

ERHIResourceType

An enumeration of the different RHI reference types.

Public enum

ERHIShadingPath::Type

The RHI's currently enabled shading path.

Public enum

ERHIZBuffer

Public enum

ESamplerAddressMode

Public enum

ESamplerCompareFunction

Public enum

ESamplerFilter

Public enum

EShaderFrequency

Public enum

EShaderPlatform

: update LegacyShaderPlatform when the below changes

Public enum

ESimpleRenderTargetMode

Common render target use cases

Public enum

EStencilMask

Public enum

EStencilOp

Public enum

ETextureCreateFlags

Flags used for texture creation

Public enum

ETextureReallocationStatus

Async texture reallocation status, returned by RHIGetReallocateTexture2DStatus().

Public enum

EUniformBufferBaseType

The base type of a value in a uniform buffer.

Public enum

EUniformBufferUsage

Public enum

EUniformBufferValidation

Public enum

EVertexElementType

Functions

Name Description

Public function

FMatrix

 

AdjustProjectionMatrixForRHI

(
    const FMatrix & InProjectionMatrix
)

Adjusts a projection matrix to output in the correct clip space for the current RHI.

Public function

void

 

appDefragmentTexturePool()

Defragment the texture pool.

Public function

void

 

appDumpTextureMemoryStats

(
    const TCHAR *
)

Log the current texture memory stats.

Public function

bool

 

appIsPoolTexture

(
    FTextureRHIParamRef TextureRHI
)

Checks if the texture data is allocated within the texture pool or not.

Public function

uint32

 

ComputeAnisotropyRT

(
    int32 InitializerMaxAnisotropy
)

Public function

void

 

DecodeRenderTargetMode

(
    ESimpleRenderTargetMode Mode,
    ERenderTargetLoadAction & ColorLoad...,
    ERenderTargetStoreAction & ColorSto...,
    ERenderTargetLoadAction & DepthLoad...,
    ERenderTargetStoreAction & DepthSto...,
    ERenderTargetLoadAction & StencilLo...,
    ERenderTargetStoreAction & StencilS...,
    FExclusiveDepthStencil DepthStencil...
)

Convert the ESimpleRenderTargetMode into usable values

Public function

void

 

DrawIndexedPrimitiveUP

(
    FRHICommandList & RHICmdList,
    uint32 PrimitiveType,
    uint32 MinVertexIndex,
    uint32 NumVertices,
    uint32 NumPrimitives,
    const void* IndexData,
    uint32 IndexDataStride,
    const void* VertexData,
    uint32 VertexDataStride
)

This function is deprecated and will be removed in future releases.

Public function

void

 

DrawPrimitiveUP

(
    FRHICommandList & RHICmdList,
    uint32 PrimitiveType,
    uint32 NumPrimitives,
    const void* VertexData,
    uint32 VertexDataStride
)

This function is deprecated and will be removed in future releases.

Public function

void

 

EmptyCachedBoundShaderStates()

Public function

FCachedBound ...

 

GetCachedBoundShaderState

(
    FVertexDeclarationRHIParamRef Verte...,
    FVertexShaderRHIParamRef VertexShad...,
    FPixelShaderRHIParamRef PixelShader,
    FHullShaderRHIParamRef HullShader,
    FDomainShaderRHIParamRef DomainShad...,
    FGeometryShaderRHIParamRef Geometry...
)

Searches for a cached bound shader state.

Public function

FBoundShader ...

 

GetCachedBoundShaderState_Threadsafe

(
    FVertexDeclarationRHIParamRef Verte...,
    FVertexShaderRHIParamRef VertexShad...,
    FPixelShaderRHIParamRef PixelShader,
    FHullShaderRHIParamRef HullShader,
    FDomainShaderRHIParamRef DomainShad...,
    FGeometryShaderRHIParamRef Geometry...
)

Searches for a cached bound shader state. Threadsafe version.

Public function

ERenderTarge ...

 

GetDepthActions

(
    EDepthStencilTargetActions Action
)

Public function

uint32

 

GetExpectedFeatureLevelMaxTextureSamplers

(
    ERHIFeatureLevel::Type FeatureLevel
)

Return what the expected number of samplers will be supported by a feature level Note that since the Feature Level is pretty orthogonal to the RHI/HW, this is not going to be perfect If should only be used for a guess at the limit, the real limit will not be known until runtime

Public function

bool

 

GetFeatureLevelFromName

(
    FName Name,
    ERHIFeatureLevel::Type & OutFeature...
)

Current shader platform.

Public function

int32

 

GetFeatureLevelMaxNumberOfBones

(
    ERHIFeatureLevel::Type FeatureLevel
)

Public function

void

 

GetFeatureLevelName

(
    ERHIFeatureLevel::Type InFeatureLev...,
    FName & OutName
)

Creates an FName for the given feature level.

Public function

void

 

GetFeatureLevelName

(
    ERHIFeatureLevel::Type InFeatureLev...,
    FString & OutName
)

Creates a string for the given feature level.

Public function

EShaderPlatf ...

 

GetFeatureLevelShaderPlatform

(
    ERHIFeatureLevel::Type InFeatureLev...
)

Get the shader platform associated with the supplied feature level on this machine

Public function Static

const FText ...

 

GetFriendlyShaderPlatformName

(
    const EShaderPlatform InShaderPlatf...
)

Public function

ERenderTarge ...

 

GetLoadAction

(
    ERenderTargetActions Action
)

Public function

uint32

 

GetMax2DTextureDimension()

Public function

uint32

 

GetMaxCubeTextureDimension()

Public function

ERHIFeatureL ...

 

GetMaxSupportedFeatureLevel

(
    EShaderPlatform InShaderPlatform
)

Public function

uint32

 

GetMaxTextureArrayLayers()

Public function

uint32

 

GetMaxTextureSamplers()

Public function

const TCHAR ...

 

GetSelectedDynamicRHIModuleName

(
    bool bCleanup
)

Name of the RHI module that will be created when PlatformCreateDynamicRHI is called NOTE: This function is very slow when called before RHIInit

Public function

const TCHAR ...

 

GetShaderFrequencyString

(
    EShaderFrequency Frequency,
    bool bIncludePrefix
)

Public function

bool

 

GetShadingPathFromName

(
    FName Name,
    ERHIShadingPath::Type & OutShadingP...
)

Finds a corresponding ERHIShadingPath::Type given an FName , or returns false if one could not be found.

Public function

void

 

GetShadingPathName

(
    ERHIShadingPath::Type InShadingPath,
    FName & OutName
)

Creates an FName for the given shading path.

Public function

void

 

GetShadingPathName

(
    ERHIShadingPath::Type InShadingPath,
    FString & OutName
)

Creates a string for the given shading path.

Public function

EShaderPlatf ...

 

GetSimulatedPlatform

(
    EShaderPlatform Platform
)

Public function

FRasterizerS ...

 

GetStaticRasterizerState

(
    ERasterizerFillMode FillMode,
    ERasterizerCullMode CullMode
)

Given a fill and cull mode, returns a static rasterizer state.

Public function

ERenderTarge ...

 

GetStencilActions

(
    EDepthStencilTargetActions Action
)

Public function

ERenderTarge ...

 

GetStoreAction

(
    ERenderTargetActions Action
)

Public function

uint32

 

GetVertexCountForPrimitiveCount

(
    uint32 NumPrimitives,
    uint32 PrimitiveType
)

Computes the vertex count for a given number of primitives of the specified type.

Public function

bool

 

IsAndroidOpenGLESPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsConsolePlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsD3DPlatform

(
    const EShaderPlatform Platform,
    bool bIncludeXboxOne
)

Public function Static

bool

 

IsDepthOrStencilFormat

(
    EPixelFormat Format
)

Public function

bool

 

IsES2Platform

(
    const EShaderPlatform Platform
)

Whether the shader platform corresponds to the ES2 feature level.

Public function

bool

 

IsFeatureLevelSupported

(
    EShaderPlatform InShaderPlatform,
    ERHIFeatureLevel::Type InFeatureLev...
)

Returns true if the feature level is supported by the shader platform.

Public function

bool

 

IsHlslccShaderPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsMetalMobilePlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsMetalMRTPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsMetalPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsMetalSM5Platform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsMobilePlatform

(
    const EShaderPlatform Platform
)

Whether the shader platform corresponds to the ES2/ES3.1 feature level.

Public function

bool

 

IsOpenGLPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsPCPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsPS4Platform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsRDGResourceReferenceShaderParameterType

(
    EUniformBufferBaseType BaseType
)

Returns whether the shader parameter type is a reference onto a RDG resource.

Public function

bool

 

IsRHIDeviceAMD()

To trigger GPU specific optimizations and fallbacks

Public function

bool

 

IsRHIDeviceIntel()

To trigger GPU specific optimizations and fallbacks

Public function

bool

 

IsRHIDeviceNVIDIA()

To trigger GPU specific optimizations and fallbacks

Public function

bool

 

IsRunningRHIInDedicatedThread()

Whether the RHI commands are being run on a dedicated thread other than the render thread

Public function

bool

 

IsRunningRHIInSeparateThread()

Whether the RHI commands are being run in a thread other than the render thread

Public function

bool

 

IsRunningRHIInTaskThread()

Whether the RHI commands are being run on a dedicated thread other than the render thread

Public function

bool

 

IsShaderParameterTypeForUniformBufferLayout

(
    EUniformBufferBaseType BaseType
)

Returns whether the shader parameter type needs to be passdown to RHI through FRHIUniformBufferLayout when creating an uniform buffer.

Public function

bool

 

IsShaderParameterTypeIgnoredByRHI

(
    EUniformBufferBaseType BaseType
)

Returns whether the shader parameter type in FRHIUniformBufferLayout is actually ignored by the RHI.

Public function

bool

 

IsSimulatedPlatform

(
    EShaderPlatform Platform
)

Returns true if the shader platform Platform is used to simulate a mobile feature level on a PC platform.

Public function

bool

 

IsSwitchPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsVulkanMobilePlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsVulkanPlatform

(
    const EShaderPlatform Platform
)

Public function

bool

 

IsVulkanSM5Platform

(
    const EShaderPlatform Platform
)

Public function

FName

 

LegacyShaderPlatformToShaderFormat

(
    EShaderPlatform Platform
)

Public function

constexpr ED ...

 

MakeDepthStencilTargetActions

(
    const ERenderTargetActions Depth,
    const ERenderTargetActions Stencil
)

Public function

ERenderTarge ...

 

MakeRenderTargetActions

(
    ERenderTargetLoadAction Load,
    ERenderTargetStoreAction Store
)

Public function

constexpr bo...

 

operator!

Public function

constexpr EA ...

 

operator&

Public function

EApplyRender ...

 

operator&=

Public function

constexpr EA ...

 

operator^

Public function

EApplyRender ...

 

operator^=

Public function

constexpr EA ...

 

operator|

Public function

EApplyRender ...

 

operator|=

Public function

constexpr EA ...

 

operator~

Public function

bool

 

operator==

(
    const FRHIUniformBufferLayout::FRes ...,
    const FRHIUniformBufferLayout::FRes ...
)

Compare two uniform buffer layouts.

Public function

bool

 

operator==

(
    const FRHIUniformBufferLayout & A,
    const FRHIUniformBufferLayout & B
)

Compare two uniform buffer layouts.

Public function

void

 

PipelineStateCache::FlushResources()

Evicts unused state entries based on r.pso.evictiontime time.

Public function

FComputePipe...

 

PipelineStateCache::GetAndOrCreateComputePipelineState

(
    FRHICommandList & RHICmdList,
    FRHIComputeShader * ComputeShad...
)

Public function

FGraphicsPip...

 

PipelineStateCache::GetAndOrCreateGraphicsPipelineState

(
    FRHICommandList & RHICmdList,
    const FGraphicsPipelineStateInitial ...,
    EApplyRendertargetOption ApplyFlags
)

Public function

FRHIVertexDe ...

 

PipelineStateCache::GetOrCreateVertexDeclaration

(
    const FVertexDeclarationElementList ...
)

Public function

void

 

PipelineStateCache::Shutdown()

Clears all pipeline cached state.

Public function

FDynamicRHI ...

 

PlatformCreateDynamicRHI()

Each platform that utilizes dynamic RHIs should implement this function Called to create the instance of the dynamic RHI.

Public function

void

 

RHIAcquireThreadOwnership()

Public function

void

 

RHIAcquireTransientResource

(
    FVertexBufferRHIParamRef Resource
)

Public function

void

 

RHIAcquireTransientResource

(
    FTextureRHIParamRef Resource
)

Public function

void

 

RHIAcquireTransientResource

(
    FStructuredBufferRHIParamRef Resour...
)

Public function

void

 

RHIAdvanceFrameForGetViewportBackBuffer

(
    FViewportRHIParamRef Viewport
)

Public function

FTexture2DRH ...

 

RHIAsyncCreateTexture2D

(
    uint32 SizeX,
    uint32 SizeY,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    void** InitialMipData,
    uint32 NumInitialMips
)

Public function

FTexture2DRH ...

 

RHIAsyncReallocateTexture2D

(
    FTexture2DRHIParamRef Texture2D,
    int32 NewMipCount,
    int32 NewSizeX,
    int32 NewSizeY,
    FThreadSafeCounter * RequestSta...
)

Public function

void

 

RHIBeginSuspendRendering()

Public function

FUpdateTextu ...

 

RHIBeginUpdateTexture3D

(
    FTexture3DRHIParamRef Texture,
    uint32 MipIndex,
    const FUpdateTextureRegion3D & Upda...
)

Public function

void

 

RHIBindDebugLabelName

(
    FTextureRHIParamRef Texture,
    const TCHAR * Name
)

Public function

void

 

RHIBindDebugLabelName

(
    FUnorderedAccessViewRHIParamRef Uno...,
    const TCHAR * Name
)

Public function

uint64

 

RHICalcTexture2DPlatformSize

(
    uint32 SizeX,
    uint32 SizeY,
    uint8 Format,
    uint32 NumMips,
    uint32 NumSamples,
    uint32 Flags,
    uint32 & OutAlign
)

Public function

uint64

 

RHICalcTexture3DPlatformSize

(
    uint32 SizeX,
    uint32 SizeY,
    uint32 SizeZ,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 & OutAlign
)

Public function

uint64

 

RHICalcTextureCubePlatformSize

(
    uint32 Size,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 & OutAlign
)

Public function

ETextureReal ...

 

RHICancelAsyncReallocateTexture2D

(
    FTexture2DRHIParamRef Texture2D,
    bool bBlockUntilCompleted
)

Public function

void

 

RHICompleteGraphEventOnFlip

(
    uint64 PresentIndex,
    FGraphEventRef Event
)

Signals the completion of the specified task graph event when the given frame has flipped.

Public function

uint32

 

RHIComputeMemorySize

(
    FTextureRHIParamRef TextureRHI
)

Public function

void

 

RHICopySharedMips

(
    FTexture2DRHIParamRef DestTexture2D,
    FTexture2DRHIParamRef SrcTexture2D
)

Public function

FIndexBuffer ...

 

RHICreateAndLockIndexBuffer

(
    uint32 Stride,
    uint32 Size,
    uint32 InUsage,
    FRHIResourceCreateInfo & CreateInfo,
    void*& OutDataBuffer
)

Public function

FVertexBuffe ...

 

RHICreateAndLockVertexBuffer

(
    uint32 Size,
    uint32 InUsage,
    FRHIResourceCreateInfo & CreateInfo,
    void*& OutDataBuffer
)

Public function

FBlendStateR ...

 

RHICreateBlendState

(
    const FBlendStateInitializerRHI & I...
)

Public function

FBoundShader ...

 

RHICreateBoundShaderState

(
    FVertexDeclarationRHIParamRef Verte...,
    FVertexShaderRHIParamRef VertexShad...,
    FHullShaderRHIParamRef HullShader,
    FDomainShaderRHIParamRef DomainShad...,
    FPixelShaderRHIParamRef PixelShader,
    FGeometryShaderRHIParamRef Geometry...
)

Public function

FBoundShader ...

 

RHICreateBoundShaderState

(
    FVertexDeclarationRHIParamRef Verte...,
    FVertexShaderRHIParamRef VertexShad...,
    FHullShaderRHIParamRef HullShader,
    FDomainShaderRHIParamRef DomainShad...,
    FPixelShaderRHIParamRef PixelShader,
    FGeometryShaderRHIParamRef Geometry...
)

Public function

FComputeFenc ...

 

RHICreateComputeFence

(
    const FName & Name
)

Public function

TRefCountPtr ...

 

RHICreateComputePipelineState

(
    FRHIComputeShader * ComputeShad...
)

Public function

FComputeShad ...

 

RHICreateComputeShader

(
    const TArray < uint8 >& Code
)

Public function

FComputeShad ...

 

RHICreateComputeShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FDepthStenci ...

 

RHICreateDepthStencilState

(
    const FDepthStencilStateInitializer ...
)

Public function

FDomainShade ...

 

RHICreateDomainShader

(
    const TArray < uint8 >& Code
)

Public function

FDomainShade ...

 

RHICreateDomainShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FGeometrySha ...

 

RHICreateGeometryShader

(
    const TArray < uint8 >& Code
)

Public function

FGeometrySha ...

 

RHICreateGeometryShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FGeometrySha ...

 

RHICreateGeometryShaderWithStreamOutput

(
    const FStreamOutElementList & Eleme...,
    uint32 NumStrides,
    const uint32 * Strides,
    int32 RasterizedStream,
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FGeometrySha ...

 

RHICreateGeometryShaderWithStreamOutput

(
    const TArray < uint8 >& Code,
    const FStreamOutElementList & Eleme...,
    uint32 NumStrides,
    const uint32 * Strides,
    int32 RasterizedStream
)

Public function

FGPUFenceRHI ...

 

RHICreateGPUFence

(
    const FName & Name
)

Public function

FGraphicsPip ...

 

RHICreateGraphicsPipelineState

(
    const FGraphicsPipelineStateInitial ...
)

Before using this directly go through PipelineStateCache::GetAndOrCreateGraphicsPipelineState()

Public function

FHullShaderR ...

 

RHICreateHullShader

(
    const TArray < uint8 >& Code
)

Public function

FHullShaderR ...

 

RHICreateHullShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FIndexBuffer ...

 

RHICreateIndexBuffer

(
    uint32 Stride,
    uint32 Size,
    uint32 InUsage,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FPixelShader ...

 

RHICreatePixelShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FPixelShader ...

 

RHICreatePixelShader

(
    const TArray < uint8 >& Code
)

Public function

FRasterizerS ...

 

RHICreateRasterizerState

(
    const FRasterizerStateInitializerRH ...
)

Public function

FRenderQuery ...

 

RHICreateRenderQuery

(
    ERenderQueryType QueryType
)

Public function

FStructuredB ...

 

RHICreateRTWriteMaskBuffer

(
    FTexture2DRHIRef RenderTarget
)

Public function

FSamplerStat ...

 

RHICreateSamplerState

(
    const FSamplerStateInitializerRHI &...
)

Public function

FRHIShaderLi ...

 

RHICreateShaderLibrary

(
    EShaderPlatform Platform,
    FString const& FilePath,
    FString const& Name
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FIndexBufferRHIParamRef Buffer
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FTexture2DArrayRHIParamRef Texture2...,
    uint8 MipLevel
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FTextureCubeRHIParamRef TextureCube...,
    uint8 MipLevel
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FVertexBufferRHIParamRef VertexBuff...,
    uint32 Stride,
    uint8 Format
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FTexture2DRHIParamRef Texture2DRHI,
    uint8 MipLevel,
    uint8 NumMipLevels,
    uint8 Format
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FStructuredBufferRHIParamRef Struct...
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FTexture2DRHIParamRef Texture2DRHI,
    uint8 MipLevel
)

Public function

FShaderResou ...

 

RHICreateShaderResourceView

(
    FTexture3DRHIParamRef Texture3DRHI,
    uint8 MipLevel
)

Public function

FStagingBuff ...

 

RHICreateStagingBuffer()

Public function

FStructuredB ...

 

RHICreateStructuredBuffer

(
    uint32 Stride,
    uint32 Size,
    uint32 InUsage,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

void

 

RHICreateTargetableShaderResource2D

(
    uint32 SizeX,
    uint32 SizeY,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 TargetableTextureFlags,
    bool bForceSeparateTargetAndShaderR...,
    FRHIResourceCreateInfo & CreateInfo,
    FTexture2DRHIRef & OutTargetableTex...,
    FTexture2DRHIRef & OutShaderResourc...,
    uint32 NumSamples
)

Creates 1 or 2 textures with the same dimensions/format.

Public function

void

 

RHICreateTargetableShaderResource2DArray

(
    uint32 SizeX,
    uint32 SizeY,
    uint32 SizeZ,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 TargetableTextureFlags,
    FRHIResourceCreateInfo & CreateInfo,
    FTexture2DArrayRHIRef & OutTargetab...,
    FTexture2DArrayRHIRef & OutShaderRe...,
    uint32 NumSamples
)

Public function

void

 

RHICreateTargetableShaderResource3D

(
    uint32 SizeX,
    uint32 SizeY,
    uint32 SizeZ,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 TargetableTextureFlags,
    bool bForceSeparateTargetAndShaderR...,
    FRHIResourceCreateInfo & CreateInfo,
    FTexture3DRHIRef & OutTargetableTex...,
    FTexture3DRHIRef & OutShaderResourc...
)

Creates 1 or 2 textures with the same dimensions/format.

Public function

void

 

RHICreateTargetableShaderResourceCube

(
    uint32 LinearSize,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 TargetableTextureFlags,
    bool bForceSeparateTargetAndShaderR...,
    FRHIResourceCreateInfo & CreateInfo,
    FTextureCubeRHIRef & OutTargetableT...,
    FTextureCubeRHIRef & OutShaderResou...
)

Creates 1 or 2 textures with the same dimensions/format.

Public function

void

 

RHICreateTargetableShaderResourceCubeArray

(
    uint32 LinearSize,
    uint32 ArraySize,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    uint32 TargetableTextureFlags,
    bool bForceSeparateTargetAndShaderR...,
    FRHIResourceCreateInfo & CreateInfo,
    FTextureCubeRHIRef & OutTargetableT...,
    FTextureCubeRHIRef & OutShaderResou...
)

Creates 1 or 2 textures with the same dimensions/format.

Public function

FTexture2DRH ...

 

RHICreateTexture2D

(
    uint32 SizeX,
    uint32 SizeY,
    uint8 Format,
    uint32 NumMips,
    uint32 NumSamples,
    uint32 Flags,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FTexture2DAr ...

 

RHICreateTexture2DArray

(
    uint32 SizeX,
    uint32 SizeY,
    uint32 SizeZ,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FTexture3DRH ...

 

RHICreateTexture3D

(
    uint32 SizeX,
    uint32 SizeY,
    uint32 SizeZ,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FTextureCube ...

 

RHICreateTextureCube

(
    uint32 Size,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FTextureCube ...

 

RHICreateTextureCubeArray

(
    uint32 Size,
    uint32 ArraySize,
    uint8 Format,
    uint32 NumMips,
    uint32 Flags,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FTextureRefe ...

 

RHICreateTextureReference

(
    FLastRenderTimeContainer * Last...
)

Public function

FUniformBuff ...

 

RHICreateUniformBuffer

(
    const void* Contents,
    const FRHIUniformBufferLayout & Lay...,
    EUniformBufferUsage Usage,
    EUniformBufferValidation Validation
)

Public function

FUnorderedAc ...

 

RHICreateUnorderedAccessView

(
    FVertexBufferRHIParamRef VertexBuff...,
    uint8 Format
)

Public function

FUnorderedAc ...

 

RHICreateUnorderedAccessView

(
    FIndexBufferRHIParamRef IndexBuffer,
    uint8 Format
)

Public function

FUnorderedAc ...

 

RHICreateUnorderedAccessView

(
    FStructuredBufferRHIParamRef Struct...,
    bool bUseUAVCounter,
    bool bAppendBuffer
)

Public function

FUnorderedAc ...

 

RHICreateUnorderedAccessView

(
    FTextureRHIParamRef Texture,
    uint32 MipLevel
)

Public function

FVertexBuffe ...

 

RHICreateVertexBuffer

(
    uint32 Size,
    uint32 InUsage,
    FRHIResourceCreateInfo & CreateInfo
)

Public function

FVertexDecla ...

 

RHICreateVertexDeclaration

(
    const FVertexDeclarationElementList ...
)

Before using this directly go through PipelineStateCache::GetOrCreateVertexDeclaration()

Public function

FVertexShade ...

 

RHICreateVertexShader

(
    FRHIShaderLibraryParamRef Library,
    FSHAHash Hash
)

Public function

FVertexShade ...

 

RHICreateVertexShader

(
    const TArray < uint8 >& Code
)

Public function

FViewportRHI ...

 

RHICreateViewport

(
    void* WindowHandle,
    uint32 SizeX,
    uint32 SizeY,
    bool bIsFullscreen,
    EPixelFormat PreferredPixelFormat
)

Public function

void

 

RHIDiscardTransientResource

(
    FTextureRHIParamRef Resource
)

Public function

void

 

RHIDiscardTransientResource

(
    FVertexBufferRHIParamRef Resource
)

Public function

void

 

RHIDiscardTransientResource

(
    FStructuredBufferRHIParamRef Resour...
)

Public function

void

 

RHIEndMultiUpdateTexture3D

(
    TArray < FUpdateTexture3DData >& Up...
)

Public function

void

 

RHIEndUpdateTexture3D

(
    FUpdateTexture3DData & UpdateData
)

Public function

void

 

RHIExecuteCommandList

(
    FRHICommandList * CmdList
)

Public function

void

 

RHIExit()

Shuts down the RHI.

Public function

ETextureReal ...

 

RHIFinalizeAsyncReallocateTexture2D

(
    FTexture2DRHIParamRef Texture2D,
    bool bBlockUntilCompleted
)

Public function

void

 

RHIFlushResources()

Public function

bool

 

RHIGetAvailableResolutions

(
    FScreenResolutionArray & Resolution...,
    bool bIgnoreRefreshRate
)

Public function

IRHICommandC ...

 

RHIGetCommandContextContainer

(
    int32 Index,
    int32 Num,
    FRHIGPUMask GPUMask
)

Public function

IRHIComputeC ...

 

RHIGetDefaultAsyncComputeContext

(
    FRHIGPUMask GPUMask
)

Public function

IRHICommandC ...

 

RHIGetDefaultContext

(
    FRHIGPUMask GPUMask
)

Public function

FTexture2DRH ...

 

RHIGetFMaskTexture

(
    FTextureRHIParamRef SourceTextureRH...
)

Public function

uint32

 

RHIGetGPUFrameCycles()

Public function

void *

 

RHIGetNativeDevice()

Public function

FRHIPanicEve ...

 

RHIGetPanicDelegate()

Public function

void

 

RHIGetPresentThresholds

(
    float& OutTopPercent,
    float& OutBottomPercent
)

Returns the top and bottom vsync present thresholds (the values of rhi.PresentThreshold.Top and rhi.PresentThreshold.Bottom)

Public function

bool

 

RHIGetPreviewFeatureLevel

(
    ERHIFeatureLevel::Type & PreviewFea...
)

Helper to check if a preview feature level has been requested.

Public function

bool

 

RHIGetRenderQueryResult

(
    FRenderQueryRHIParamRef RenderQuery,
    uint64 & OutResult,
    bool bWait
)

Public function

void

 

RHIGetResourceInfo

(
    FTextureRHIParamRef Ref,
    FRHIResourceInfo & OutInfo
)

Public function

uint32

 

RHIGetShaderLanguageVersion

(
    const EShaderPlatform Platform
)

Helper to return the shader language version for the given shader platform.

Public function

void

 

RHIGetSupportedResolution

(
    uint32 & Width,
    uint32 & Height
)

Public function

uint32

 

RHIGetSyncInterval()

Returns the value of the rhi.SyncInterval CVar.

Public function

void

 

RHIGetTextureMemoryStats

(
    FTextureMemoryStats & OutStats
)

Public function

FTexture2DRH ...

 

RHIGetViewportBackBuffer

(
    FViewportRHIParamRef Viewport
)

Public function

uint32

 

RHIGetViewportNextPresentGPUIndex

(
    FViewportRHIParamRef Viewport
)

Public function

bool

 

RHIHasTiledGPU

(
    const EShaderPlatform Platform
)

Public function

void

 

RHIInit

(
    bool bHasEditorToken
)

RHI memory stats.

Public function

void

 

RHIInitializeFlipTracking()

Public function

void *

 

RHILockIndexBuffer

(
    FIndexBufferRHIParamRef IndexBuffer,
    uint32 Offset,
    uint32 Size,
    EResourceLockMode LockMode
)

Public function

void *

 

RHILockStagingBuffer

(
    FStagingBufferRHIParamRef StagingBu...,
    uint32 Offset,
    uint32 Size
)

Public function

void *

 

RHILockStructuredBuffer

(
    FStructuredBufferRHIParamRef Struct...,
    uint32 Offset,
    uint32 SizeRHI,
    EResourceLockMode LockMode
)

Public function

void *

 

RHILockTexture2D

(
    FTexture2DRHIParamRef Texture,
    uint32 MipIndex,
    EResourceLockMode LockMode,
    uint32 & DestStride,
    bool bLockWithinMiptail,
    bool bFlushRHIThread
)

Public function

void *

 

RHILockTexture2DArray

(
    FTexture2DArrayRHIParamRef Texture,
    uint32 TextureIndex,
    uint32 MipIndex,
    EResourceLockMode LockMode,
    uint32 & DestStride,
    bool bLockWithinMiptail
)

Public function

void *

 

RHILockTextureCubeFace

(
    FTextureCubeRHIParamRef Texture,
    uint32 FaceIndex,
    uint32 ArrayIndex,
    uint32 MipIndex,
    EResourceLockMode LockMode,
    uint32 & DestStride,
    bool bLockWithinMiptail
)

Public function

void *

 

RHILockVertexBuffer

(
    FVertexBufferRHIParamRef VertexBuff...,
    uint32 Offset,
    uint32 SizeRHI,
    EResourceLockMode LockMode
)

Public function

bool

 

RHINeedsToSwitchVerticalAxis

(
    EShaderPlatform Platform
)

Public function

void

 

RHIPostInit

(
    const TArray < uint32 >& InPixelFor...
)

Performs additional RHI initialization before the render thread starts.

Public function

void

 

RHIPrivateBeginFrame()

Called once per frame only from within an RHI.

Public function

void

 

RHIReleaseThreadOwnership()

Public function

void

 

RHIResizeViewport

(
    FViewportRHIParamRef Viewport,
    uint32 SizeX,
    uint32 SizeY,
    bool bIsFullscreen,
    EPixelFormat PreferredPixelFormat
)

Public function

void

 

RHIResumeRendering()

Public function

void

 

RHISetMobilePreviewFeatureLevel

(
    ERHIFeatureLevel::Type MobilePrevie...
)

Set runtime selection of mobile feature level preview.

Public function

void

 

RHIShutdownFlipTracking()

Public function

bool

 

RHISupports4ComponentUAVReadWrite

(
    EShaderPlatform Platform
)

Public function

bool

 

RHISupportsAbsoluteVertexID

(
    EShaderPlatform InShaderPlatform
)

Returns true if SV_VertexID contains BaseVertexIndex passed to the draw call, false if shaders must manually construct an absolute VertexID.

Public function

bool

 

RHISupportsBufferLoadTypeConversion

(
    EShaderPlatform Platform
)

Public function

bool

 

RHISupportsComputeShaders

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsDrawIndirect

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsGeometryShaders

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsIndexBufferUAVs

(
    const EShaderPlatform Platform
)

Helper to check that the shader platform supports creating a UAV off an index buffer.

Public function

bool

 

RHISupportsInstancedStereo

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsManualVertexFetch

(
    EShaderPlatform InShaderPlatform
)

Whether Manual Vertex Fetch is supported for the specified shader platform.

Public function

bool

 

RHISupportsMobileMultiView

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsMSAA

(
    EShaderPlatform Platform
)

Public function

bool

 

RHISupportsMultiView

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsNativeShaderLibraries

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsPixelShaderUAVs

(
    const EShaderPlatform Platform
)

Helper to check that the shader platform supports writing to UAVs from pixel shaders.

Public function

bool

 

RHISupportsRayTracingShaders

(
    EShaderPlatform Platform
)

Can this platform compile ray tracing shaders (regardless of project settings).

Public function

bool

 

RHISupportsSeparateMSAAAndResolveTextures

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsTessellation

(
    const EShaderPlatform Platform
)

Helper to check that the shader platform supports tessellation.

Public function

bool

 

RHISupportsVertexShaderLayer

(
    const EShaderPlatform Platform
)

Public function

bool

 

RHISupportsVolumeTextures

(
    ERHIFeatureLevel::Type FeatureLevel
)

Whether the platform supports reading from volume textures (does not cover rendering to volume textures).

Public function

bool

 

RHISupportsWaveOperations

(
    EShaderPlatform Platform
)

Can this platform compile shaders that use shader model 6.0 wave intrinsics.

Public function

void

 

RHISuspendRendering()

Public function

void

 

RHITick

(
    float DeltaTime
)

Public function

void

 

RHITransferTexture

(
    FTexture2DRHIParamRef Texture,
    FIntRect Rect,
    uint32 SrcGPUIndex,
    uint32 DestGPUIndex,
    bool PullData
)

Public function

void

 

RHIUnlockIndexBuffer

(
    FIndexBufferRHIParamRef IndexBuffer
)

Public function

void

 

RHIUnlockStagingBuffer

(
    FStagingBufferRHIParamRef StagingBu...
)

Public function

void

 

RHIUnlockStructuredBuffer

(
    FStructuredBufferRHIParamRef Struct...
)

Public function

void

 

RHIUnlockTexture2D

(
    FTexture2DRHIParamRef Texture,
    uint32 MipIndex,
    bool bLockWithinMiptail,
    bool bFlushRHIThread
)

Public function

void

 

RHIUnlockTexture2DArray

(
    FTexture2DArrayRHIParamRef Texture,
    uint32 TextureIndex,
    uint32 MipIndex,
    bool bLockWithinMiptail
)

Public function

void

 

RHIUnlockTextureCubeFace

(
    FTextureCubeRHIParamRef Texture,
    uint32 FaceIndex,
    uint32 ArrayIndex,
    uint32 MipIndex,
    bool bLockWithinMiptail
)

Public function

void

 

RHIUnlockVertexBuffer

(
    FVertexBufferRHIParamRef VertexBuff...
)

Public function

void

 

RHIUpdateTexture2D

(
    FTexture2DRHIParamRef Texture,
    uint32 MipIndex,
    const FUpdateTextureRegion2D & Upda...,
    uint32 SourcePitch,
    const uint8 * SourceData
)

Public function

void

 

RHIUpdateTexture3D

(
    FTexture3DRHIParamRef Texture,
    uint32 MipIndex,
    const FUpdateTextureRegion3D & Upda...,
    uint32 SourceRowPitch,
    uint32 SourceDepthPitch,
    const uint8 * SourceData
)

Public function

void

 

RHIUpdateTextureReference

(
    FTextureReferenceRHIParamRef Textur...,
    FTextureRHIParamRef NewTexture
)

Public function

void

 

RHIUpdateUniformBuffer

(
    FUniformBufferRHIParamRef UniformBu...,
    const void* Contents
)

Public function

const TCHAR ...

 

RHIVendorIdToString()

Helper to convert GRHIVendorId into a printable string, or "Unknown" if unknown.

Public function

void

 

RHIVirtualTextureSetFirstMipInMemory

(
    FTexture2DRHIParamRef Texture,
    uint32 FirstMip
)

Public function

void

 

RHIVirtualTextureSetFirstMipVisible

(
    FTexture2DRHIParamRef Texture,
    uint32 FirstMip
)

Public function

void

 

SetComputePipelineState

(
    FRHICommandList & RHICmdList,
    FRHIComputeShader * ComputeShad...
)

Public function

void

 

SetDepthBoundsTest

(
    FRHICommandList & RHICmdList,
    float WorldSpaceDepthNear,
    float WorldSpaceDepthFar,
    const FMatrix & ProjectionMatrix
)

Public function

void

 

SetGraphicsPipelineState

(
    FRHICommandList & RHICmdList,
    const FGraphicsPipelineStateInitial ...,
    EApplyRendertargetOption ApplyFlags
)

Public function

void

 

SetRenderTarget

(
    FRHICommandList & RHICmdList,
    FTextureRHIParamRef NewRenderTarget,
    FTextureRHIParamRef NewDepthStencil...,
    ESimpleRenderTargetMode Mode,
    FExclusiveDepthStencil DepthStencil...,
    bool bWritableBarrier
)

SetRenderTargets API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function

void

 

SetRenderTarget

(
    FRHICommandList & RHICmdList,
    FTextureRHIParamRef NewRenderTarget,
    FTextureRHIParamRef NewDepthStencil...,
    bool bWritableBarrier
)

SetRenderTargets API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function

void

 

SetRenderTarget

(
    FRHICommandList & RHICmdList,
    FTextureRHIParamRef NewRenderTarget,
    int32 MipIndex,
    FTextureRHIParamRef NewDepthStencil...,
    bool bWritableBarrier
)

SetRenderTarget API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function

void

 

SetRenderTarget

(
    FRHICommandList & RHICmdList,
    FTextureRHIParamRef NewRenderTarget,
    int32 MipIndex,
    int32 ArraySliceIndex,
    FTextureRHIParamRef NewDepthStencil...,
    bool bWritableBarrier
)

SetRenderTarget API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function

void

 

SetRenderTargets

(
    FRHICommandList & RHICmdList,
    uint32 NewNumSimultaneousRenderTarg...,
    const FTextureRHIParamRef * New...,
    FTextureRHIParamRef NewDepthStencil...,
    uint32 NewNumUAVs,
    const FUnorderedAccessViewRHIParamR ...,
    bool bWritableBarrier
)

SetRenderTargets API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function

void

 

SetRenderTargets

(
    FRHICommandList & RHICmdList,
    uint32 NewNumSimultaneousRenderTarg...,
    const FTextureRHIParamRef * New...,
    FTextureRHIParamRef NewDepthStencil...,
    ESimpleRenderTargetMode Mode,
    FExclusiveDepthStencil DepthStencil...,
    bool bWritableBarrier
)

SetRenderTargets API is deprecated; please use RHIBegin/EndRenderPass instead.

Public function Static

EShaderPlatf ...

 

ShaderFormatNameToShaderPlatform

(
    FName ShaderFormat
)

Public function

EShaderPlatf ...

 

ShaderFormatToLegacyShaderPlatform

(
    FName ShaderFormat
)

Public function

FName

 

ShaderPlatformToPlatformName

(
    EShaderPlatform Platform
)

Public function Static

FName

 

ShaderPlatformToShaderFormatName

(
    EShaderPlatform Platform
)

Public function

void

 

TransitionRenderPassTargets

(
    FRHICommandList & RHICmdList,
    const FRHIRenderPassInfo & RPInfo
)

Public function

void

 

TransitionSetRenderTargetsHelper

(
    FRHICommandList & RHICmdList,
    FTextureRHIParamRef NewRenderTarget,
    FTextureRHIParamRef NewDepthStencil...,
    FExclusiveDepthStencil DepthStencil...
)

Public function

void

 

TransitionSetRenderTargetsHelper

(
    FRHICommandList & RHICmdList,
    uint32 NumRenderTargets,
    const FTextureRHIParamRef * New...,
    const FTextureRHIParamRef NewDepthS...,
    FExclusiveDepthStencil DepthStencil...
)

Public function

void

 

UnbindRenderTargets

(
    FRHICommandList & RHICmdList
)

Will soon be deprecated as well...

Variables

Name Description

Public variable

FAutoConsoleTas ...

 

CPrio_SceneRenderingTask

Public variable

TAutoConsoleVar ...

 

CVarRHICmdFlushRenderThreadTasks

Public variable

TAutoConsoleVar ...

 

CVarRHICmdWidth

Public variable

const uint32

 

FPipelineCacheFileFormatCurrentVersion

Public variable

int32

 

GCurrentNumDrawCallsRHI

Num draw calls and primitives this frame (only accurate on RenderThread)

Public variable

int32

 

GCurrentNumPrimitivesDrawnRHI

Public variable

int32

 

GCurrentRendertargetMemorySize

Amount of memory allocated by rendertargets. In kilobytes.

Public variable

int32

 

GCurrentTextureMemorySize

Amount of memory allocated by textures. In kilobytes.

Public variable

int32

 

GDrawUPIndexCheckCount

The size to check against for Draw*UP call index counts.

Public variable

int32

 

GDrawUPVertexCheckCount

The size to check against for Draw*UP call vertex counts.

Public variable

FDynamicRHI ...

 

GDynamicRHI

A global pointer to the dynamically bound RHI implementation.

Public variable

bool

 

GEnableAsyncCompute

Public variable

FString

 

GGPUTraceFileName

Non-empty if we are performing a gpu trace. Also says where to place trace file.

Public variable

bool

 

GHardwareHiddenSurfaceRemoval

True if the GPU supports hidden surface removal in hardware.

Public variable

bool

 

GIsRHIInitialized

RHI globals.True if the render hardware has been initialized.

RHI globals.

Public variable

bool

 

GIsRunningRHIInDedicatedThread_InternalUseOnly

Public variable

bool

 

GIsRunningRHIInSeparateThread_InternalUseOnly

Public variable

bool

 

GIsRunningRHIInTaskThread_InternalUseOnly

Public variable

TRHIGlobal < int ...

 

GMaxComputeDispatchDimension

The maximum size allowed for a computeshader dispatch.

Public variable

TRHIGlobal < int ...

 

GMaxCubeTextureDimensions

The maximum size allowed for cube textures.

Public variable

ERHIFeatureLeve ...

 

GMaxRHIFeatureLevel

The maximum feature level and shader platform available on this system GRHIFeatureLevel and GRHIShaderPlatform have been deprecated.

Public variable

EShaderPlatform

 

GMaxRHIShaderPlatform

Public variable

TRHIGlobal < int ...

 

GMaxShadowDepthBufferSizeX

The maximum size to allow for the shadow depth buffer in the X dimension.

Public variable

TRHIGlobal < int ...

 

GMaxShadowDepthBufferSizeY

The maximum size to allow for the shadow depth buffer in the Y dimension.

Public variable

int32

 

GMaxTextureArrayLayers

The Maximum number of layers in a 1D or 2D texture array.

Public variable

TRHIGlobal < int ...

 

GMaxTextureDimensions

The maximum size allowed for 2D textures in both dimensions.

Public variable

int32

 

GMaxTextureMipCount

RHI capabilities.The maximum number of mip-maps that a texture can contain.

Public variable

int32

 

GMaxTextureSamplers

Public variable

float

 

GMinClipZ

The minimum Z value in clip space for the RHI.

Public variable

int32

 

GNumDrawCallsRHI

Some simple runtime stats, reset on every call to RHIBeginFrame Num draw calls & primitives on previous frame (accurate on any thread)

Public variable

int32

 

GNumPrimitivesDrawnRHI

Public variable

int32

 

GPoolSizeVRAMPercentage

In percent. If non-zero, the texture pool size is a percentage of GTotalGraphicsMemory.

Public variable

float

 

GProjectionSignY

The sign to apply to the Y axis of projection matrices.

Public variable

FString

 

GRHIAdapterDriverDate

Public variable

FString

 

GRHIAdapterInternalDriverVersion

Public variable

FString

 

GRHIAdapterName

Only set if RHI has the information (after init of the RHI and only if RHI has that information, never changes after that) e.g. "NVIDIA GeForce GTX 670"

Public variable

FString

 

GRHIAdapterUserDriverVersion

Public variable

FRHICommandList ...

 

GRHICommandList

Public variable

uint32

 

GRHIDeviceId

Public variable

bool

 

GRHIDeviceIsAMDPreGCNArchitecture

True if the GPU is AMD's Pre-GCN architecture

Public variable

uint32

 

GRHIDeviceRevision

Public variable

FRHICommandList ...

 

GRHIFenceAllocator

Public variable

bool

 

GRHIForceNoDeletionLatencyForStreamingTextures

Allow opt-out default RHI resource deletion latency for streaming textures

Public variable

EPixelFormat

 

GRHIHDRDisplayOutputFormat

Format used for the backbuffer when outputting to a HDR display.

Public variable

bool

 

GRHIIsHDREnabled

Whether or not HDR is currently enabled

Public variable

bool

 

GRHILazyShaderCodeLoading

If true, then avoiding loading shader code and instead force the "native" path, which sends a library and a hash instead.

Public variable

FRHILockTracker

 

GRHILockTracker

Public variable

int32

 

GRHIMaximumReccommendedOustandingOcclusionQueries

If an RHI cannot do an unlimited number of occlusion queries without stalling and waiting for the GPU, this can be used to tune hte occlusion culler to try not to do that.

Public variable

bool

 

GRHINeedsExtraDeletionLatency

Does this RHI need to wait for deletion of resources due to ref counting.

Public variable

bool

 

GRHINeedsUnatlasedCSMDepthsWorkaround

True if the RHI has artifacts with atlased CSM depths.

Public variable

uint64

 

GRHIPresentCounter

Counter incremented once on each frame present.

Public variable

bool

 

GRHIRequiresRenderTargetForPixelShaderUAVs

True if the RHI requires a valid RT bound during UAV scatter operation inside the pixel shader

Public variable

bool

 

GRHISupportsAsyncTextureCreation

True if the RHI supports asynchronous creation of texture resources

Public variable

bool

 

GRHISupportsBaseVertexIndex

Whether or not the RHI can handle a non-zero BaseVertexIndex - extra SetStreamSource calls will be needed if this is false

Public variable

bool

 

GRHISupportsCopyToTextureMultipleMips

Does the RHI implements CopyToTexture() with [FRHICopyTextureInfo::NumMips](API\Runtime\RHI\FRHICopyTextureInfo\NumMips) > 1

Public variable

bool

 

GRHISupportsDynamicResolution

Whether or not the RHI can handle dynamic resolution or not.

Public variable

bool

 

GRHISupportsExactOcclusionQueries

Some RHIs can only do visible or not occlusion queries.

Public variable

bool

 

GRHISupportsFirstInstance

Whether or not the RHI can handle a non-zero FirstInstance to DrawIndexedPrimitive and friends - extra SetStreamSource calls will be needed if this is false

Public variable

bool

 

GRHISupportsFrameCyclesBubblesRemoval

True if RHIGetGPUFrameCycles removes CPu generated bubbles.

Public variable

bool

 

GRHISupportsGPUTimestampBubblesRemoval

True if RQT_AbsoluteTime is supported by RHICreateRenderQuery

Public variable

bool

 

GRHISupportsHDROutput

Whether the present adapter/display offers HDR output capabilities.

Public variable

TRHIGlobal < boo...

 

GRHISupportsInstancing

True if the RHI supports hardware instancing

Public variable

bool

 

GRHISupportsLazyShaderCodeLoading

If true, then it is possible to turn on GRHILazyShaderCodeLoading.

Public variable

bool

 

GRHISupportsMSAADepthSampleAccess

Whether or not the RHI can perform MSAA sample load.

Public variable

bool

 

GRHISupportsParallelRHIExecute

Whether or not the RHI supports parallel RHIThread executes / translates Requirements: RHICreateBoundShaderState & RHICreateGraphicsPipelineState is threadsafe and GetCachedBoundShaderState must not be used.

Public variable

bool

 

GRHISupportsQuadTopology

True if the RHI supports quad topology (PT_QuadList).

Public variable

bool

 

GRHISupportsRayTracing

Whether or not the RHI supports ray tracing on current hardware (acceleration structure building and new ray tracing-specific shader types).

Public variable

bool

 

GRHISupportsRectTopology

True if the RHI supports rectangular topology (PT_RectList).

Public variable

bool

 

GRHISupportsResolveCubemapFaces

True if the RHI supports copying cubemap faces using CopyToResolveTarget

Public variable

bool

 

GRHISupportsRHIOnTaskThread

As above, but we run the commands on arbitrary task threads

Public variable

bool

 

GRHISupportsRHIThread

Whether or not the RHI supports an RHI thread.

Public variable

bool

 

GRHISupportsTextureStreaming

True if the RHI supports texture streaming

Public variable

bool

 

GRHISupportsWaveOperations

Whether or not the RHI supports shader wave operations (shader model 6.0).

Public variable

bool

 

GRHIThreadNeedsKicking

If an RHI is so slow, that it is the limiting factor for the entire frame, we can kick early to try to give it as much as possible.

Public variable

uint32

 

GRHIVendorId

0 means not defined yet, use functions like IsRHIDeviceAMD() to access

Public variable

EShaderPlatform ...

 

GShaderPlatformForFeatureLevel

Table for finding out which shader platform corresponds to a given feature level for this RHI.

Public variable

bool

 

GSupportsDepthBoundsTest

True if the RHI and current hardware supports supports depth bounds testing

Public variable

bool

 

GSupportsDepthFetchDuringDepthTest

True if the RHI supports binding depth as a texture when testing against depth

Public variable

bool

 

GSupportsDepthRenderTargetWithoutColorRenderTarget

True if the RHI can render to a depth-only render target with no additional color render target.

Public variable

bool

 

GSupportsEfficientAsyncCompute

True if the RHI and current hardware supports efficient AsyncCompute (by default we assume false and later we can enable this for more hardware)

Public variable

bool

 

GSupportsHDR32bppEncodeModeIntrinsic

True if the RHI supports 'GetHDR32bppEncodeModeES2' shader intrinsic.

Public variable

bool

 

GSupportsImageExternal

True if the RHI supports image external

Public variable

bool

 

GSupportsMobileMultiView

True if the RHI supports mobile multi-view

Public variable

TRHIGlobal < boo...

 

GSupportsMultipleRenderTargets

True if the RHI supports MRT

Public variable

bool

 

GSupportsParallelOcclusionQueries

True if the RHI supports getting the result of occlusion queries when on a thread other than the renderthread

Public variable

bool

 

GSupportsParallelRenderingTasksWithSeparateRHIThread

Temporary.

Public variable

bool

 

GSupportsQuadBufferStereo

True if this platform has quad buffer stereo support.

Public variable

bool

 

GSupportsRenderDepthTargetableShaderResources

True if the RHI supports textures that may be bound as both a render target and a shader resource.

Public variable

TRHIGlobal < boo...

 

GSupportsRenderTargetFormat_PF_FloatRGBA

True if PF_FloatRGBA render targets are supported

Public variable

TRHIGlobal < boo...

 

GSupportsRenderTargetFormat_PF_G8

True if PF_G8 render targets are supported

Public variable

bool

 

GSupportsRenderTargetWriteMask

True if the RHI and current hardware support a render target write mask

Public variable

bool

 

GSupportsResourceView

True if the RHI supports SRVs

Public variable

bool

 

GSupportsSeparateRenderTargetBlendState

True if the RHI supports separate blend states per render target.

Public variable

bool

 

GSupportsShaderDepthStencilFetch

True if mobile depth & stencil fetch is supported

Public variable

bool

 

GSupportsShaderFramebufferFetch

True if mobile framebuffer fetch is supported

Public variable

bool

 

GSupportsTexture3D

True if the RHI supports 3D textures

Public variable

bool

 

GSupportsTimestampRenderQueries

True if RQT_AbsoluteTime is supported by RHICreateRenderQuery

Public variable

bool

 

GSupportsTransientResourceAliasing

True if the RHI supports aliasing of transient resources

Public variable

bool

 

GSupportsVolumeTextureRendering

True if and only if the GPU support rendering to volume textures (2D Array, 3D).

Public variable

bool

 

GSupportsWideMRT

True if the RHI supports 256bit MRT

Public variable

int64

 

GTexturePoolSize

Current texture streaming pool size, in bytes. 0 means unlimited.

Public variable

bool

 

GTriggerGPUHitchProfile

Whether we are profiling GPU hitches.

Public variable

bool

 

GTriggerGPUProfile

Whether the next frame should profile the GPU.

Public variable

bool

 

GUseRHITaskThreads_InternalUseOnly

Public variable

bool

 

GUseRHIThread_InternalUseOnly

Public variable

bool

 

GUsingNullRHI

True if we are running with the NULL RHI

Public variable

FVertexElementT ...

 

GVertexElementTypeSupport

True for each VET that is supported. One-to-one mapping with EVertexElementType

Public variable

uint32

 

GWorkingRHIThreadStallTime

Public variable

uint32

 

GWorkingRHIThreadStartCycles

Public variable

uint32

 

GWorkingRHIThreadTime

Private accumulator for the RHI thread.

Public variable

 

STATCAT_Advanced

Public variable

 

STATCAT_Advanced

Public variable

FCriticalSectio ...

 

StaticStateRHICriticalSection