UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
DecalRenderingCommon.h File Reference
#include "CoreMinimal.h"
#include "Materials/Material.h"
#include "RenderUtils.h"
#include "MeshPassProcessor.h"

Go to the source code of this file.

Classes

union  FDecalBlendDesc
 

Namespaces

namespace  DecalRendering
 

Enumerations

enum class  EDecalRenderStage : uint8 {
  None = 0 , BeforeBasePass = 1 , BeforeLighting = 2 , Mobile = 3 ,
  MobileBeforeLighting = 4 , Emissive = 5 , AmbientOcclusion = 6 , Num
}
 
enum class  EDecalRenderTargetMode : uint8 {
  None = 0 , DBuffer = 1 , SceneColorAndGBuffer = 2 , SceneColorAndGBufferNoNormal = 3 ,
  SceneColor = 4 , AmbientOcclusion = 5 , Num
}
 
enum class  EDecalRasterizerState : uint8 { Undefined , CCW , CW }
 

Functions

FDecalBlendDesc DecalRendering::ComputeDecalBlendDesc (EShaderPlatform Platform, const FMaterial &Material)
 
FDecalBlendDesc DecalRendering::ComputeDecalBlendDesc (EShaderPlatform Platform, FMaterialShaderParameters const &MaterialShaderParameters)
 
bool DecalRendering::IsCompatibleWithRenderStage (FDecalBlendDesc DecalBlendDesc, EDecalRenderStage DecalRenderStage)
 
EDecalRenderStage DecalRendering::GetRenderStage (EDecalRenderTargetMode RenderTargetMode, EShadingPath ShadingPath)
 
EDecalRenderStage DecalRendering::GetBaseRenderStage (FDecalBlendDesc DecalBlendDesc)
 
EDecalRenderTargetMode DecalRendering::GetRenderTargetMode (FDecalBlendDesc DecalBlendDesc, EDecalRenderStage DecalRenderStage)
 
uint8 DecalRendering::GetDecalRenderTargetModeMask (const FMaterial &Material, ERHIFeatureLevel::Type FeatureLevel)
 
bool DecalRendering::IsCompatibleWithRenderTargetMode (uint8 DecalRenderTargetModeMask, EDecalRenderTargetMode DecalRenderTargetMode)
 
EMeshPass::Type DecalRendering::GetMeshPassType (EDecalRenderTargetMode RenderTargetMode)
 
uint32 DecalRendering::GetRenderTargetCount (FDecalBlendDesc DecalBlendDesc, EDecalRenderTargetMode RenderTargetMode)
 
uint32 DecalRendering::GetRenderTargetWriteMask (FDecalBlendDesc DecalBlendDesc, EDecalRenderStage DecalRenderStage, EDecalRenderTargetMode RenderTargetMode)
 
FRHIBlendStateDecalRendering::GetDecalBlendState (FDecalBlendDesc DecalBlendDesc, EDecalRenderStage DecalRenderStage, EDecalRenderTargetMode RenderTargetMode)
 
EDecalRasterizerState DecalRendering::GetDecalRasterizerState (bool bInsideDecal, bool bIsInverted, bool ViewReverseCulling)
 
FRHIRasterizerStateDecalRendering::GetDecalRasterizerState (EDecalRasterizerState DecalRasterizerState)
 
void DecalRendering::ModifyCompilationEnvironment (EShaderPlatform Platform, FDecalBlendDesc DecalBlendDesc, EDecalRenderStage DecalRenderStage, FShaderCompilerEnvironment &OutEnvironment)
 

Enumeration Type Documentation

◆ EDecalRasterizerState

Enumeration of decal rasterization states.

Enumerator
Undefined 
CCW 
CW 

◆ EDecalRenderStage

enum class EDecalRenderStage : uint8
strong

Enumeration of the points in the frame for decal rendering.

Enumerator
None 
BeforeBasePass 
BeforeLighting 
Mobile 
MobileBeforeLighting 
Emissive 
AmbientOcclusion 
Num 

◆ EDecalRenderTargetMode

Enumeration of the render target layouts for decal rendering.

Enumerator
None 
DBuffer 
SceneColorAndGBuffer 
SceneColorAndGBufferNoNormal 
SceneColor 
AmbientOcclusion 
Num