UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FDepthPassMeshProcessor Class Reference

#include <DepthRendering.h>

+ Inheritance diagram for FDepthPassMeshProcessor:

Public Member Functions

 FDepthPassMeshProcessor (EMeshPass::Type InMeshPassType, const FScene *Scene, ERHIFeatureLevel::Type FeatureLevel, const FSceneView *InViewIfDynamicMeshCommand, const FMeshPassProcessorRenderState &InPassDrawRenderState, const bool InbRespectUseAsOccluderFlag, const EDepthDrawingMode InEarlyZPassMode, const bool InbEarlyZPassMovable, const bool bDitheredLODFadingOutMaskPass, FMeshPassDrawListContext *InDrawListContext, const bool bShadowProjection=false, const bool bSecondStageDepthPass=false)
 
virtual void AddMeshBatch (const FMeshBatch &RESTRICT MeshBatch, uint64 BatchElementMask, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy, int32 StaticMeshId=-1) override final
 
virtual void CollectPSOInitializers (const FSceneTexturesConfig &SceneTexturesConfig, const FMaterial &Material, const FPSOPrecacheVertexFactoryData &VertexFactoryData, const FPSOPrecacheParams &PreCacheParams, TArray< FPSOPrecacheData > &PSOInitializers) override final
 
template<bool bPositionOnly>
bool Process (const FMeshBatch &RESTRICT MeshBatch, uint64 BatchElementMask, int32 StaticMeshId, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy, const FMaterialRenderProxy &RESTRICT MaterialRenderProxy, const FMaterial &RESTRICT MaterialResource, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode)
 
- Public Member Functions inherited from FMeshPassProcessor
 FMeshPassProcessor (const FScene *InScene, ERHIFeatureLevel::Type InFeatureLevel, const FSceneView *InViewIfDynamicMeshCommand, FMeshPassDrawListContext *InDrawListContext)
 
RENDERER_API FMeshPassProcessor (EMeshPass::Type InMeshPassType, const FScene *InScene, ERHIFeatureLevel::Type InFeatureLevel, const FSceneView *InViewIfDynamicMeshCommand, FMeshPassDrawListContext *InDrawListContext)
 
RENDERER_API FMeshPassProcessor (const TCHAR *InMeshPassName, const FScene *InScene, ERHIFeatureLevel::Type InFeatureLevel, const FSceneView *InViewIfDynamicMeshCommand, FMeshPassDrawListContext *InDrawListContext)
 
virtual ~FMeshPassProcessor ()
 
void SetDrawListContext (FMeshPassDrawListContext *InDrawListContext)
 
template<typename PassShadersType , typename ShaderElementDataType >
void BuildMeshDrawCommands (const FMeshBatch &RESTRICT MeshBatch, uint64 BatchElementMask, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy, const FMaterialRenderProxy &RESTRICT MaterialRenderProxy, const FMaterial &RESTRICT MaterialResource, const FMeshPassProcessorRenderState &RESTRICT DrawRenderState, const PassShadersType &PassShaders, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode, FMeshDrawCommandSortKey SortKey, EMeshPassFeatures MeshPassFeatures, const ShaderElementDataType &ShaderElementData)
 
template<typename PassShadersType >
void AddGraphicsPipelineStateInitializer (const FPSOPrecacheVertexFactoryData &VertexFactoryData, const FMaterial &RESTRICT MaterialResource, const FMeshPassProcessorRenderState &RESTRICT DrawRenderState, const FGraphicsPipelineRenderTargetsInfo &RESTRICT RenderTargetsInfo, const PassShadersType &PassShaders, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode, EPrimitiveType PrimitiveType, EMeshPassFeatures MeshPassFeatures, bool bRequired, TArray< FPSOPrecacheData > &PSOInitializers)
 
- Public Member Functions inherited from IPSOCollector
 IPSOCollector (int32 InPSOCollectorIndex)
 
virtual ~IPSOCollector ()
 
void CollectPSOInitializers (const FSceneTexturesConfig &SceneTexturesConfig, const FMaterial &Material, const FVertexFactoryType *VertexFactoryType, const FPSOPrecacheParams &PreCacheParams, TArray< FPSOPrecacheData > &PSOInitializers)
 

Additional Inherited Members

- Static Public Member Functions inherited from TConcurrentLinearObject< ObjectType, BlockAllocationTag >
static voidoperator new (size_t Size)
 
static voidoperator new (size_t Size, void *Object)
 
static voidoperator new[] (size_t Size)
 
static voidoperator new (size_t Size, std::align_val_t Align)
 
static voidoperator new[] (size_t Size, std::align_val_t Align)
 
static UE_FORCEINLINE_HINT void operator delete (void *Ptr)
 
static UE_FORCEINLINE_HINT void operator delete[] (void *Ptr)
 
- Static Public Member Functions inherited from FMeshPassProcessor
static FORCEINLINE_DEBUGGABLE ERasterizerCullMode InverseCullMode (ERasterizerCullMode CullMode)
 
