Renderer

Windows
MacOS
Linux

Filters

Classes

Name

Description

Public class

FCachedMeshDrawCommandInfo

Stores information about a mesh draw command which is cached in the scene.

Public class

FCachedPassMeshDrawList

Public class

FCachedPassMeshDrawListContext

Public class

FCachedRayTracingMeshCommandContext

Public struct

FCachedRayTracingMeshCommandStorage

Public class

FDebugUniformExpressionSet

Debug information related to uniform expression sets.

Public struct

FDecalRenderingCommon

Shared decal functionality for deferred and forward shading

Public class

FDynamicMeshDrawCommandStorage

Storage for Mesh Draw Commands built every frame.

Public class

FDynamicPassMeshDrawListContext

Context used when building FMeshDrawCommands for one frame only.

Public class

FDynamicRayTracingMeshCommandContext

Public struct

FDynamicRayTracingMeshCommandStorage

Public class

FGlobalDistanceFieldParameterData

Public class

FGlobalDistanceFieldParameters

Public class

FGraphicsMinimalPipelineStateId

Uniquely represents a FGraphicsMinimalPipelineStateInitializer for fast compares.

Public class

FGraphicsMinimalPipelineStateInitializer

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

Public struct

FHairCullInfo

Public class

FHairGroupPublicData

Public group data.

Public struct

FHairStrandClusterData

Public struct

FHairStrandsBookmarkParameters

Public class

FHdrCustomResolve2xPS

Public class

FHdrCustomResolve4xPS

Public class

FHdrCustomResolve8xPS

Public class

FHdrCustomResolveFMask2xPS

Public class

FHdrCustomResolveFMask4xPS

Public class

FHdrCustomResolveFMask8xPS

Public class

FHdrCustomResolveVS

Public class

FIndirectLightingCacheAllocation

Data used to track a primitive's allocation in the volume texture atlas that stores indirect lighting.

Public struct

FLightPropagationVolumeSettings

Public class

FMaterialShader

Base class of all shaders that need material parameters.

Public struct

FMaterialShaderPermutationParameters

Public class

FMeshDrawCommand

FMeshDrawCommand fully describes a mesh pass draw call, captured just above the RHI.

Public struct

FMeshDrawCommandCount

Public struct

FMeshDrawCommandDebugData

Debug only data for being able to backtrack the origin of given FMeshDrawCommand .

Public class

FMeshDrawCommandSortKey

FVisibleMeshDrawCommand sort key.

Public class

FMeshDrawShaderBindings

Encapsulates shader bindings for a single FMeshDrawCommand .

Public class

FMeshDrawShaderBindingsLayout

Stores the number of each resource type that will need to be bound to a single shader, computed during shader reflection.

Public class

FMeshDrawSingleShaderBindings

Public class

FMeshMaterialShader

Base class of all shaders that need material and vertex factory parameters.

Public class

FMeshMaterialShaderElementData

Public struct

FMeshMaterialShaderPermutationParameters

Public class

FMeshPassDrawListContext

Interface for the different types of draw lists.

Public class

FMeshPassMask

Mesh pass mask - stores one bit per mesh pass.

Public class

FMeshPassProcessor

Base class of mesh processors, whose job is to transform FMeshBatch draw descriptions received from scene proxy implementations into FMeshDrawCommands ready for the RHI command list

Public struct

FMeshPassProcessorRenderState

A set of render state overrides passed into a Mesh Pass Processor, so it can be configured from the outside.

Public struct

FMeshProcessorShaders

Public struct

FMinHairRadiusAtDepth1

Public struct

FMinimalBoundShaderStateInput

Public class

FMobileSceneTextureUniformParameters

Public class

FPassProcessorManager

Public struct

FPostProcessPassParameters

Currently hard coded to 4 input textures convenient but not the most optimized solution

Public struct

FPrimitiveFlagsCompact

Flags needed for shadow culling.

Public struct

FPrimitiveOctreeSemantics

Defines how the primitive is stored in the scene's primitive octree.

Public class

FPrimitiveSceneInfo

The renderer's internal state for a single UPrimitiveComponent .

Public class

FPrimitiveSceneInfoCompact

The information needed to determine whether a primitive is visible.

Public struct

FPrimitiveVirtualTextureFlags

Flags needed for broad phase culling of runtime virtual texture page rendering.

Public struct

FPrimitiveVirtualTextureLodInfo

Lod data used for runtime virtual texture page rendering.

Public class

FRayTracingMeshCommand

Public class

FRayTracingMeshCommandContext

Public struct

FRDGExternalBuffer

Public struct

FRDGImportedBuffer

Public class

FRegisterPassProcessorCreateFunction

Public class

FRenderTargetWriteMask

Public class

FSceneTextureShaderParameters

Public class

FSceneTextureUniformParameters

A uniform buffer containing common scene textures used by materials or global shaders.

Public class

FShaderBindingState

Public struct

FShaderDrawDebugData

Public class

FShaderDrawDebugParameters

The structure to be set on the debug shader outputting debug primitive.

Public struct

FVertexFactoryShaderPermutationParameters

Public class

FVisibleMeshDrawCommand

Stores information about a mesh draw command that has been determined to be visible, for further visibility processing.

Public class

FVisibleRayTracingMeshCommand

Public struct

FVolumeBounds

Represents a subregion of a volume texture.

Public class

FVolumeRasterizeVertexBuffer

Vertex buffer used for rendering into a volume texture.

Public class

FWriteToSliceGS

Geometry shader used to write to a range of slices of a 3d volume texture.

Public class

FWriteToSliceVS

Vertex shader used to write to a range of slices of a 3d volume texture.

Public struct

MeshDrawCommandKeyFuncs

Public struct

TMeshProcessorShaders

Typedefs

Enums

Name

Description

Public enum

EDecalRasterizerState

Public enum

EDecalRenderStage

Actual values are used in the shader so do not change.

Public enum

EDrawingPolicyOverrideFlags

Public enum

EFallbackColor

Public enum

EHairCullMode

Return strands & guide indices to be preserved, while all others strands/guides should be culled.

Public enum

EHairDebugMode

Public enum

EHairGeometryType

Public enum

EHairStrandsBookmark

HairStrands Bookmark API.

Public enum

EHairStrandsDebugMode

Public enum

EHairStrandsShaderType

API for enabling/disabling the various geometry representation.

Public enum

EMeshPass::Type

Mesh pass types supported.

Public enum

EMeshPassFeatures

Public enum

EMeshPassFlags

Public enum

EMobileSceneTextureSetupMode

Public enum

EPassInputId

This is the index for the texture input of this pass.

Public enum

EPassOutputId

Usually the same as the MRT number but it doesn't have to be implemented as MRT.

Public enum

ERDGImportedBufferFlags

Public enum

ESceneTextureSetupMode

Functions

Name Description

Public function

void

 

ApplyViewOverridesToMeshDrawCommands

(
    const FSceneView & View,
    FMeshCommandOneFrameArray & Visible...,
    FDynamicMeshDrawCommandStorage & Dy...,
    FGraphicsMinimalPipelineStateSet & ...,
    bool & NeedsShaderInitialisation
)

Public function

void

 

BindSceneTextureUniformBufferDependentOnShadingPath

(
    const FShader::CompiledShaderInitia ...,
    FShaderUniformBufferParameter & Sce...
)

BindSceneTextureUniformBufferDependentOnShadingPath has been removed.

Public function

FMeshDrawCom ...

 

CalculateMeshStaticSortKey

(
    const TShaderRef < FMeshMaterialShad ...,
    const TShaderRef < FMeshMaterialShad ...
)

Public function

FMeshDrawCom ...

 

CalculateMeshStaticSortKey

(
    const FMeshMaterialShader * Ver...,
    const FMeshMaterialShader * Pix...
)

Public function

FMinHairRadi ...

 

ComputeMinStrandRadiusAtDepth1

(
    const FIntPoint & Resolution,
    const float FOV,
    const uint32 SampleCount,
    const float OverrideStrandHairRaste...
)

Compute the strand radius at a distance of 1 meter.

Public function

void

 

ConvertToExternalBufferWithViews

(
    FRDGBuilder & GraphBuilder,
    FRDGBufferRef & InBuffer,
    FRDGExternalBuffer & OutBuffer,
    EPixelFormat Format
)

