UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Substrate.h File Reference
#include "ShaderParameterMacros.h"
#include "RenderGraphResources.h"
#include "MeshPassProcessor.h"
#include "UnifiedBuffer.h"
#include "RHIUtilities.h"
#include "SubstrateDefinitions.h"
#include "GBufferInfo.h"
#include "RendererUtils.h"
#include "ShaderParameterStruct.h"
#include "SceneView.h"

Go to the source code of this file.

Classes

struct  FSubstrateSceneData
 
struct  FSubstrateViewData
 
struct  FSubstrateViewDebugData
 
struct  FSubstrateViewDebugData::FTransientDebugBuffer
 
struct  FSubstrateViewDebugData::FTransientPixelDebugBuffer
 
struct  FSubstrateViewDebugData::FTransientSystemInfoDebugBuffer
 
class  Substrate::FSubstrateTilePassVS
 

Namespaces

namespace  Substrate
 

Functions

FIntPoint Substrate::GetSubstrateTextureResolution (const FViewInfo &View, const FIntPoint &InResolution)
 
uint32 Substrate::GetSubstrateMaxClosureCount (const FViewInfo &View)
 
bool Substrate::GetSubstrateUsesComplexSpecialPath (const FViewInfo &View)
 
bool Substrate::GetSubstrateUsesAnisotropy (const FViewInfo &View)
 
bool Substrate::UsesSubstrateMaterialBuffer (EShaderPlatform In)
 
bool Substrate::UsesStochasticLightingClassification (EShaderPlatform InPlatform)
 
bool Substrate::GetSubstrateUsesTileType (const FViewInfo &View, ESubstrateTileType TileType)
 
void Substrate::InitialiseSubstrateFrameSceneData (FRDGBuilder &GraphBuilder, FSceneRenderer &SceneRenderer)
 
void Substrate::BindSubstrateBasePassUniformParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, FSubstrateBasePassUniformParameters &OutSubstrateUniformParameters)
 
void Substrate::BindSubstrateForwardPasslUniformParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, FSubstrateForwardPassUniformParameters &OutSubstrateUniformParameters)
 
void Substrate::BindSubstrateMobileForwardPasslUniformParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, FSubstrateMobileForwardPassUniformParameters &OutSubstrateUniformParameters)
 
TRDGUniformBufferRef< FSubstrateGlobalUniformParametersSubstrate::BindSubstrateGlobalUniformParameters (const FViewInfo &View)
 
void Substrate::AppendSubstrateMRTs (const FSceneRenderer &SceneRenderer, uint32 &RenderTargetCount, TArrayView< FTextureRenderTargetBinding > RenderTargets)
 
void Substrate::SetBasePassRenderTargetOutputFormat (const EShaderPlatform Platform, const FMaterialShaderParameters &MaterialParameters, FShaderCompilerEnvironment &OutEnvironment, EGBufferLayout GBufferLayout)
 
void Substrate::BindSubstratePublicGlobalUniformParameters (FRDGBuilder &GraphBuilder, const FSubstrateSceneData *SubstrateSceneData, FSubstratePublicParameters &OutSubstrateParameters)
 
TRDGUniformBufferRef< FSubstratePublicGlobalUniformParametersSubstrate::CreatePublicGlobalUniformBuffer (FRDGBuilder &GraphBuilder, FSubstrateSceneData *SubstrateScene)
 
void Substrate::AddSubstrateMaterialClassificationPass (FRDGBuilder &GraphBuilder, const FMinimalSceneTextures &SceneTextures, const FDBufferTextures &DBufferTextures, const TArray< FViewInfo > &Views)
 
void Substrate::AddSubstrateDBufferPass (FRDGBuilder &GraphBuilder, const FSceneTextures &SceneTextures, const FDBufferTextures &DBufferTextures, const TArray< FViewInfo > &Views)
 
void Substrate::AddSubstrateStencilPass (FRDGBuilder &GraphBuilder, const TArray< FViewInfo > &Views, const FMinimalSceneTextures &SceneTextures)
 
void Substrate::AddSubstrateSampleMaterialPass (FRDGBuilder &GraphBuilder, const FScene *Scene, const FMinimalSceneTextures &SceneTextures, const TArray< FViewInfo > &Views)
 
void Substrate::AddSubstrateMaterialClassificationIndirectArgsPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, ERDGPassFlags ComputePassFlags)
 
void Substrate::AddSubstrateOpaqueRoughRefractionPasses (FRDGBuilder &GraphBuilder, FSceneTextures &SceneTextures, TArrayView< const FViewInfo > Views)
 
bool Substrate::ShouldRenderSubstrateDebugPasses (const FViewInfo &View)
 
FScreenPassTexture Substrate::AddSubstrateDebugPasses (FRDGBuilder &GraphBuilder, const FViewInfo &View, FScreenPassTexture &ScreenPassSceneColor)
 
void Substrate::AddProcessAndPrintSubstrateMaterialPropertiesPasses (FRDGBuilder &GraphBuilder, const FViewInfo &View, FRDGTextureRef SceneColorTexture, EShaderPlatform Platform, FSubstrateViewDebugData::FTransientPixelDebugBuffer &NewSubstratePixelDebugBuffer)
 
FSubstrateTileParameter Substrate::SetTileParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, const ESubstrateTileType TileType)
 
FSubstrateTilePassVS::FParameters Substrate::SetTileParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, const ESubstrateTileType TileType, EPrimitiveType &PrimitiveType)
 
FSubstrateTilePassVS::FParameters Substrate::SetTileParameters (const FViewInfo &View, const ESubstrateTileType TileType, EPrimitiveType &PrimitiveType)
 
uint32 Substrate::TileTypeDrawIndirectArgOffset (const ESubstrateTileType Type)
 
uint32 Substrate::TileTypeDispatchIndirectArgOffset (const ESubstrateTileType Type)
 
bool Substrate::IsStochasticLightingActive (EShaderPlatform InPlatform)
 
uint32 Substrate::GetClosureTileIndirectArgsOffset (uint32 InDownsampleFactor)
 
void Substrate::AddSubstrateDBufferBasePass (FRDGBuilder &GraphBuilder, TArray< FViewInfo > &Views, const FSceneTextures &InSceneTextures, FDBufferTextures &DBufferTextures, FDecalVisibilityTaskData *DecalVisibility, FInstanceCullingManager &InstanceCullingManager, const FSubstrateSceneData &SubstrateSceneData)
 
bool Substrate::ShouldCompileSubstrateTileTypePermutations (const int32 SubstrateTileType, const EShaderPlatform Platform)
 

Variables

constexpr uint32 Substrate::StencilBit_Fast = 0x10
 
constexpr uint32 Substrate::StencilBit_Single = 0x20
 
constexpr uint32 Substrate::StencilBit_Complex = 0x40
 
constexpr uint32 Substrate::StencilBit_ComplexSpecial = 0x80