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

Namespaces

namespace  ShadowFreezeCamera
 

Macros

#define LERP_PP(NAME)   if(Src.bOverride_ ## NAME) Dest . NAME = FMath::Lerp(Dest . NAME, Src . NAME, Weight);
 
#define SET_PP(NAME)   if(Src.bOverride_ ## NAME) Dest . NAME = Src . NAME;
 
#define IF_PP(NAME)   if(Src.bOverride_ ## NAME && Src . NAME)
 

Functions

 DEFINE_LOG_CATEGORY (LogBufferVisualization)
 
 DEFINE_LOG_CATEGORY (LogNaniteVisualization)
 
 DEFINE_LOG_CATEGORY (LogLumenVisualization)
 
 DEFINE_LOG_CATEGORY (LogVirtualShadowMapVisualization)
 
 DEFINE_LOG_CATEGORY (LogMultiView)
 
 DECLARE_CYCLE_STAT (TEXT("StartFinalPostprocessSettings"), STAT_StartFinalPostprocessSettings, STATGROUP_Engine)
 
 DECLARE_CYCLE_STAT (TEXT("OverridePostProcessSettings"), STAT_OverridePostProcessSettings, STATGROUP_Engine)
 
 IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT (View)
 
 IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT (InstancedView)
 
 IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT (FPrimitiveUniformShaderParameters, "Primitive")
 
 IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT (FViewUniformShaderParameters, "View", View)
 
 IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT (FInstancedViewUniformShaderParameters, "InstancedView", InstancedView)
 
 IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT (FMobileDirectionalLightShaderParameters, "MobileDirectionalLight")
 
bool GetHairStrandsDepthOfFieldUseHairDepth ()
 
FString LexToString (EMaterialQualityLevel::Type QualityLevel)
 
FVector4f CreateInvDeviceZToWorldZTransform (const FMatrix &ProjMatrix)
 
void ShadowFreezeCamera::Init (const FViewMatrices &Matrices)
 
void SetupViewRectUniformBufferParameters (FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &BufferSize, const FIntRect &EffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrices, const FSetupViewUniformParametersInputs &Inputs)
 
void SetupCommonViewUniformBufferParameters (FViewUniformShaderParameters &ViewUniformShaderParameters, const FIntPoint &BufferSize, int32 NumMSAASamples, const FIntRect &EffectiveViewRect, const FViewMatrices &InViewMatrices, const FViewMatrices &InPrevViewMatrices, const FSetupViewUniformParametersInputs &Inputs)
 

Variables

float GOrthographicDepthThicknessScale = 0.001
 
float GDefaultUpdateOrthoNearPlane = 0.0f
 
ENGINE_API TGlobalResource< FIdentityPrimitiveUniformBufferGIdentityPrimitiveUniformBuffer
 

Macro Definition Documentation

◆ IF_PP

#define IF_PP (   NAME)    if(Src.bOverride_ ## NAME && Src . NAME)

◆ LERP_PP

#define LERP_PP (   NAME)    if(Src.bOverride_ ## NAME) Dest . NAME = FMath::Lerp(Dest . NAME, Src . NAME, Weight);

◆ SET_PP

#define SET_PP (   NAME)    if(Src.bOverride_ ## NAME) Dest . NAME = Src . NAME;

Function Documentation

◆ CreateInvDeviceZToWorldZTransform()

FVector4f CreateInvDeviceZToWorldZTransform ( const FMatrix ProjMatrix)

Utility function to create the inverse depth projection transform to be used by the shader system.

Parameters
ProjMatrix- used to extract the scene depth ratios
InvertZ- projection calc is affected by inverted device Z
Returns
vector containing the ratios needed to convert from device Z to world Z

◆ DECLARE_CYCLE_STAT() [1/2]

DECLARE_CYCLE_STAT ( TEXT("OverridePostProcessSettings")  ,
STAT_OverridePostProcessSettings  ,
STATGROUP_Engine   
)

◆ DECLARE_CYCLE_STAT() [2/2]

DECLARE_CYCLE_STAT ( TEXT("StartFinalPostprocessSettings")  ,
STAT_StartFinalPostprocessSettings  ,
STATGROUP_Engine   
)

◆ DEFINE_LOG_CATEGORY() [1/5]

DEFINE_LOG_CATEGORY ( LogBufferVisualization  )

◆ DEFINE_LOG_CATEGORY() [2/5]

DEFINE_LOG_CATEGORY ( LogLumenVisualization  )

◆ DEFINE_LOG_CATEGORY() [3/5]

DEFINE_LOG_CATEGORY ( LogMultiView  )

◆ DEFINE_LOG_CATEGORY() [4/5]

DEFINE_LOG_CATEGORY ( LogNaniteVisualization  )

◆ DEFINE_LOG_CATEGORY() [5/5]

DEFINE_LOG_CATEGORY ( LogVirtualShadowMapVisualization  )

◆ GetHairStrandsDepthOfFieldUseHairDepth()

bool GetHairStrandsDepthOfFieldUseHairDepth ( )

◆ IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT() [1/2]

IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT ( FMobileDirectionalLightShaderParameters  ,
"MobileDirectionalLight"   
)

◆ IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT() [2/2]

IMPLEMENT_GLOBAL_SHADER_PARAMETER_STRUCT ( FPrimitiveUniformShaderParameters  ,
"Primitive"   
)

◆ IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT() [1/2]

IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT ( FInstancedViewUniformShaderParameters  ,
"InstancedView"  ,
InstancedView   
)

◆ IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT() [2/2]

IMPLEMENT_STATIC_AND_SHADER_UNIFORM_BUFFER_STRUCT ( FViewUniformShaderParameters  ,
"View"  ,
View   
)

◆ IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT() [1/2]

IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT ( InstancedView  )

◆ IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT() [2/2]

IMPLEMENT_STATIC_UNIFORM_BUFFER_SLOT ( View  )

◆ LexToString()

FString LexToString ( EMaterialQualityLevel::Type  QualityLevel)

◆ SetupCommonViewUniformBufferParameters()

void SetupCommonViewUniformBufferParameters ( FViewUniformShaderParameters ViewUniformShaderParameters,
const FIntPoint BufferSize,
int32  NumMSAASamples,
const FIntRect EffectiveViewRect,
const FViewMatrices InViewMatrices,
const FViewMatrices InPrevViewMatrices,
const FSetupViewUniformParametersInputs Inputs 
)

◆ SetupViewRectUniformBufferParameters()

void SetupViewRectUniformBufferParameters ( FViewUniformShaderParameters ViewUniformShaderParameters,
const FIntPoint BufferSize,
const FIntRect EffectiveViewRect,
const FViewMatrices InViewMatrices,
const FViewMatrices InPrevViewMatrices,
const FSetupViewUniformParametersInputs Inputs 
)

Ortho projection does not use FOV calculations, so rather than sourcing the projection matrix values in CommonViewUniformBuffer.ush, the appropriate values are uploaded in the per view uniform buffer (projection matrix values for perspective, 1.0f for ortho). Doing this here avoids unnecessarily checking for perspective vs ortho in shaders at runtime.

Variable Documentation

◆ GDefaultUpdateOrthoNearPlane

float GDefaultUpdateOrthoNearPlane = 0.0f

◆ GIdentityPrimitiveUniformBuffer

Global primitive uniform buffer resource containing identity transformations.

◆ GOrthographicDepthThicknessScale

float GOrthographicDepthThicknessScale = 0.001