Navigation
API > API/Runtime > API/Runtime/Engine
A Material Function is a collection of material expressions that can be reused in different materials
| Name | UMaterialFunctionInterface |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/Materials/MaterialFunctionInterface.h |
| Include Path | #include "Materials/MaterialFunctionInterface.h" |
Syntax
UCLASS (BlueprintType, Abstract, HideCategories=object, MinimalAPI)
class UMaterialFunctionInterface : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMaterialFunctionInterface
Derived Classes
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| CombinedInputTypes | uint64 | Materials/MaterialFunctionInterface.h |
|
|
| CombinedOutputTypes | uint64 | Materials/MaterialFunctionInterface.h |
|
|
| StateId | FGuid | Used by materials using this function to know when to recompile. | Materials/MaterialFunctionInterface.h | |
| ThumbnailInfo | TObjectPtr< class UThumbnailInfo > | Information for thumbnail rendering | Materials/MaterialFunctionInterface.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual int32 Compile
(
FMaterialCompiler* Compiler, |
Materials/MaterialFunctionInterface.h | ||
virtual void ForceRecompileForRendering
(
FMaterialUpdateContext& UpdateContext, |
Materials/MaterialFunctionInterface.h | ||
void GetAllExpressionsOfType
(
TArray< ExpressionType* >& OutExpressions, |
Get all expressions of the requested type, recursing through any function expressions in the function | Materials/MaterialFunctionInterface.h | |
virtual const UMaterialFunction * GetBaseFunction
(
FMFRecursionGuard RecursionGuard |
Materials/MaterialFunctionInterface.h | ||
virtual UMaterialFunction * GetBaseFunction
(
FMFRecursionGuard RecursionGuard |
Materials/MaterialFunctionInterface.h | ||
| Materials/MaterialFunctionInterface.h | |||
| Returns GetBaseFunction() as a UMaterialFunctionInterface, useful if MaterialFunction.h hasn't been included yet, and implicit conversion to UMaterialInterface isn't availiable | Materials/MaterialFunctionInterface.h | ||
virtual void GetDependentFunctions
(
TArray< UMaterialFunctionInterface* >& DependentFunctions |
Returns an array of the functions that this function is dependent on, directly or indirectly. | Materials/MaterialFunctionInterface.h | |
const FString & GetDescription() |
Materials/MaterialFunctionInterface.h | ||
| Materials/MaterialFunctionInterface.h | |||
| Materials/MaterialFunctionInterface.h | |||
TConstArrayView< TObjectPtr< UMaterialExpression > > GetExpressions() |
Materials/MaterialFunctionInterface.h | ||
virtual void GetInputsAndOutputs
(
TArray< struct FFunctionExpressionInput >& OutInputs, |
Materials/MaterialFunctionInterface.h | ||
virtual EMaterialFunctionUsage GetMaterialFunctionUsage() |
Materials/MaterialFunctionInterface.h | ||
bool GetNamedParameterOfType
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Finds the first matching parameter by name and type | Materials/MaterialFunctionInterface.h | |
virtual bool GetParameterOverrideValue
(
EMaterialParameterType Type, |
Materials/MaterialFunctionInterface.h | ||
virtual UMaterialInterface * GetPreviewMaterial() |
Materials/MaterialFunctionInterface.h | ||
bool GetReentrantFlag() |
Materials/MaterialFunctionInterface.h | ||
virtual FString GetUserExposedCaption () |
Returns If returns an empty string, use the default class name for the material function. | Materials/MaterialFunctionInterface.h | |
bool HasAnyExpressionsOfType() |
Get all expressions of the requested type, recursing through any function expressions in the function | Materials/MaterialFunctionInterface.h | |
virtual bool HasFlippedCoordinates() |
Checks whether a Material Function is arranged in the old style, with inputs flowing from right to left | Materials/MaterialFunctionInterface.h | |
virtual bool IsDependent
(
UMaterialFunctionInterface* OtherFunction |
Materials/MaterialFunctionInterface.h | ||
virtual bool IsUsingNewHLSLGenerator() |
Materials/MaterialFunctionInterface.h | ||
virtual bool IterateDependentFunctions
(
TFunctionRef< bool(UMaterialFunctionInterface*)> Predicate |
Iterates all functions that this function is dependent on, directly or indrectly. | Materials/MaterialFunctionInterface.h | |
virtual void LinkIntoCaller
(
const TArray< FFunctionExpressionInput >& CallerInputs |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedFontParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedParameterCollectionParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedRuntimeVirtualTextureParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedScalarParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedSparseVolumeTextureParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedStaticComponentMaskParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedStaticSwitchParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedTextureCollectionParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedTextureParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
bool OverrideNamedVectorParameter
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialFunctionInterface.h | ||
void SetReentrantFlag
(
bool bIsReentrant |
Materials/MaterialFunctionInterface.h | ||
virtual void UnlinkFromCaller() |
Materials/MaterialFunctionInterface.h | ||
virtual void UpdateFromFunctionResource() |
Materials/MaterialFunctionInterface.h | ||
virtual void UpdateInputOutputTypes() |
Materials/MaterialFunctionInterface.h | ||
bool UpdateParameterSet
(
ParameterType& Parameter |
Returns if any of the matching parameters have changed | Materials/MaterialFunctionInterface.h | |
virtual bool ValidateFunctionUsage
(
FMaterialCompiler* Compiler, |
Materials/MaterialFunctionInterface.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void GetAssetRegistryTags
(
FAssetRegistryTagsContext Context |
Materials/MaterialFunctionInterface.h | ||
virtual void PostDuplicate
(
bool bDuplicateForPIE |
Materials/MaterialFunctionInterface.h | ||
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Materials/MaterialFunctionInterface.h | ||
virtual void PostInitProperties() |
Materials/MaterialFunctionInterface.h | ||
virtual void PostLoad() |
Materials/MaterialFunctionInterface.h | ||
virtual bool Rename
(
const TCHAR* NewName, |
Materials/MaterialFunctionInterface.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual const UClass * GetEditorOnlyDataClass() |
Materials/MaterialFunctionInterface.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void DeclareConstructClasses
(
TArray< FTopLevelAssetPath >& OutConstructClasses, |
Materials/MaterialFunctionInterface.h |