UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FogRendering.cpp File Reference
#include "FogRendering.h"
#include "DataDrivenShaderPlatformInfo.h"
#include "DeferredShadingRenderer.h"
#include "LightSceneProxy.h"
#include "ScenePrivate.h"
#include "Engine/TextureCube.h"
#include "PipelineStateCache.h"
#include "SingleLayerWaterRendering.h"
#include "SceneCore.h"
#include "ScreenPass.h"
#include "TextureResource.h"
#include "PostProcess/PostProcessing.h"
#include "EnvironmentComponentsFlags.h"

Classes

class  FHeightFogVS
 
class  FExponentialHeightFogPS
 
class  FFogVertexDeclaration
 

Functions

 DECLARE_GPU_DRAWCALL_STAT (Fog)
 
bool PlatformUsesBasicFogFeatures (EShaderPlatform ShaderPlatform)
 
 IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT (FFogUniformParameters, "FogStruct")
 
void SetupFogUniformParameters (FRDGBuilder &GraphBuilder, const FViewInfo &View, FFogUniformParameters &OutParameters, bool bForRealtimeSkyCapture)
 
TRDGUniformBufferRef< FFogUniformParametersCreateFogUniformBuffer (FRDGBuilder &GraphBuilder, const FViewInfo &View)
 
 IMPLEMENT_GLOBAL_SHADER (FHeightFogVS, "/Engine/Private/HeightFogVertexShader.usf", "Main", SF_Vertex)
 
 IMPLEMENT_GLOBAL_SHADER (FExponentialHeightFogPS, "/Engine/Private/HeightFogPixelShader.usf", "ExponentialPixelMain", SF_Pixel)
 
void RenderFogOnClouds (FRDGBuilder &GraphBuilder, const FScene *Scene, const FViewInfo &View, FRDGTextureRef SrcCloudDepth, FRDGTextureRef SrcCloudView, FRDGTextureRef DstCloudView, const bool bShouldRenderVolumetricFog, const bool bUseVolumetricRenderTarget)
 
bool ShouldRenderFog (const FSceneViewFamily &Family)
 
float GetFogDefaultStartDistance ()
 
float GetViewFogCommonStartDistance (const FViewInfo &View, bool bShouldRenderVolumetricFog, bool bShouldRenderLocalFogVolumes)
 

Variables

TGlobalResource< FFogVertexDeclarationGFogVertexDeclaration
 

Function Documentation

◆ CreateFogUniformBuffer()

TRDGUniformBufferRef< FFogUniformParameters > CreateFogUniformBuffer ( FRDGBuilder GraphBuilder,
const FViewInfo View 
)

◆ DECLARE_GPU_DRAWCALL_STAT()

DECLARE_GPU_DRAWCALL_STAT ( Fog  )

◆ GetFogDefaultStartDistance()

float GetFogDefaultStartDistance ( )

◆ GetViewFogCommonStartDistance()

float GetViewFogCommonStartDistance ( const FViewInfo View,
bool  bShouldRenderVolumetricFog,
bool  bShouldRenderLocalFogVolumes 
)

◆ IMPLEMENT_GLOBAL_SHADER() [1/2]

IMPLEMENT_GLOBAL_SHADER ( FExponentialHeightFogPS  ,
"/Engine/Private/HeightFogPixelShader.usf"  ,
"ExponentialPixelMain"  ,
SF_Pixel   
)

◆ IMPLEMENT_GLOBAL_SHADER() [2/2]

IMPLEMENT_GLOBAL_SHADER ( FHeightFogVS  ,
"/Engine/Private/HeightFogVertexShader.usf"  ,
"Main"  ,
SF_Vertex   
)

◆ IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT()

IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT ( FFogUniformParameters  ,
"FogStruct"   
)

◆ PlatformUsesBasicFogFeatures()

bool PlatformUsesBasicFogFeatures ( EShaderPlatform  ShaderPlatform)

◆ RenderFogOnClouds()

void RenderFogOnClouds ( FRDGBuilder GraphBuilder,
const FScene Scene,
const FViewInfo View,
FRDGTextureRef  SrcCloudDepth,
FRDGTextureRef  SrcCloudView,
FRDGTextureRef  DstCloudView,
const bool  bShouldRenderVolumetricFog,
const bool  bUseVolumetricRenderTarget 
)

◆ SetupFogUniformParameters()

void SetupFogUniformParameters ( FRDGBuilder GraphBuilder,
const FViewInfo View,
FFogUniformParameters OutParameters,
bool  bForRealtimeSkyCapture 
)

◆ ShouldRenderFog()

bool ShouldRenderFog ( const FSceneViewFamily Family)

Variable Documentation

◆ GFogVertexDeclaration

TGlobalResource<FFogVertexDeclaration> GFogVertexDeclaration

Vertex declaration for the light function fullscreen 2D quad.