UMaterialFunctionInterface

A Material Function is a collection of material expressions that can be reused in different materials

Windows
MacOS
Linux

Inheritance Hierarchy

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Classes/Materials/MaterialFunctionInterface.h

Include

#include "Materials/MaterialFunctionInterface.h"

Syntax

class UMaterialFunctionInterface : public UObject

Remarks

A Material Function is a collection of material expressions that can be reused in different materials

Variables

Name Description

Public variable

uint32

 

CombinedInputTypes

Public variable

uint32

 

CombinedOutputTypes

Protected variable

EMaterialFuncti...

 

MaterialFunctionUsage

The intended usage of this function, required for material layers.

Public variable

FGuid

 

StateId

Used by materials using this function to know when to recompile.

Public variable

UThumbnailInfo ...

 

ThumbnailInfo

Information for thumbnail rendering

Constructors

Name Description

Public function

UMaterialFunctionInterface

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Virtual Const

void

 

AppendReferencedTextures

(
    TArray< UObject* >& InOutText...
)

Appends textures referenced by the expressions in this function.

Public function Virtual

int32

 

Compile

(
    FMaterialCompiler* Compiler,
    const FFunctionExpressionOutput& O...
)

Public function

void

 

GetAllExpressionsOfType

(
    TArray< ExpressionType* >& Ou...,
    const bool bRecursive
)

Get all expressions of the requested type, recursing through any function expressions in the function

Public function Const

void

 

GetAllParameterInfo

(
    TArray< FMaterialParameterInfo >& ...,
    TArray< FGuid >& OutParameterIds,
    const FMaterialParameterInfo& InBa...
)

Finds the names of all matching type parameters

Public function Virtual

UMaterialFun...

 

GetBaseFunction()

Public function Virtual Const

const UMater...

 

GetBaseFunction()

Public function Virtual Const

void

 

GetDependentFunctions

Returns an array of the functions that this function is dependent on, directly or indirectly.

Public function Virtual Const

const FStrin...

 

GetDescription()

Public function Virtual Const

const TArray...

 

GetFunctionExpressions()

Public function Virtual Const

void

 

GetInputsAndOutputs

(
    TArray< struct FFunctionExpressionI...,
    TArray< struct FFunctionExpressionO...
)

Public function Virtual

EMaterialFun...

 

GetMaterialFunctionUsage()

Public function

bool

 

GetNamedParameterOfType

(
    const FMaterialParameterInfo& Para...,
    ExpressionType*& Parameter,
    UMaterialFunctionInterface*...
)

Finds the first matching parameter by name and type

Public function

bool

 

GetParameterDesc

(
    const FMaterialParameterInfo& Para...,
    FString& OutDesc
)

Finds the first matching parameter's description

Public function

bool

 

GetParameterGroupName

(
    const FMaterialParameterInfo& Para...,
    FName& OutGroup
)

Finds the first matching parameter's group name

Public function

bool

 

GetParameterSortPriority

(
    const FMaterialParameterInfo& Para...,
    int32& OutSortPriority
)

Finds the first matching parameter's group name

Public function Virtual

UMaterialInt...

 

GetPreviewMaterial()

Public function Virtual Const

bool

 

GetReentrantFlag()

Public function

bool

 

HasAnyExpressionsOfType()

Get all expressions of the requested type, recursing through any function expressions in the function

Public function Virtual Const

bool

 

HasFlippedCoordinates()

Checks whether a Material Function is arranged in the old style, with inputs flowing from right to left

Public function Virtual

bool

 

IsDependent

(
    UMaterialFunctionInterface* Ot...
)

Public function Virtual

void

 

LinkIntoCaller

(
    const TArray< FFunctionExpressionIn...
)

Public function Virtual

bool

 

OverrideNamedFontParameter

(
    const FMaterialParameterInfo& Para...,
    UFont*& OutFontValue,
    int32& OutFontPage
)

Public function Virtual

bool

 

OverrideNamedScalarParameter

(
    const FMaterialParameterInfo& Para...,
    float& OutValue
)

Public function Virtual

bool

 

OverrideNamedStaticComponentMaskParameter

(
    const FMaterialParameterInfo& Para...,
    bool& OutR,
    bool& OutG,
    bool& OutB,
    bool& OutA,
    FGuid& OutExpressionGuid
)

Public function Virtual

bool

 

OverrideNamedStaticSwitchParameter

(
    const FMaterialParameterInfo& Para...,
    bool& OutValue,
    FGuid& OutExpressionGuid
)

Public function Virtual

bool

 

OverrideNamedTextureParameter

(
    const FMaterialParameterInfo& Para...,
    UTexture*& OutValue
)

Public function Virtual

bool

 

OverrideNamedVectorParameter

(
    const FMaterialParameterInfo& Para...,
    FLinearColor& OutValue
)

Public function Virtual

void

 

SetReentrantFlag

(
    const bool bIsReentrant
)

Public function Virtual

void

 

UnlinkFromCaller()

Public function Virtual

void

 

UpdateFromFunctionResource()

Public function Virtual

void

 

UpdateInputOutputTypes()

Public function

bool

 

UpdateParameterSet

(
    ParameterType& Parameter
)

Returns if any of the matching parameters have changed

Public function Virtual

bool

 

ValidateFunctionUsage

(
    FMaterialCompiler* Compiler,
    const FFunctionExpressionOutput& O...
)

Overridden from UObject

Name Description

Public function Virtual Const

void

 

GetAssetRegistryTags

(
    TArray< FAssetRegistryTag >& OutTa...
)

Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback