UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
PostProcessAmbientOcclusion.h File Reference
#include "ScreenPass.h"
#include "UniformBuffer.h"
#include "RendererInterface.h"
#include "HZB.h"

Go to the source code of this file.

Classes

class  FGTAOContext
 
class  FSSAOHelper
 
struct  FSSAOCommonParameters
 
struct  FGTAOCommonParameters
 
struct  FGTAOHorizonSearchOutputs
 
struct  FGTAOTemporalOutputs
 

Enumerations

enum class  ESSAOType { EPS , ECS , EAsyncCS }
 
enum class  EGTAOType { EOff , EAsyncCombinedSpatial , EAsyncHorizonSearch , ENonAsync }
 
enum  EGTAOPass {
  EGTAOPass_None = 0x0 , EGTAOPass_HorizonSearch = 0x1 , EGTAOPass_HorizonSearchIntegrate = 0x2 , EGTAOPass_Integrate = 0x4 ,
  EGTAOPass_SpatialFilter = 0x8 , EGTAOPass_TemporalFilter = 0x10 , EGTAOPass_Upsample = 0x20
}
 
enum class  EAOTechnique { SSAO , GTAO }
 

Functions

FRDGTextureDesc GetScreenSpaceAOTextureDesc (ERHIFeatureLevel::Type FeatureLevel, FIntPoint Extent)
 
FRDGTextureRef CreateScreenSpaceAOTexture (FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type FeatureLevel, FIntPoint Extent)
 
FRDGTextureRef GetScreenSpaceAOFallback (const FRDGSystemTextures &SystemTextures)
 
FScreenPassTexture AddAmbientOcclusionSetupPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FSSAOCommonParameters &CommonParameters, FScreenPassTexture Input)
 
FScreenPassTexture AddAmbientOcclusionStepPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FSSAOCommonParameters &CommonParameters, const FScreenPassTexture &Input0, const FScreenPassTexture &Input1, const FScreenPassTexture &Input2)
 
FScreenPassTexture AddAmbientOcclusionFinalPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FSSAOCommonParameters &CommonParameters, const FScreenPassTexture &Input0, const FScreenPassTexture &Input1, const FScreenPassTexture &Input2, FScreenPassRenderTarget FinalOutput)
 
FGTAOHorizonSearchOutputs AddGTAOHorizonSearchPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FGTAOCommonParameters &CommonParameters, FScreenPassTexture SceneDepth, FScreenPassRenderTarget HorizonOutput)
 
FScreenPassTexture AddGTAOInnerIntegratePass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FGTAOCommonParameters &CommonParameters, FScreenPassTexture SceneDepth, FScreenPassTexture HorizonsTexture)
 
FGTAOHorizonSearchOutputs AddGTAOHorizonSearchIntegratePass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FGTAOCommonParameters &CommonParameters, FScreenPassTexture SceneDepth)
 
FGTAOTemporalOutputs AddGTAOTemporalPass (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FGTAOCommonParameters &CommonParameters, FScreenPassTexture Input, FScreenPassTexture SceneDepth, FScreenPassTexture SceneVelocity, FScreenPassTexture HistoryColor, FScreenPassTextureViewport HistoryViewport)
 
FScreenPassTexture AddGTAOSpatialFilter (FRDGBuilder &GraphBuilder, const FViewInfo &View, const FGTAOCommonParameters &CommonParameters, FScreenPassTexture Input, FScreenPassTexture InputDepth, FScreenPassRenderTarget SuggestedOutput=FScreenPassRenderTarget())
 
FScreenPassTexture AddGTAOUpsamplePass (FRDGBuilder &GraphBuilder, const FViewInfo &View, FScreenPassTexture Input, FScreenPassTexture SceneDepth, FScreenPassRenderTarget Output)
 
 END_SHADER_PARAMETER_STRUCT ()
 
FHZBParameters GetHZBParametersForAO (FRDGBuilder &GraphBuilder, const FViewInfo &View, FIntPoint InputTextureSize, EAOTechnique AOTechnique)
 

Enumeration Type Documentation

◆ EAOTechnique

enum class EAOTechnique
strong
Enumerator
SSAO 
GTAO 

◆ EGTAOPass