static RENDERER_API FMeshDrawingPolicyOverrideSettings ComputeMeshOverrideSettings (const FPSOPrecacheParams &PrecachePSOParams)
 
static RENDERER_API FMeshDrawingPolicyOverrideSettings ComputeMeshOverrideSettings (const FMeshBatch &Mesh)
 
static RENDERER_API ERasterizerFillMode ComputeMeshFillMode (const FMaterial &InMaterialResource, const FMeshDrawingPolicyOverrideSettings &InOverrideSettings)
 
static RENDERER_API ERasterizerCullMode ComputeMeshCullMode (const FMaterial &InMaterialResource, const FMeshDrawingPolicyOverrideSettings &InOverrideSettings)
 
template<typename PassShadersType >
static void AddGraphicsPipelineStateInitializer (const FPSOPrecacheVertexFactoryData &VertexFactoryData, const FMaterial &RESTRICT MaterialResource, const FMeshPassProcessorRenderState &RESTRICT DrawRenderState, const FGraphicsPipelineRenderTargetsInfo &RESTRICT RenderTargetsInfo, const PassShadersType &PassShaders, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode, EPrimitiveType PrimitiveType, EMeshPassFeatures MeshPassFeatures, ESubpassHint SubpassHint, uint8 SubpassIndex, bool bRequired, int32 PSOCollectorIndex, TArray< FPSOPrecacheData > &PSOInitializers)
 
- Public Attributes inherited from FMeshPassProcessor
EMeshPass::Type MeshPassType
 
const FScene *RESTRICT Scene
 
ERHIFeatureLevel::Type FeatureLevel
 
const FSceneViewViewIfDynamicMeshCommand
 
FMeshPassDrawListContextDrawListContext
 
- Public Attributes inherited from IPSOCollector
int32 PSOCollectorIndex = INDEX_NONE
 
- Protected Member Functions inherited from FMeshPassProcessor
RENDERER_API FMeshDrawCommandPrimitiveIdInfo GetDrawCommandPrimitiveId (const FPrimitiveSceneInfo *RESTRICT PrimitiveSceneInfo, const FMeshBatchElement &BatchElement) const
 
RENDERER_API bool ShouldSkipMeshDrawCommand (const FMeshBatch &RESTRICT MeshBatch, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy) const
 
RENDERER_API bool PipelineVariableRateShadingEnabled () const
 
RENDERER_API bool HardwareVariableRateShadingSupportedByScene () const
 

Constructor & Destructor Documentation

◆ FDepthPassMeshProcessor()

FDepthPassMeshProcessor::FDepthPassMeshProcessor ( EMeshPass::Type  InMeshPassType,
const FScene Scene,
ERHIFeatureLevel::Type  FeatureLevel,
const FSceneView InViewIfDynamicMeshCommand,
const FMeshPassProcessorRenderState InPassDrawRenderState,
const bool  InbRespectUseAsOccluderFlag,
const EDepthDrawingMode  InEarlyZPassMode,
const bool  InbEarlyZPassMovable,
const bool  bDitheredLODFadingOutMaskPass,
FMeshPassDrawListContext InDrawListContext,
const bool  bShadowProjection = false,
const bool  bSecondStageDepthPass = false 
)
Parameters
bDitheredLODFadingOutMaskPassWhether this mesh processor is being reused for rendering a pass that marks all fading out pixels on the screen

Member Function Documentation

◆ AddMeshBatch()

void FDepthPassMeshProcessor::AddMeshBatch ( const FMeshBatch &RESTRICT  MeshBatch,
uint64  BatchElementMask,
const FPrimitiveSceneProxy *RESTRICT  PrimitiveSceneProxy,
int32  StaticMeshId = -1 
)
finaloverridevirtual

Implements FMeshPassProcessor.

◆ CollectPSOInitializers()

void FDepthPassMeshProcessor::CollectPSOInitializers ( const FSceneTexturesConfig SceneTexturesConfig,
const FMaterial Material,
const FPSOPrecacheVertexFactoryData VertexFactoryData,
const FPSOPrecacheParams PreCacheParams,
TArray< FPSOPrecacheData > &  PSOInitializers 
)
finaloverridevirtual

Reimplemented from FMeshPassProcessor.

◆ Process()

template<bool bPositionOnly>
bool FDepthPassMeshProcessor::Process ( const FMeshBatch &RESTRICT  MeshBatch,
uint64  BatchElementMask,
int32  StaticMeshId,
const FPrimitiveSceneProxy *RESTRICT  PrimitiveSceneProxy,
const FMaterialRenderProxy &RESTRICT  MaterialRenderProxy,
const FMaterial &RESTRICT  MaterialResource,
ERasterizerFillMode  MeshFillMode,
ERasterizerCullMode  MeshCullMode 
)

The documentation for this class was generated from the following files: