Navigation
API > API/Runtime > API/Runtime/Engine
Inheritance Hierarchy
- FMaterialCompiler
- FProxyMaterialCompiler
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Public/MaterialCompiler.h |
| Include | #include "MaterialCompiler.h" |
Syntax
class FMaterialCompiler
Remarks
The interface used to translate material expressions into executable code. Note: Most member functions should be pure virtual to force a FProxyMaterialCompiler override!
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| int32 | Abs
(
int32 X |
||
| int32 | AccessCollectionParameter
(
UMaterialParameterCollection* ParameterCollection, |
||
| int32 | ActorWorldPosition
(
EPositionOrigin OriginType |
||
| int32 | |||
| int32 | Add
(
int32 A, |
||
| int32 | AntialiasedTextureMask
(
int32 Tex, |
||
| void | AppendExpressionError
(
UMaterialExpression* Expression, |
||
| int32 | AppendVector
(
int32 A, |
||
| int32 | Arccosine
(
int32 X |
||
| int32 | ArccosineFast
(
int32 X |
||
| int32 | Arcsine
(
int32 X |
||
| int32 | ArcsineFast
(
int32 X |
||
| int32 | Arctangent
(
int32 X |
||
| int32 | Arctangent2
(
int32 Y, |
||
| int32 | Arctangent2Fast
(
int32 Y, |
||
| int32 | ArctangentFast
(
int32 X |
||
| int32 | AtmosphericFogColor
(
int32 WorldPosition |
||
| int32 | |||
| int32 | |||
| int32 | BeginScope () |
Exec. | |
| int32 | |||
| int32 | BeginScope_For
(
const UMaterialExpression* Expression, |
||
| int32 | BeginScope_If
(
int32 Condition |
||
| int32 | BlackBody
(
int32 Temp |
||
| int32 | CallExpression
(
FMaterialExpressionKey ExpressionKey, |
||
| int32 | CallExpressionExec
(
UMaterialExpression* Expression |
||
| int32 | CameraVector () |
||
| int32 | CastShadingModelToFloat
(
int32 Code |
Cast shading model integer to float value | |
| int32 | Ceil
(
int32 X |
||
| int32 | Clamp
(
int32 X, |
||
| int32 | ComponentMask
(
int32 Vector, |
||
| int32 | Constant
(
float X |
||
| int32 | Constant2
(
float X, |
||
| int32 | Constant3
(
float X, |
||
| int32 | Constant4
(
float X, |
||
| int32 | Cosine
(
int32 X |
||
| int32 | Cross
(
int32 A, |
||
| int32 | CustomExpression
(
UMaterialExpressionCustom* Custom, |
||
| int32 | CustomOutput
(
UMaterialExpressionCustomOutput* Custom, |
||
| int32 | CustomPrimitiveData
(
int32 OutputIndex, |
||
| int32 | DBufferTextureLookup
(
int32 ViewportUV, |
||
| int32 | DDX
(
int32 X |
||
| int32 | DDY
(
int32 X |
||
| int32 | DecalColor () |
||
| int32 | |||
| int32 | Material attributes. | ||
| int32 | DeltaTime () |
||
| int32 | DepthOfFieldFunction
(
int32 Depth, |
||
| int32 | |||
| int32 | DistanceFieldApproxAO
(
int32 PositionArg, |
||
| int32 | DistanceFieldGradient
(
int32 PositionArg |
||
| int32 | DistanceToNearestSurface
(
int32 PositionArg |
||
| int32 | Div
(
int32 A, |
||
| int32 | Dot
(
int32 A, |
||
| int32 | DynamicBoolParameter
(
FName ParameterName, |
||
| int32 | DynamicBranch
(
int32 Condition, |
||
| int32 | DynamicParameter
(
FLinearColor& DefaultValue, |
||
| int32 | EndScope () |
||
| int32 | Error
(
const TCHAR* Text |
||
| int32 | Errorf
(
const TCHAR* Format, |
||
| int32 | Exponential
(
int32 X |
||
| int32 | Exponential2
(
int32 X |
||
| int32 | ExternalTexture
(
UTexture* InTexture, |
||
| int32 | ExternalTexture
(
UTexture* DefaultTexture |
||
| int32 | ExternalTexture
(
const FGuid& ExternalTextureGuid |
||
| int32 | ExternalTextureCoordinateOffset
(
int32 TextureReferenceIndex, |
||
| int32 | ExternalTextureCoordinateOffset
(
const FGuid& ExternalTextureGuid |
||
| int32 | ExternalTextureCoordinateScaleRotation
(
int32 TextureReferenceIndex, |
||
| int32 | ExternalTextureCoordinateScaleRotation
(
const FGuid& ExternalTextureGuid |
||
| int32 | ExternalTextureParameter
(
FName ParameterName, |
||
| int32 | ExternalTextureParameter
(
FName ParameterName, |
||
| int32 | |||
| int32 | EyeAdaptationInverse
(
int32 LightValueArg, |
||
| int32 | Floor
(
int32 X |
||
| int32 | Fmod
(
int32 A, |
||
| int32 | ForceCast
(
int32 Code, |
||
| int32 | ForLoopIndex
(
const UMaterialExpression* Expression |
||
| int32 | Frac
(
int32 X |
||
| int32 | GameTime
(
bool bPeriodic, |
||
| int32 | GenericConstant
(
const UE::Shader::FValue& Value |
||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| FMaterialShadingModelField | Get the shading models that were encountered when compiling a material's Shading Model attribute graph. | ||
| EMaterialCompilerType | |||
| int32 | |||
| EShaderFrequency | Gets value stored by SetMaterialProperty() | ||
| ERHIFeatureLevel::Type | |||
| int32 | GetHairAO () |
||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | GetHairColorFromMelanin
(
int32 Melanin, |
||
| int32 | |||
| int32 | GetHairDepth () |
||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | GetHairSeed () |
||
| int32 | GetHairTangent
(
bool bUseTangentSpace |
||
| int32 | GetHairUV () |
||
| int32 | |||
| const FGuid | Gets the current top of the MaterialAttributes property stack. | ||
| const FMaterialLayersFunctions * | |||
| FMaterialShadingModelField | |||
| EMaterialValueType | GetParameterType
(
int32 Index |
||
| FMaterialUniformExpression * | GetParameterUniformExpression
(
int32 Index |
||
| int32 | |||
| EMaterialQualityLevel::Type | |||
| UObject * | GetReferencedTexture
(
int32 Index |
||
| int32 | GetSceneTextureViewSize
(
int32 SceneTextureId, |
||
| EShaderPlatform | |||
| bool | GetStaticBoolValue
(
int32 BoolIndex, |
||
| EStrataMaterialExportContext | |||
| uint8 | |||
| EStrataMaterialExport | |||
| FString | GetStrataSharedLocalBasisIndexMacro
(
const FStrataRegisteredSharedLocalBasis& SharedLocalBasis |
||
| FString | GetStrataSharedLocalBasisIndexMacroInner
(
const FStrataRegisteredSharedLocalBasis& SharedLocalBasis, |
||
| bool | This can be used to know if the strata tree we are trying to build is too deep and we should stop the compilation. | ||
| const ITargetPlatform * | |||
| bool | GetTextureForExpression
(
int32 Index, |
||
| EMaterialValueType | GetType
(
int32 Code |
||
| int32 | |||
| int32 | |||
| int32 | GIReplace
(
int32 Direct, |
||
| int32 | HsvToRgb
(
int32 X |
||
| int32 | If
(
int32 A, |
||
| int32 | InvLerp
(
int32 X, |
||
| bool | The compiler can run in a different state and this affects caching of sub expression, Expressions are different (e.g. View.PrevWorldViewOrigin) when using previous frame's values If possible we should re-factor this to avoid having to deal with compiler state | ||
| bool | IsDevelopmentFeatureEnabled
(
const FName& FeatureName |
||
| bool | |||
| bool | IsMaterialPropertyUsed
(
EMaterialProperty Property, |
||
| bool | |||
| int32 | |||
| bool | |||
| bool | |||
| int32 | Length
(
int32 X |
||
| int32 | Lerp
(
int32 X, |
||
| int32 | LightmapUVs () |
||
| int32 | LightmassReplace
(
int32 Realtime, |
||
| int32 | LightVector () |
||
| int32 | Logarithm
(
int32 X |
||
| int32 | Logarithm10
(
int32 X |
||
| int32 | Logarithm2
(
int32 X |
||
| int32 | MapARPassthroughCameraUV
(
int32 UV |
||
| int32 | |||
| int32 | Max
(
int32 A, |
||
| int32 | Min
(
int32 A, |
||
| int32 | Mul
(
int32 A, |
||
| int32 | NaniteReplace
(
int32 Default, |
||
| int32 | Noise
(
int32 Position, |
||
| int32 | Normalize
(
int32 X |
||
| int32 | NumericParameter
(
EMaterialParameterType ParameterType, |
||
| int32 |
ObjectBounds ()
|
||
| int32 |
ObjectLocalBounds
(
int32 OutputIndex |
||
| int32 | |||
| int32 |
ObjectRadius ()
|
||
| int32 |
ObjectWorldPosition
(
EPositionOrigin OriginType |
||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | ParticlePosition
(
EPositionOrigin OriginType |
||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | |||
| int32 | ParticleSize () |
||
| int32 | |||
| int32 | |||
| int32 | ParticleSubUV
(
int32 TextureIndex, |
||
| int32 | ParticleSubUVProperty
(
int32 PropertyIndex |
||
| int32 | PathTracingBufferTextureLookup
(
int32 ViewportUV, |
||
| int32 | PathTracingQualitySwitchReplace
(
int32 Normal, |
||
| int32 | PathTracingRayTypeSwitch
(
int32 Main, |
||
| int32 | PerInstanceCustomData
(
int32 DataIndex, |
||
| int32 | PerInstanceCustomData3Vector
(
int32 DataIndex, |
||
| int32 | |||
| int32 | |||
| int32 | PeriodicHint
(
int32 PeriodicCode |
||
| int32 | PixelDepth () |
||
| int32 | |||
| FMaterialFunctionCompileState * | PopFunction () |
Pops a function from the compiler's function stack, which indicates that compilation is leaving a function. | |
| FGuid | Pops a MaterialAttributes property off the stack. | ||
| FMaterialParameterInfo | Pops a parameter owner off the stack. | ||
| int32 | Power
(
int32 Base, |
||
| int32 | |||
| int32 | PreSkinnedLocalBounds
(
int32 OutputIndex |
||
| int32 | |||
| int32 | |||
| void | PushFunction
(
FMaterialFunctionCompileState* FunctionState |
Pushes a function onto the compiler's function stack, which indicates that compilation is entering a function. | |
| void | PushMaterialAttribute
(
const FGuid& InAttributeID |
Pushes a material attributes property onto the stack. | |
| void | PushParameterOwner
(
const FMaterialParameterInfo& InOwnerInfo |
Pushes a parameter owner onto the stack. | |
| int32 | RayTracingQualitySwitchReplace
(
int32 Normal, |
||
| int32 | RealTime
(
bool bPeriodic, |
||
| int32 | ReflectionAboutCustomWorldNormal
(
int32 CustomWorldNormal, |
||
| int32 | ReflectionCapturePassSwitch
(
int32 Default, |
||
| int32 | |||
| int32 | ReturnMaterialAttributes
(
int32 MaterialAttributes |
||
| int32 | RgbToHsv
(
int32 X |
||
| int32 | RotateAboutAxis
(
int32 NormalizedRotationAxisAndAngleIndex, |
||
| int32 | RotateScaleOffsetTexCoords
(
int32 TexCoordCodeIndex, |
||
| int32 | Round
(
int32 X |
||
| int32 | SamplePhysicsField
(
int32 PositionArg, |
||
| int32 | Saturate
(
int32 X |
||
| int32 | ScalarParameter
(
FName ParameterName, |
||
| int32 | SceneColor
(
int32 Offset, |
||
| int32 | SceneDepth
(
int32 Offset, |
||
| int32 | SceneDepthWithoutWater
(
int32 Offset, |
Water. | |
| int32 | SceneTextureLookup
(
int32 ViewportUV, |
||
| void | SetBaseMaterialAttribute
(
const FGuid& InAttributeID |
Sets the bottom MaterialAttributes property of the stack. | |
| int32 | |||
| int32 | SetMaterialAttribute
(
int32 MaterialAttributes, |
||
| void | SetMaterialProperty
(
EMaterialProperty InProperty, |
Sets internal state CurrentShaderFrequency | |
| void | SetStrataMaterialExportType
(
EStrataMaterialExport InStrataMaterialExport, |
||
| int32 | ShadingModel
(
EMaterialShadingModel InSelectedShadingModel |
||
| int32 | ShadowReplace
(
int32 Default, |
||
| int32 | Sign
(
int32 X |
||
| int32 | Sine
(
int32 X |
||
| int32 | SkyAtmosphereAerialPerspective
(
int32 WorldPosition |
||
| int32 | |||
| int32 | SkyAtmosphereLightDirection
(
int32 LightIndex |
||
| int32 | SkyAtmosphereLightDiskLuminance
(
int32 LightIndex, |
||
| int32 | SkyAtmosphereLightIlluminance
(
int32 WorldPosition, |
||
| int32 | |||
| int32 | SkyLightEnvMapSample
(
int32 DirectionCodeChunk, |
||
| int32 | SmoothStep
(
int32 X, |
||
| int32 | Sobol
(
int32 Cell, |
||
| int32 | SparseVolumeTexture
(
USparseVolumeTexture* Texture, |
Could be called sub texture and used to support multiple texture samples from a single node? Making it clear for now and setting explicitly a USparseVolumeTexture as object. | |
| int32 | SparseVolumeTexture
(
USparseVolumeTexture* Texture, |
||
| int32 | SparseVolumeTextureParameter
(
FName ParameterName, |
Register a parameterized sparse volume texture to be sampled. | |
| int32 | SparseVolumeTextureSamplePageTable
(
int32 SparseVolumeTextureIndex, |
Sample a sparse volume texture page table. | |
| int32 | SparseVolumeTextureSamplePhysicalTileData
(
int32 SparseVolumeTextureIndex, |
Sample a sparse volume texture physical tile data texture. | |
| int32 | SparseVolumeTextureUniform
(
int32 TextureIndex, |
Register a uniform parameter required to be able to sample a sparse volume texture. | |
| int32 | SparseVolumeTextureUniformParameter
(
FName ParameterName, |
Register a uniform parameter required to be able to sample a parameterizes sparse volume texture. | |
| int32 | SpeedTree
(
int32 GeometryArg, |
||
| int32 | SphericalParticleOpacity
(
int32 Density |
||
| int32 | SquareRoot
(
int32 X |
||
| int32 | StaticBool
(
bool Value |
||
| int32 | StaticBoolParameter
(
FName ParameterName, |
||
| int32 | StaticComponentMask
(
int32 Vector, |
||
| int32 | StaticTerrainLayerWeight
(
FName ParameterName, |
||
| int32 | Step
(
int32 Y, |
||
| int32 | StrataAdd
(
int32 A, |
||
| int32 | StrataAddParameterBlending
(
int32 A, |
||
| int32 | StrataAddParameterBlendingBSDFCoverageToNormalMixCodeChunk
(
int32 ACodeChunk, |
||
| FStrataOperator & | StrataCompilationGetOperator
(
FGuid StrataExpressionGuid |
Return the operator information for a given expression. | |
| FStrataOperator * | StrataCompilationGetOperatorFromIndex
(
int32 OperatorIndex |
Return the operator information for a given index. | |
| FStrataRegisteredSharedLocalBasis | StrataCompilationInfoRegisterSharedLocalBasis
(
int32 NormalCodeChunk |
||
| FStrataRegisteredSharedLocalBasis | StrataCompilationInfoRegisterSharedLocalBasis
(
int32 NormalCodeChunk, |
||
| FStrataOperator & | StrataCompilationRegisterOperator
(
int32 OperatorType, |
Register an operator of the tree representation the Strata material and its topology. | |
| int32 | StrataCompilePreview
(
int32 StrataDataCodeChunk |
||
| int32 | StrataConversionFromLegacy
(
bool bHasDynamicShadingModels, |
||
| int32 | Strata. | ||
| int32 | StrataEyeBSDF
(
int32 DiffuseAlbedo, |
||
| int32 | StrataHairBSDF
(
int32 BaseColor, |
||
| int32 | StrataHazinessToSecondaryRoughness
(
int32 BaseRoughness, |
||
| int32 | StrataHorizontalMixing
(
int32 Background, |
||
| int32 | StrataHorizontalMixingParameterBlending
(
int32 Background, |
||
| int32 | StrataHorizontalMixingParameterBlendingBSDFCoverageToNormalMixCodeChunk
(
int32 BackgroundCodeChunk, |
||
| int32 | StrataMetalnessToDiffuseAlbedoF0
(
int32 BaseColor, |
||
| int32 | StrataSingleLayerWaterBSDF
(
int32 BaseColor, |
||
| bool | This is dedicated to skip evaluating any opacity input when a material instance toggles the translucent blend mode to opaque. | ||
| int32 | StrataSlabBSDF
(
int32 DiffuseAlbedo, |
||
| int32 | StrataThicknessStackGetThicknessCode
(
int32 Index |
||
| int32 | |||
| void | |||
| int32 | StrataThicknessStackPush
(
UMaterialExpression* Expression, |
||
| int32 | StrataThinFilm
(
int32 NormalCodeChunk, |
||
| int32 | StrataTransmittanceToMFP
(
int32 TransmittanceColor, |
||
| FGuid | Returns the unique id of the strata tree path for the parent node of the current node position. | ||
| FGuid | Returns the unique id of the strata tree path, identifying the current node we have reached. | ||
| void | Pops a node node of the Strata tree being walked. | ||
| FGuid | StrataTreeStackPush
(
UMaterialExpression* Expression, |
Pushes a node of the Strata tree being walked. | |
| int32 | StrataUnlitBSDF
(
int32 EmissiveColor, |
||
| int32 | StrataVerticalLayering
(
int32 Top, |
||
| int32 | StrataVerticalLayeringParameterBlending
(
int32 Top, |
||
| int32 | StrataVerticalLayeringParameterBlendingBSDFCoverageToNormalMixCodeChunk
(
int32 TopCodeChunk |
||
| int32 | StrataVolumetricFogCloudBSDF
(
int32 Albedo, |
||
| int32 | StrataWeight
(
int32 A, |
||
| int32 | StrataWeightParameterBlending
(
int32 A, |
||
| int32 | Sub
(
int32 A, |
||
| int32 | |||
| int32 | Tangent
(
int32 X |
||
| int32 | TemporalSobol
(
int32 Index, |
||
| int32 | |||
| int32 | |||
| int32 | TextureCoordinate
(
uint32 CoordinateIndex, |
||
| int32 | TextureDecalDerivative
(
bool bDDY |
||
| int32 | TextureDecalMipmapLevel
(
int32 TextureSizeInput |
||
| int32 | TextureParameter
(
FName ParameterName, |
||
| int32 | TextureParameter
(
FName ParameterName, |
||
| int32 | TextureProperty
(
int32 InTexture, |
||
| int32 | TextureSample
(
int32 Texture, |
||
| int32 | TransformNormalFromRequestedBasisToWorld
(
int32 NormalCodeChunk |
||
| int32 | TransformPosition
(
EMaterialCommonBasis SourceCoordBasis, |
||
| int32 | TransformVector
(
EMaterialCommonBasis SourceCoordBasis, |
||
| int32 | Truncate
(
int32 X |
||
| int32 | TruncateLWC
(
int32 Code |
||
| int32 | TwoSidedSign () |
||
| int32 | ValidCast
(
int32 Code, |
Casts the passed in code to DestType, or generates a compile error if the cast is not valid. | |
| int32 | VectorNoise
(
int32 Position, |
||
| int32 | VectorParameter
(
FName ParameterName, |
||
| int32 | VertexColor () |
||
| int32 | VertexInterpolator
(
uint32 InterpolatorIndex |
||
| int32 | VertexNormal () |
||
| int32 | |||
| int32 | ViewProperty
(
EMaterialExposedViewProperty Property, |
||
| int32 | VirtualTexture
(
URuntimeVirtualTexture* InTexture, |
||
| int32 | VirtualTexture
(
URuntimeVirtualTexture* InTexture, |
||
| int32 | VirtualTextureOutput
(
uint8 AttributeMask |
||
| int32 | VirtualTextureOutputReplace
(
int32 Default, |
||
| int32 | VirtualTextureParameter
(
FName ParameterName, |
||
| int32 | VirtualTextureParameter
(
FName ParameterName, |
||
| int32 | VirtualTextureUniform
(
int32 TextureIndex, |
||
| int32 | VirtualTextureUniform
(
FName ParameterName, |
||
| int32 | VirtualTextureUnpack
(
int32 CodeIndex0, |
||
| int32 | VirtualTextureWorldToUV
(
int32 WorldPositionIndex, |
||
| int32 | WorldPosition
(
EWorldPositionIncludedOffsets WorldPositionIncludedOffsets |