Language:
Discover
By Skill Level
By Category

UMaterialInterface

Choose your OS:

Inheritance Hierarchy

Syntax

class UMaterialInterface :
    public UObject ,
    public IBlendableInterface

Variables

Name Description

Protected variable

bool

 

bTextureStreamingDataSorted

Because of redirector, the texture names need to be resorted at each load in case they changed.

Protected variable

FLightmassMater ...

 

LightmassSettings

The Lightmass settings for this object.

Public variable

FRenderCommandF ...

 

ParentRefFence

A fence to track when the primitive is no longer used as a parent

Public variable

FSoftObjectPath

 

PreviewMesh

The mesh used by the material editor to preview the material.

Public variable

USubsurfaceProf ...

 

SubsurfaceProfile

SubsurfaceProfile, for Screen Space Subsurface Scattering

Protected variable

TArray < FMateri ...

 

TextureStreamingData

Data used by the texture streaming to know how each texture is sampled by the material.

Protected variable

int32

 

TextureStreamingDataVersion

Public variable

UThumbnailInfo ...

 

ThumbnailInfo

Information for thumbnail rendering

Constructors

Name Description

Public function

UMaterialInterface

(
    const FObjectInitializer & ObjectIn...
)

Functions

Name Description

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

AnalyzeMaterialProperty

(
    EMaterialProperty InProperty,
    int32 & OutNumTextureCoordinates,
    bool& bOutRequiresVertexData
)

WITH_EDITOR.

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

AssertDefaultMaterialsExist()

Asserts if any default material does not exist.

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

AssertDefaultMaterialsPostLoaded()

Asserts if any default material has not been post-loaded.

Public function Virtual

bool

 

CheckMaterialUsage

(
    const EMaterialUsage Usage
)

Checks if the material can be used with the given usage flag.

Public function Virtual

bool

 

CheckMaterialUsage_Concurrent

(
    const EMaterialUsage Usage
)

Same as above but is valid to call from any thread.

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)in ...

 

CompileProperty

(
    FMaterialCompiler * Compiler,
    EMaterialProperty Property,
    uint32 ForceCastFlags
)

Compiles a material property.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)in ...

 

CompilePropertyEx

(
    FMaterialCompiler * Compiler,
    const FGuid & AttributeID
)

Allows material properties to be compiled with the option of being overridden by the material attributes input.

Protected function

bool

 

FindTextureStreamingDataIndexRange

(
    FName TextureName,
    int32 & LowerIndex,
    int32 & HigherIndex
)

Find entries within TextureStreamingData that match the given name.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

ForceRecompileForRendering()

Clears the shader cache and recompiles the shader for rendering.

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)UM ...

 

GetBaseMaterial()

Walks up parent chain and finds the base Material that this is an instance of.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)EB ...

 

GetBlendMode()

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetCastDynamicShadowAsMasked()

Public function Virtual

bool

 

GetCastShadowAsMasked()

The bCastShadowAsMasked value for this material.

Public function Virtual

float

 

GetDiffuseBoost()

The Diffuse boost value for this material.

Public function Virtual

float

 

GetEmissiveBoost()

The Emissive boost value for this material.

Public function Virtual

float

 

GetExportResolutionScale()

The ExportResolutionScale value for this material.

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)ui ...

 

GetFeatureLevelsToCompileForAllMaterials()

WITH_EDITOR.

Protected function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)ui ...

 

GetFeatureLevelsToCompileForRendering()

Returns a bitfield indicating which feature levels should be compiled for rendering.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetFontParameterValue

(
    FName ParameterName,
    UFont *& OutFontValue,
    int32 & OutFontPage
)

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetGroupName

(
    FName ParameterName,
    FName & GroupName
)

Public function Virtual

bool

 

GetGroupSortPriority

(
    const FString & InGroupName,
    int32 & OutSortPriority
)

Get the sort priority index of the given parameter group

True if successful

Public function

int32

 

GetHeight()

Public function

const FGuid ...

 

GetLightingGuid()

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

GetLightingGuidChain

(
    bool bIncludeTextures,
    TArray < FGuid >& OutGuids
)

WITH_EDITOR.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetLinearColorCurveParameterValue

(
    FName ParameterName,
    FInterpCurveLinearColor & OutValue
)

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetLinearColorParameterValue

(
    FName ParameterName,
    FLinearColor & OutValue
)

Public function Virtual

const UMater ...

 

GetMaterial()

Get the material which we are instancing.

Public function Virtual

UMaterial &#...

 

GetMaterial()

Get the material which we are instancing.

Public function Virtual

const UMater ...

 

GetMaterial_Concurrent

(
    TMicRecursionGuard & RecursionGuard
)

Public function Virtual

FMaterialRes ...

 

GetMaterialResource

(
    ERHIFeatureLevel::Type InFeatureLev...,
    EMaterialQualityLevel::Type Quality...
)

Get the static permutation resource if the instance has one

Public function Virtual

const FMater ...

 

GetMaterialResource

(
    ERHIFeatureLevel::Type InFeatureLev...,
    EMaterialQualityLevel::Type Quality...
)

Get the static permutation resource if the instance has one

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) f...

 

GetOpacityMaskClipValue()

Access to overridable properties of the base material.

Public function

bool

 

GetOverrideCastShadowAsMasked()

The override bOverrideCastShadowAsMasked setting of the material.

Public function

bool

 

GetOverrideDiffuseBoost()

The override diffuse boost setting of the material.

Public function

bool

 

GetOverrideEmissiveBoost()

The override emissive boost setting of the material.

Public function

bool

 

GetOverrideExportResolutionScale()

The override export resolution scale setting of the material.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetParameterDesc

(
    FName ParameterName,
    FString & OutDesc
)

Public function Virtual

bool

 

GetParameterSortPriority

(
    FName ParameterName,
    int32 & OutSortPriority
)

Get the sort priority index of the given parameter

True if successful

Public function Virtual

UPhysicalMat ...

 

GetPhysicalMaterial()

Return a pointer to the physical material used by this material instance.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetRefractionSettings

(
    float& OutBiasValue
)

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)FM ...

 

GetRelevance

(
    ERHIFeatureLevel::Type InFeatureLev...
)

The material's relevance.

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)FM ...

 

GetRelevance_Concurrent

(
    ERHIFeatureLevel::Type InFeatureLev...
)

The material's relevance, from concurrent render thread updates.

Public function Virtual

FMaterialRen ...

 

GetRenderProxy

(
    bool Selected,
    bool bHovered
)

Return a pointer to the FMaterialRenderProxy used for rendering.

Public function Static

UEnum *

 

GetSamplerTypeEnum()

Access the cached uenum type information for material sampler type

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetScalarCurveParameterValue

(
    FName ParameterName,
    FInterpCurveFloat & OutValue
)

Public function Virtual

float

 

GetScalarParameterDefault

(
    FName ParameterName,
    ERHIFeatureLevel::Type FeatureLevel
)

Returns default value of the given parameter

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetScalarParameterValue

(
    FName ParameterName,
    float& OutValue
)

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)EM ...

 

GetShadingModel()

Public function Virtual

bool

 

GetStaticComponentMaskParameterValue

(
    FName ParameterName,
    bool& R,
    bool& G,
    bool& B,
    bool& A,
    FGuid & OutExpressionGuid
)

Get the value of the given static component mask parameter

True if successful

Public function Virtual

bool

 

GetStaticSwitchParameterValue

(
    FName ParameterName,
    bool& OutValue,
    FGuid & OutExpressionGuid
)

Get the value of the given static switch parameter

True if successful

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API)US ...

 

GetSubsurfaceProfile_Internal()

Public function Virtual

bool

 

GetTerrainLayerWeightParameterValue

(
    FName ParameterName,
    int32 & OutWeightmapIndex,
    FGuid & OutExpressionGuid
)

Get the weightmap index of the given terrain layer weight parameter

True if successful

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) f...

 

GetTextureDensity

(
    FName TextureName,
    const FMeshUVChannelInfo & UVChanne...
)

Returns the density of a texture in (LocalSpace Unit / Texture).

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetTextureParameterOverrideValue

(
    FName ParameterName,
    UTexture *& OutValue
)

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetTextureParameterValue

(
    FName ParameterName,
    UTexture *& OutValue
)

Public function Virtual

bool

 

GetTexturesInPropertyChain

(
    EMaterialProperty InProperty,
    TArray < UTexture * >& OutTextu...,
    TArray < FName >* OutTexturePar...,
    FStaticParameterSet * InStaticP...
)

Get all of the textures in the expression chain for the given property (ie fill in the given array with all textures in the chain).

Public function

const TArray ...

 

GetTextureStreamingData()

Accessor to the data.

Public function Virtual

void

 

GetUsedTextures

(
    TArray < UTexture * >& OutTextu...,
    EMaterialQualityLevel::Type Quality...,
    bool bAllQualityLevels,
    ERHIFeatureLevel::Type FeatureLevel,
    bool bAllFeatureLevels
)

Return the textures used to render this material.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

GetUsedTexturesAndIndices

(
    TArray < UTexture * >& OutTextu...,
    TArray < TArray < int32 > >& OutIndi...,
    EMaterialQualityLevel::Type Quality...,
    ERHIFeatureLevel::Type FeatureLevel
)

Return the textures used to render this material and the material indices bound to each.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetVectorCurveParameterValue

(
    FName ParameterName,
    FInterpCurveVector & OutValue
)

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

GetVectorParameterValue

(
    FName ParameterName,
    FLinearColor & OutValue
)

Public function

int32

 

GetWidth()

Public function

bool

 

HasTextureStreamingData()

Returns whether there is any streaming data in the component.

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

InitDefaultMaterials()

Initializes all default materials.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsDeferredDecal()

Public function Virtual

bool

 

IsDependent

(
    UMaterialInterface * TestDepend...
)

Test this material for dependency on a given material.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsDitheredLODTransition()

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsMasked()

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsPropertyActive

(
    EMaterialProperty InProperty
)

Checks to see if an input property should be active, based on the state of the material

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsTranslucencyWritingCustomDepth()

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsTwoSided()

Public function Static

void

 

IterateOverActiveFeatureLevels

(
    FunctionType InHandler
)

Iterate over all feature levels currently marked as active

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

LogMaterialsAndTextures

(
    FOutputDevice & Ar,
    int32 Indent
)

Output to the log which materials and textures are used by this material.

Public function Virtual

void

 

OverrideScalarParameterDefault

(
    FName ParameterName,
    float Value,
    bool bOverride,
    ERHIFeatureLevel::Type FeatureLevel
)

Public function Virtual

void

 

OverrideTexture

(
    const UTexture * InTextureToOve...,
    UTexture * OverrideTexture,
    ERHIFeatureLevel::Type InFeatureLev...
)

Override a specific texture (transient)

Public function Virtual

void

 

OverrideVectorParameterDefault

(
    FName ParameterName,
    const FLinearColor & Value,
    bool bOverride,
    ERHIFeatureLevel::Type FeatureLevel
)

Overrides the default value of the given parameter (transient).

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

RecacheAllMaterialUniformExpressions()

Re-caches uniform expressions for all material interfaces

Public function Virtual

void

 

RecacheUniformExpressions()

Re-caches uniform expressions for this material interface

Public function

void

 

SetCastShadowAsMasked

(
    bool InCastShadowAsMasked
)

Public function

void

 

SetDiffuseBoost

(
    float InDiffuseBoost
)

Public function

void

 

SetEmissiveBoost

(
    float InEmissiveBoost
)

Public function

void

 

SetExportResolutionScale

(
    float InExportResolutionScale
)

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

SetFeatureLevelToCompile

(
    ERHIFeatureLevel::Type FeatureLevel,
    bool bShouldCompile
)

Set which feature levels this material instance should compile.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

SetForceMipLevelsToBeResident

(
    bool OverrideForceMiplevelsToBeResi...,
    bool bForceMiplevelsToBeResidentVal...,
    float ForceDuration,
    int32 CinematicTextureGroups
)

Force the streaming system to disregard the normal logic for the specified duration and instead always load all mip-levels for all textures used by this material.

Public function Static

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

SetGlobalRequiredFeatureLevel

(
    ERHIFeatureLevel::Type FeatureLevel,
    bool bShouldCompile
)

Set which feature levels all materials should compile to. GMaxRHIFeatureLevel is always compiled.

Public function

void

 

SetLightingGuid()

Public function

void

 

SetOverrideCastShadowAsMasked

(
    bool bInOverrideCastShadowAsMasked
)

Public function

void

 

SetOverrideDiffuseBoost

(
    bool bInOverrideDiffuseBoost
)

Public function

void

 

SetOverrideEmissiveBoost

(
    bool bInOverrideEmissiveBoost
)

Public function

void

 

SetOverrideExportResolutionScale

(
    bool bInOverrideExportResolutionSca...
)

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

SetTextureStreamingData

(
    const TArray < FMaterialTextureInfo ...
)

Set new texture streaming data.

Protected function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

SortTextureStreamingData

(
    bool bForceSort,
    bool bFinalSort
)

Sort the texture streaming data by names to accelerate search. Only sorts if required.

Public function Virtual

bool

 

UpdateLightmassTextureTracking()

Check if the textures have changed since the last time the material was serialized for Lightmass...

Protected function

void

 

UpdateMaterialRenderProxy

(
    FMaterialRenderProxy & Proxy
)

Public function

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

UseAnyStreamingTexture()

Return whether this material refer to any streaming textures.

Overridden from UObject

Name Description

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

BeginDestroy()

Called before destroying the object.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) b...

 

IsReadyForFinishDestroy()

Called to check if the object is ready for FinishDestroy.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

PostCDOContruct()

Called after the C++ constructor has run on the CDO for a class.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

PostDuplicate

(
    bool bDuplicateForPIE
)

Called after duplication & serialization and before PostLoad.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

PostEditChangeProperty

(
    FPropertyChangedEvent & PropertyCha...
)

Called when a property on this object has been modified externally

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

PostLoad()

Do any object-specific cleanup required immediately after loading an object, and immediately after any undo/redo.

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

PreSave

(
    const ITargetPlatform * TargetP...
)

Presave function.

Overridden from IBlendableInterface

Name Description

Public function Virtual

[ENGINE_API](API\Runtime\Engine\AI\Navigation\ENGINE_API) v...

 

OverrideBlendableSettings

(
    FSceneView & View,
    float Weight
)

WITH_EDITOR.

Typedefs

Name

Description

TMicRecursionGuard

Same as above, but can be called concurrently

Constants

Name

Description

FeatureLevelsForAllMaterials

Feature level bitfield to compile for all materials

SamplerTypeEnum

Cached type information for the sampler type enumeration.

References

Module

Engine

Header

Runtime/Engine/Classes/Materials/MaterialInterface.h