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

#include <VelocityRendering.h>

+ Inheritance diagram for FVelocityMeshProcessor:

Public Member Functions

 FVelocityMeshProcessor (EMeshPass::Type MeshPassType, const FScene *Scene, ERHIFeatureLevel::Type FeatureLevel, const FSceneView *InViewIfDynamicMeshCommand, const FMeshPassProcessorRenderState &InPassDrawRenderState, FMeshPassDrawListContext *InDrawListContext)
 
- 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)
 
virtual void AddMeshBatch (const FMeshBatch &RESTRICT MeshBatch, uint64 BatchElementMask, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy, int32 StaticMeshId=-1)=0
 
virtual void CollectPSOInitializers (const FSceneTexturesConfig &SceneTexturesConfig, const FMaterial &Material, const FPSOPrecacheVertexFactoryData &VertexFactoryData, const FPSOPrecacheParams &PreCacheParams, TArray< FPSOPrecacheData > &PSOInitializers) override
 
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)
 

Static Public Member Functions

static bool PrimitiveHasVelocityForView (const FViewInfo &View, const FPrimitiveSceneProxy *PrimitiveSceneProxy)
 
- 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

FMeshPassProcessorRenderState PassDrawRenderState
 
- 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

bool Process (const FMeshBatch &MeshBatch, uint64 BatchElementMask, int32 StaticMeshId, const FPrimitiveSceneProxy *RESTRICT PrimitiveSceneProxy, const FMaterialRenderProxy &RESTRICT MaterialRenderProxy, const FMaterial &RESTRICT MaterialResource, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode)
 
bool CollectPSOInitializersInternal (const FSceneTexturesConfig &SceneTexturesConfig, const FPSOPrecacheVertexFactoryData &VertexFactoryData, const FMaterial &RESTRICT MaterialResource, ERasterizerFillMode MeshFillMode, ERasterizerCullMode MeshCullMode, TArray< FPSOPrecacheData > &PSOInitializers)
 
- 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
 

Protected Attributes

EDepthDrawingMode EarlyZPassMode = DDM_None
 
EMeshPass::Type MeshPassType = EMeshPass::Type::Num
 

Detailed Description

Base velocity mesh pass processor class. Used for both opaque and translucent velocity passes.

Constructor & Destructor Documentation

◆ FVelocityMeshProcessor()

FVelocityMeshProcessor::FVelocityMeshProcessor ( EMeshPass::Type  MeshPassType,
const FScene Scene,
ERHIFeatureLevel::Type  FeatureLevel,
const FSceneView InViewIfDynamicMeshCommand,
const FMeshPassProcessorRenderState InPassDrawRenderState,
FMeshPassDrawListContext InDrawListContext 
)

Member Function Documentation

◆ CollectPSOInitializersInternal()

bool FVelocityMeshProcessor::CollectPSOInitializersInternal ( const FSceneTexturesConfig SceneTexturesConfig,
const FPSOPrecacheVertexFactoryData VertexFactoryData,
const FMaterial &RESTRICT  MaterialResource,
ERasterizerFillMode  MeshFillMode,
ERasterizerCullMode  MeshCullMode,
TArray< FPSOPrecacheData > &  PSOInitializers 
)
protected

◆ PrimitiveHasVelocityForView()

bool FVelocityMeshProcessor::PrimitiveHasVelocityForView ( const FViewInfo View,
const FPrimitiveSceneProxy PrimitiveSceneProxy 
)
static

◆ Process()

bool FVelocityMeshProcessor::Process ( const FMeshBatch MeshBatch,
uint64  BatchElementMask,
int32  StaticMeshId,
const FPrimitiveSceneProxy *RESTRICT  PrimitiveSceneProxy,
const FMaterialRenderProxy &RESTRICT  MaterialRenderProxy,
const FMaterial &RESTRICT  MaterialResource,
ERasterizerFillMode  MeshFillMode,
ERasterizerCullMode  MeshCullMode 
)
protected

Member Data Documentation

◆ EarlyZPassMode

EDepthDrawingMode FVelocityMeshProcessor::EarlyZPassMode = DDM_None
protected

◆ MeshPassType

EMeshPass::Type FVelocityMeshProcessor::MeshPassType = EMeshPass::Type::Num
protected

◆ PassDrawRenderState

FMeshPassProcessorRenderState FVelocityMeshProcessor::PassDrawRenderState

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