Public function

TUniformBuff ...

 

CreateMobileSceneTextureUniformBuffer

(
    FRHIComputeCommandList & RHICmdList,
    EMobileSceneTextureSetupMode SetupM...
)

Creates the RHI mobile scene texture uniform buffer with passthrough RDG resources.

Public function

TRDGUniformB ...

 

CreateMobileSceneTextureUniformBuffer

(
    FRDGBuilder & GraphBuilder,
    EMobileSceneTextureSetupMode SetupM...
)

Creates the RDG mobile scene texture uniform buffer.

Public function

FSceneTextur ...

 

CreateSceneTextureShaderParameters

(
    FRDGBuilder & GraphBuilder,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode
)

Returns scene texture shader parameters containing the RDG uniform buffer for either mobile or deferred shading.

Public function

TUniformBuff ...

 

CreateSceneTextureUniformBuffer

(
    FRHIComputeCommandList & RHICmdList,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode
)

Returns RHI scene texture uniform buffer with passthrough RDG resources.

Public function

TRDGUniformB ...

 

CreateSceneTextureUniformBuffer

(
    FRDGBuilder & GraphBuilder,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode
)

Returns RDG scene texture uniform buffer.

Public function

TRefCountPtr ...

 

CreateSceneTextureUniformBufferDependentOnShadingPath

(
    FRHIComputeCommandList & RHICmdList,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode
)

Returns appropriate scene textures RHI uniform buffer for deferred or mobile path.

Public function

void

 

DrawDynamicMeshPass

(
    const FSceneView & View,
    FRHICommandList & RHICmdList,
    const LambdaType& BuildPassProcess...,
    bool bForceStereoInstancingOff
)

Provides a callback to build FMeshDrawCommands and then submits them immediately.

Public function

void

 

DrawDynamicMeshPassPrivate

(
    const FSceneView & View,
    FRHICommandList & RHICmdList,
    FMeshCommandOneFrameArray & Visible...,
    FDynamicMeshDrawCommandStorage & Dy...,
    FGraphicsMinimalPipelineStateSet & ...,
    bool & InNeedsShaderInitialisation,
    uint32 InstanceFactor
)

Public function

float

 

GetHairAvgRadius

(
    uint32 InCount,
    float InCoverage
)

Return the average hair normalized radius for a given hair count and a given coverage value.

Public function

float

 

GetHairCoverage

(
    uint32 HairCount,
    float AverageHairRadius
)

Return the hair coverage for a certain hair count and normalized avg hair radius (i.e, [0..1])

Public function

FHairCullInf ...

 

GetHairStrandsCullInfo()

Public function

EHairDebugMo ...

 

GetHairStrandsDebugMode()

Public function

EHairStrands ...

 

GetHairStrandsDebugStrandsMode()

Return the active debug view mode.

Public function

const TCHAR ...

 

GetMeshPassName

(
    EMeshPass::Type MeshPass
)

Public function

FSceneTextur ...

 

GetSceneTextureShaderParameters

Public function

FSceneTextur ...

 

GetSceneTextureShaderParameters

Public function Static

EVRSShadingR ...

 

GetShadingRateFromMaterial

(
    EMaterialShadingRate MaterialShadin...
)

Public function

bool

 

IsHairRayTracingEnabled()

Public function

bool

 

IsHairStrandsBindingEnable()

Return true if hair binding is enabled (i.e., hair can be attached to skeletal mesh)

Public function

bool

 

IsHairStrandsComplexLightingEnabled()

Return true if the hair should be rendered using the sub-pixel lighting path, false if the regular gbuffer lighting path should be used.

Public function

bool

 

IsHairStrandsEnabled

(
    EHairStrandsShaderType Type,
    EShaderPlatform Platform
)

Public function

bool

 

IsHairStrandsSimulationEnable()

Return true if hair simulation is enabled.

Public function

bool

 

IsHairStrandsSupported

(
    EHairStrandsShaderType Type,
    EShaderPlatform Platform
)

Public function

bool

 

IsSceneTexturesValid

(
    FRHICommandListImmediate & RHICmdLi...
)

