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

Go to the source code of this file.

Classes

struct  FTransformParameters
 
class  FMaterialCompiler
 
class  FProxyMaterialCompiler
 
class  FScopedMaterialCompilerAttribute
 

Namespaces

namespace  UE
 
namespace  UE::Shader
 

Enumerations

enum  EMaterialForceCastFlags { MFCF_ForceCast = 1<<0 , MFCF_ExactMatch = 1<<2 , MFCF_ReplicateValue = 1<<3 }
 
enum class  EMaterialCompilerType { Standard , Lightmass , MaterialProxy }
 
enum  ESubstrateMaterialExport : uint8 {
  SME_None = 0 , SME_BaseColorPostCoverage = 1 , SME_BaseColor = 2 , SME_Normal = 3 ,
  SME_Emissive = 4 , SME_Specular = 5 , SME_Roughness = 6 , SME_Anisotropy = 7 ,
  SME_Metallic = 8 , SME_Transmittance = 9 , SME_Opacity = 10 , SME_OpacityMask = 11 ,
  SME_CustomData0 = 12 , SME_CustomData1 = 13 , SME_SubsurfaceColor = 14 , SME_Tangent = 15 ,
  SME_ShadingModel = 16 , SME_MaterialPreview = 17
}
 
enum  ESubstrateMaterialExportContext : uint8 { SMEC_Opaque = 0 , SMEC_Translucent = 1 }
 
enum class  EMaterialCustomOutputFlags : uint8 { None = 0u , AllowAttributeConnection = (1u << 0) }
 

Functions

 ENUM_CLASS_FLAGS (EMaterialCustomOutputFlags)
 

Enumeration Type Documentation

◆ EMaterialCompilerType

What type of compiler is this? Used by material expressions that select input based on compile context

Enumerator
Standard 
Lightmass 

Standard HLSL translator

MaterialProxy 

Lightmass proxy compiler

◆ EMaterialCustomOutputFlags

Enumerator
None 
AllowAttributeConnection 

◆ EMaterialForceCastFlags

Enumerator
MFCF_ForceCast 
MFCF_ExactMatch 
MFCF_ReplicateValue 

◆ ESubstrateMaterialExport

Whether we need some data export from a Substrate material from spatially varying properties, e.g. diffuse color for Lighmass to generate lightmaps.

Enumerator
SME_None 
SME_BaseColorPostCoverage 
SME_BaseColor 
SME_Normal 
SME_Emissive 
SME_Specular 
SME_Roughness 
SME_Anisotropy 
SME_Metallic 
SME_Transmittance 
SME_Opacity 
SME_OpacityMask 
SME_CustomData0 
SME_CustomData1 
SME_SubsurfaceColor 
SME_Tangent 
SME_ShadingModel 
SME_MaterialPreview 

◆ ESubstrateMaterialExportContext

Exported materials are all opaque unlit. This is used to give some context to the export logic.

Enumerator
SMEC_Opaque 
SMEC_Translucent 

Function Documentation

◆ ENUM_CLASS_FLAGS()

ENUM_CLASS_FLAGS ( EMaterialCustomOutputFlags  )