UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
HairStrandsComposition.cpp File Reference

Classes

class  FHairHoldoutPS
 
class  FHairVisibilityComposeSamplePS
 
class  FHairDOFDepthPS
 
class  FHairVisibilityFastResolveMaskPS
 
class  FHairVisibilityGBufferWritePS
 

Namespaces

namespace  Substrate
 

Enumerations

enum  EHairStrandsCommonPassType {
  Composition , DOF , TAAFastResolve , GBuffer ,
  Blit , HoldoutScene , HoldoutHair
}
 

Functions

 DECLARE_GPU_STAT (HairStrandsComposition)
 
float GetHairFastResolveVelocityThreshold (const FIntPoint &Resolution)
 
template<typename TPassParameter , typename TPixelShader >
void InternalCommonDrawPass (FRDGBuilder &GraphBuilder, FRDGEventName &&EventName, const FViewInfo &View, const FIntPoint Resolution, const EHairStrandsCommonPassType Type, const bool bWriteDepth, const bool bHasHoldout, const FHairStrandsTiles &TileData, TPixelShader &PixelShader, TPassParameter *PassParamters)
 
 IMPLEMENT_GLOBAL_SHADER (FHairHoldoutPS, "/Engine/Private/HairStrands/HairStrandsComposition.usf", "HoldoutPS", SF_Pixel)
 
 IMPLEMENT_GLOBAL_SHADER (FHairVisibilityComposeSamplePS, "/Engine/Private/HairStrands/HairStrandsComposition.usf", "ComposeSamplePS", SF_Pixel)
 
 IMPLEMENT_GLOBAL_SHADER (FHairDOFDepthPS, "/Engine/Private/HairStrands/HairStrandsComposition.usf", "DOFDepthPS", SF_Pixel)
 
 IMPLEMENT_GLOBAL_SHADER (FHairVisibilityFastResolveMaskPS, "/Engine/Private/HairStrands/HairStrandsComposition.usf", "FastResolvePS", SF_Pixel)
 
 IMPLEMENT_GLOBAL_SHADER (FHairVisibilityGBufferWritePS, "/Engine/Private/HairStrands/HairStrandsComposition.usf", "MainPS", SF_Pixel)
 
FSubstrateCommonParameters Substrate::GetSubstrateCommonParameter (const FSubstrateSceneData &In)
 
void RenderHairComposition (FRDGBuilder &GraphBuilder, const TArray< FViewInfo > &Views, FRDGTextureRef SceneColorTexture, FRDGTextureRef SceneDepthTexture, FRDGTextureRef SceneVelocityTexture, FTranslucencyPassResourcesMap &TranslucencyResourceMap)
 
void RenderHairComposition (FRDGBuilder &GraphBuilder, const FViewInfo &View, FRDGTextureRef SceneColorTexture, FRDGTextureRef SceneDepthTexture, FRDGTextureRef SceneVelocityTexture)
 

Enumeration Type Documentation

◆ EHairStrandsCommonPassType

Enumerator
Composition 
DOF 
TAAFastResolve 
GBuffer 
Blit 
HoldoutScene 
HoldoutHair 

Function Documentation

◆ DECLARE_GPU_STAT()

DECLARE_GPU_STAT ( HairStrandsComposition  )

◆ GetHairFastResolveVelocityThreshold()

float GetHairFastResolveVelocityThreshold ( const FIntPoint Resolution)

◆ IMPLEMENT_GLOBAL_SHADER() [1/5]

IMPLEMENT_GLOBAL_SHADER ( FHairDOFDepthPS  ,
"/Engine/Private/HairStrands/HairStrandsComposition.usf"  ,
"DOFDepthPS"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [2/5]

IMPLEMENT_GLOBAL_SHADER ( FHairHoldoutPS  ,
"/Engine/Private/HairStrands/HairStrandsComposition.usf"  ,
"HoldoutPS"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [3/5]

IMPLEMENT_GLOBAL_SHADER ( FHairVisibilityComposeSamplePS  ,
"/Engine/Private/HairStrands/HairStrandsComposition.usf"  ,
"ComposeSamplePS"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [4/5]

IMPLEMENT_GLOBAL_SHADER ( FHairVisibilityFastResolveMaskPS  ,
"/Engine/Private/HairStrands/HairStrandsComposition.usf"  ,
"FastResolvePS"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [5/5]

IMPLEMENT_GLOBAL_SHADER ( FHairVisibilityGBufferWritePS  ,
"/Engine/Private/HairStrands/HairStrandsComposition.usf"  ,
"MainPS"  ,
SF_Pixel   
)

◆ InternalCommonDrawPass()

void InternalCommonDrawPass ( FRDGBuilder GraphBuilder,
FRDGEventName &&  EventName,
const FViewInfo View,
const FIntPoint  Resolution,
const EHairStrandsCommonPassType  Type,
const bool  bWriteDepth,
const bool  bHasHoldout,
const FHairStrandsTiles TileData,
TPixelShader PixelShader,
TPassParameter PassParamters 
)

◆ RenderHairComposition() [1/2]

void RenderHairComposition ( FRDGBuilder GraphBuilder,
const FViewInfo View,
FRDGTextureRef  SceneColorTexture,
FRDGTextureRef  SceneDepthTexture,
FRDGTextureRef  SceneVelocityTexture 
)

◆ RenderHairComposition() [2/2]

void RenderHairComposition ( FRDGBuilder GraphBuilder,
const TArray< FViewInfo > &  Views,
FRDGTextureRef  SceneColorTexture,
FRDGTextureRef  SceneDepthTexture,
FRDGTextureRef  SceneVelocityTexture,
FTranslucencyPassResourcesMap TranslucencyResourceMap 
)