Deprecated APIs

Public function

constexpr bo ...

 

operator!

(
    EMeshPassFlags E
)

Public function

constexpr bo ...

 

operator!

Public function

constexpr bo ...

 

operator!

Public function

constexpr bo ...

 

operator!

Public function

constexpr bo ...

 

operator!

Public function

constexpr bo ...

 

operator!

(
    EMeshPassFeatures E
)

Public function

constexpr EM ...

 

operator&

(
    EMeshPassFeatures Lhs,
    EMeshPassFeatures Rhs
)

Public function

constexpr ED ...

 

operator&

Public function

constexpr EM ...

 

operator&

(
    EMeshPassFlags Lhs,
    EMeshPassFlags Rhs
)

Public function

constexpr ES ...

 

operator&

Public function

constexpr EM ...

 

operator&

Public function

constexpr ER ...

 

operator&

Public function

EMobileScene ...

 

operator&=

Public function

ESceneTextur ...

 

operator&=

(
    ESceneTextureSetupMode & Lhs,
    ESceneTextureSetupMode Rhs
)

Public function

EMeshPassFla ...

 

operator&=

(
    EMeshPassFlags & Lhs,
    EMeshPassFlags Rhs
)

Public function

EDrawingPoli ...

 

operator&=

Public function

EMeshPassFea ...

 

operator&=

(
    EMeshPassFeatures & Lhs,
    EMeshPassFeatures Rhs
)

Public function

ERDGImported ...

 

operator&=

(
    ERDGImportedBufferFlags & Lhs,
    ERDGImportedBufferFlags Rhs
)

Public function

constexpr ED ...

 

operator^

Public function

constexpr ER ...

 

operator^

Public function

constexpr EM ...

 

operator^

(
    EMeshPassFeatures Lhs,
    EMeshPassFeatures Rhs
)

Public function

constexpr ES ...

 

operator^

Public function

constexpr EM ...

 

operator^

Public function

constexpr EM ...

 

operator^

(
    EMeshPassFlags Lhs,
    EMeshPassFlags Rhs
)

Public function

ERDGImported ...

 

operator^=

(
    ERDGImportedBufferFlags & Lhs,
    ERDGImportedBufferFlags Rhs
)

Public function

EDrawingPoli ...

 

operator^=

Public function

ESceneTextur ...

 

operator^=

(
    ESceneTextureSetupMode & Lhs,
    ESceneTextureSetupMode Rhs
)

Public function

EMobileScene ...

 

operator^=

Public function

EMeshPassFla ...

 

operator^=

(
    EMeshPassFlags & Lhs,
    EMeshPassFlags Rhs
)

Public function

EMeshPassFea ...

 

operator^=

(
    EMeshPassFeatures & Lhs,
    EMeshPassFeatures Rhs
)

Public function

constexpr ES ...

 

operator|

Public function

constexpr ER ...

 

operator|

Public function

constexpr EM ...

 

operator|

(
    EMeshPassFeatures Lhs,
    EMeshPassFeatures Rhs
)

Public function

constexpr ED ...

 

operator|

Public function

constexpr EM ...

 

operator|

(
    EMeshPassFlags Lhs,
    EMeshPassFlags Rhs
)

Public function

constexpr EM ...

 

operator|

Public function

EMobileScene ...

 

operator|=

Public function

ESceneTextur ...

 

operator|=

(
    ESceneTextureSetupMode & Lhs,
    ESceneTextureSetupMode Rhs
)

Public function

EMeshPassFla ...

 

operator|=

(
    EMeshPassFlags & Lhs,
    EMeshPassFlags Rhs
)

Public function

EDrawingPoli ...

 

operator|=

Public function

EMeshPassFea ...

 

operator|=

(
    EMeshPassFeatures & Lhs,
    EMeshPassFeatures Rhs
)

Public function

ERDGImported ...

 

operator|=

(
    ERDGImportedBufferFlags & Lhs,
    ERDGImportedBufferFlags Rhs
)

Public function

constexpr EM ...

 

operator~

(
    EMeshPassFlags E
)

Public function

constexpr ED ...

 

operator~

Public function

constexpr EM ...

 

operator~