Enumerator
EGTAOPass_None 
EGTAOPass_HorizonSearch 
EGTAOPass_HorizonSearchIntegrate 
EGTAOPass_Integrate 
EGTAOPass_SpatialFilter 
EGTAOPass_TemporalFilter 
EGTAOPass_Upsample 

◆ EGTAOType

enum class EGTAOType
strong
Enumerator
EOff 
EAsyncCombinedSpatial 
EAsyncHorizonSearch 
ENonAsync 

◆ ESSAOType

enum class ESSAOType
strong
Enumerator
EPS 
ECS 
EAsyncCS 

Function Documentation

◆ AddAmbientOcclusionFinalPass()

FScreenPassTexture AddAmbientOcclusionFinalPass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FSSAOCommonParameters CommonParameters,
const FScreenPassTexture Input0,
const FScreenPassTexture Input1,
const FScreenPassTexture Input2,
FScreenPassRenderTarget  FinalOutput 
)

◆ AddAmbientOcclusionSetupPass()

FScreenPassTexture AddAmbientOcclusionSetupPass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FSSAOCommonParameters CommonParameters,
FScreenPassTexture  Input 
)

◆ AddAmbientOcclusionStepPass()

FScreenPassTexture AddAmbientOcclusionStepPass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FSSAOCommonParameters CommonParameters,
const FScreenPassTexture Input0,
const FScreenPassTexture Input1,
const FScreenPassTexture Input2 
)

◆ AddGTAOHorizonSearchIntegratePass()

FGTAOHorizonSearchOutputs AddGTAOHorizonSearchIntegratePass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FGTAOCommonParameters CommonParameters,
FScreenPassTexture  SceneDepth 
)

◆ AddGTAOHorizonSearchPass()

FGTAOHorizonSearchOutputs AddGTAOHorizonSearchPass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FGTAOCommonParameters CommonParameters,
FScreenPassTexture  SceneDepth,
FScreenPassRenderTarget  HorizonOutput 
)

◆ AddGTAOInnerIntegratePass()

FScreenPassTexture AddGTAOInnerIntegratePass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FGTAOCommonParameters CommonParameters,
FScreenPassTexture  SceneDepth,
FScreenPassTexture  HorizonsTexture 
)

◆ AddGTAOSpatialFilter()

FScreenPassTexture AddGTAOSpatialFilter ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FGTAOCommonParameters CommonParameters,
FScreenPassTexture  Input,
FScreenPassTexture  InputDepth,
FScreenPassRenderTarget  SuggestedOutput = FScreenPassRenderTarget() 
)

◆ AddGTAOTemporalPass()

FGTAOTemporalOutputs AddGTAOTemporalPass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
const FGTAOCommonParameters CommonParameters,
FScreenPassTexture  Input,
FScreenPassTexture  SceneDepth,
FScreenPassTexture  SceneVelocity,
FScreenPassTexture  HistoryColor,
FScreenPassTextureViewport  HistoryViewport 
)

◆ AddGTAOUpsamplePass()

FScreenPassTexture AddGTAOUpsamplePass ( FRDGBuilder GraphBuilder,
const FViewInfo View,
FScreenPassTexture  Input,
FScreenPassTexture  SceneDepth,
FScreenPassRenderTarget  Output 
)

◆ CreateScreenSpaceAOTexture()

FRDGTextureRef CreateScreenSpaceAOTexture ( FRDGBuilder GraphBuilder,
ERHIFeatureLevel::Type  FeatureLevel,
FIntPoint  Extent 
)

◆ END_SHADER_PARAMETER_STRUCT()

END_SHADER_PARAMETER_STRUCT ( )

◆ GetHZBParametersForAO()

FHZBParameters GetHZBParametersForAO ( FRDGBuilder GraphBuilder,
const FViewInfo View,
FIntPoint  InputTextureSize,
EAOTechnique  AOTechnique 
)

◆ GetScreenSpaceAOFallback()

FRDGTextureRef GetScreenSpaceAOFallback ( const FRDGSystemTextures SystemTextures)

◆ GetScreenSpaceAOTextureDesc()

FRDGTextureDesc GetScreenSpaceAOTextureDesc ( ERHIFeatureLevel::Type  FeatureLevel,
FIntPoint  Extent 
)