UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MaterialExpressionSubstrate.h File Reference
#include "CoreMinimal.h"
#include "Engine/EngineTypes.h"
#include "Materials/MaterialExpression.h"
#include "SubstrateDefinitions.h"
#include "MaterialExpressionSubstrate.generated.h"

Go to the source code of this file.

Classes

class  UMaterialExpressionSubstrateBSDF
 
class  UMaterialExpressionSubstrateShadingModels
 
class  UMaterialExpressionSubstrateSlabBSDF
 
class  UMaterialExpressionSubstrateSimpleClearCoatBSDF
 
class  UMaterialExpressionSubstrateVolumetricFogCloudBSDF
 
class  UMaterialExpressionSubstrateUnlitBSDF
 
class  UMaterialExpressionSubstrateHairBSDF
 
class  UMaterialExpressionSubstrateEyeBSDF
 
class  UMaterialExpressionSubstrateSingleLayerWaterBSDF
 
class  UMaterialExpressionSubstrateLightFunction
 
class  UMaterialExpressionSubstratePostProcess
 
class  UMaterialExpressionSubstrateUI
 
class  UMaterialExpressionSubstrateConvertToDecal
 
class  UMaterialExpressionSubstrateConvertMaterialAttributes
 
class  UMaterialExpressionSubstrateHorizontalMixing
 
class  UMaterialExpressionSubstrateVerticalLayering
 
class  UMaterialExpressionSubstrateAdd
 
class  UMaterialExpressionSubstrateWeight
 
class  UMaterialExpressionSubstrateSelect
 
class  UMaterialExpressionSubstrateUtilityBase
 
class  UMaterialExpressionSubstrateTransmittanceToMFP
 
class  UMaterialExpressionSubstrateMetalnessToDiffuseAlbedoF0
 
class  UMaterialExpressionSubstrateHazinessToSecondaryRoughness
 
class  UMaterialExpressionSubstrateThinFilm
 

Enumerations

enum  EMaterialSubSurfaceType : int {
  MSS_None = SSS_TYPE_NONE UMETA(DisplayName="None") , MSS_Wrap = SSS_TYPE_WRAP UMETA(DisplayName="Wrap", ToolTip="Approximation using wrap-lighting. ") , MSS_TwoSidedWrap = SSS_TYPE_TWO_SIDED_WRAP UMETA(DisplayName="Two-Sided Wrap", ToolTip="Approximation using wrap-lighting and handling thin surface (e.g.: foliage)") , MSS_Diffusion = SSS_TYPE_DIFFUSION UMETA(DisplayName="Diffusion", ToolTip="Diffusion based sub-surface scattering") ,
  MSS_DiffusionProfile = SSS_TYPE_DIFFUSION_PROFILE UMETA(Hidden) , MSS_SimpleVolume = SSS_TYPE_SIMPLEVOLUME UMETA(DisplayName="Simple Volume", ToolTip="Approximation of optically thin slab (e.g.: glass) where light is visible through the material") , MSS_MAX
}
 

Functions

EMaterialSubSurfaceType SubstrateMergeSubSurfaceType (EMaterialSubSurfaceType A, EMaterialSubSurfaceType B)
 
int32 CompileSubstrateBlendFunction (FMaterialCompiler *Compiler, const int32 A, const int32 B, const int32 Alpha)
 

Enumeration Type Documentation

◆ EMaterialSubSurfaceType

Enumerator
MSS_None 
MSS_Wrap 
MSS_TwoSidedWrap 
MSS_Diffusion 
MSS_DiffusionProfile 
MSS_SimpleVolume 
MSS_MAX 

Function Documentation

◆ CompileSubstrateBlendFunction()

int32 CompileSubstrateBlendFunction ( FMaterialCompiler Compiler,
const int32  A,
const int32  B,
const int32  Alpha 
)
extern

Compile a special blend function for Substrate when blending material attribute

Parameters
CompilerThe compiler to add code to
ForegroundEntry A, has a bigger impact when Alpha is close to 0
BackgroundEntry B, has a bigger impact when Alpha is close to 1
AlphaBlend factor [0..1], when 0
Returns
Index to a new code chunk

◆ SubstrateMergeSubSurfaceType()

EMaterialSubSurfaceType SubstrateMergeSubSurfaceType ( EMaterialSubSurfaceType  A,
EMaterialSubSurfaceType  B 
)