(
    EMeshPassFeatures E
)

Public function

constexpr ER ...

 

operator~

Public function

constexpr EM ...

 

operator~

Public function

constexpr ES ...

 

operator~

Public function

void

 

RasterizeToVolumeTexture

(
    FRHICommandList & RHICmdList,
    FVolumeBounds VolumeBounds
)

This function assumes the PSO had a PrimitiveType of PT_TriangleStrip.

Public function

FRDGImported ...

 

Register

(
    FRDGBuilder & GraphBuilder,
    const FRDGExternalBuffer & In,
    ERDGImportedBufferFlags Flags,
    ERDGUnorderedAccessViewFlags UAVFla...
)

Public function

FRDGBufferSR ...

 

RegisterAsSRV

(
    FRDGBuilder & GraphBuilder,
    const FRDGExternalBuffer & In
)

Public function

FRDGBufferUA ...

 

RegisterAsUAV

(
    FRDGBuilder & GraphBuilder,
    const FRDGExternalBuffer & In,
    ERDGUnorderedAccessViewFlags Flags
)

Public function

void

 

RegisterBookmarkFunction

(
    THairStrandsBookmarkFunction Bookma...,
    THairStrandsParameterFunction Param...
)

Public function

void

 

SetHairScreenLODInfo

(
    bool bEnable
)

Helper to enable debug information about hair LOD.

Public function

void

 

SetupMobileSceneTextureUniformParameters

(
    FSceneRenderTargets& SceneContext,
    ERHIFeatureLevel::Type FeatureLevel,
    bool bSceneTexturesValid,
    bool bCustomDepthIsValid,
    FMobileSceneTextureUniformParameter ...
)

SetupMobileSceneTextureUniformParameters has been refactored to EMobileSceneTextureSetupMode.

Public function

void

 

SetupMobileSceneTextureUniformParameters

(
    const FSceneRenderTargets& SceneCo...,
    EMobileSceneTextureSetupMode SetupM...,
    FMobileSceneTextureUniformParameter ...
)

Fills the scene texture uniform buffer struct.

Public function

void

 

SetupMobileSceneTextureUniformParameters

(
    FRDGBuilder & GraphBuilder,
    EMobileSceneTextureSetupMode SetupM...,
    FMobileSceneTextureUniformParameter ...
)

Public function

void

 

SetupSceneTextureUniformParameters

(
    FRDGBuilder & GraphBuilder,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode,
    FSceneTextureUniformParameters & Ou...
)

Public function

void

 

SetupSceneTextureUniformParameters

(
    const FSceneRenderTargets& SceneCo...,
    ERHIFeatureLevel::Type FeatureLevel,
    ESceneTextureSetupMode SetupMode,
    FSceneTextureUniformParameters & Ou...
)

Fills the shader parameter struct.

Public function

void

 

SubmitMeshDrawCommands

(
    const FMeshCommandOneFrameArray & V...,
    const FGraphicsMinimalPipelineState ...,
    FRHIVertexBuffer * PrimitiveIds...,
    int32 BasePrimitiveIdsOffset,
    bool bDynamicInstancing,
    uint32 InstanceFactor,
    FRHICommandList & RHICmdList
)

Public function

void

 

SubmitMeshDrawCommandsRange

(
    const FMeshCommandOneFrameArray & V...,
    const FGraphicsMinimalPipelineState ...,
    FRHIVertexBuffer * PrimitiveIds...,
    int32 BasePrimitiveIdsOffset,
    bool bDynamicInstancing,
    int32 StartIndex,
    int32 NumMeshDrawCommands,
    uint32 InstanceFactor,
    FRHICommandList & RHICmdList
)

Public function

void

 

TransitBufferToReadable

(
    FRDGBuilder & GraphBuilder,
    FBufferTransitionQueue & BuffersToT...
)

Variables

Name Description

Public variable

const int32

 

GMaxGlobalDistanceFieldClipmaps

Must match global distance field shaders.

Public variable

TGlobalResource ...

 

GVolumeRasterizeVertexBuffer

Public variable

const int32

 

NumInlineShaderBindings

Number of resource bindings to allocate inline within a FMeshDrawCommand .

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback