Navigation
API > API/Runtime > API/Runtime/Engine
| Name | UMaterialInstance |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/Materials/MaterialInstance.h |
| Include Path | #include "Materials/MaterialInstance.h" |
Syntax
UCLASS (Abstract, BlueprintType, MinimalAPI)
class UMaterialInstance : public UMaterialInterface
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UMaterialInterface → UMaterialInstance
Implements Interfaces
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UMaterialInstance
(
const FObjectInitializer& ObjectInitializer |
Materials/MaterialInstance.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~UMaterialInstance() |
Materials/MaterialInstance.h |
Structs
| Name | Remarks |
|---|---|
| FTextureParameterOverride |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BasePropertyOverrides | FMaterialInstanceBasePropertyOverrides | Materials/MaterialInstance.h |
|
|
| bCastDynamicShadowAsMasked | uint8 | Materials/MaterialInstance.h | ||
| bCompatibleWithLumenCardSharing | uint8 | Materials/MaterialInstance.h | ||
| bDisallowStaticParameterPermutations | bool | Whether static parameter permutations should be disabled (e.g. due to having a restricted parent material) | Materials/MaterialInstance.h | |
| bEnableDisplacementFade | uint8 | Materials/MaterialInstance.h | ||
| bEnableTessellation | uint8 | Materials/MaterialInstance.h | ||
| bHasPixelAnimation | uint8 | Materials/MaterialInstance.h | ||
| bHasStaticPermutationResource | uint8 | Indicates whether the instance has static permutation resources (which are required when static parameters are present) Read directly from the rendering thread, can only be modified with the use of a FMaterialUpdateContext. | Materials/MaterialInstance.h | |
| bIsShadingModelFromMaterialExpression | uint8 | Materials/MaterialInstance.h | ||
| bIsThinSurface | uint8 | Materials/MaterialInstance.h | ||
| BlendableLocationOverride | TEnumAsByte< EBlendableLocation > | Materials/MaterialInstance.h |
|
|
| BlendablePriorityOverride | int32 | Materials/MaterialInstance.h |
|
|
| BlendMode | TEnumAsByte< EBlendMode > | Materials/MaterialInstance.h | ||
| bOutputTranslucentVelocity | uint8 | Materials/MaterialInstance.h | ||
| bOverrideBlendableLocation | uint8 | For post process materials, use BlendableLocationOverride. | Materials/MaterialInstance.h |
|
| bOverrideBlendablePriority | uint8 | For post process materials, use BlendablePriorityOverride. | Materials/MaterialInstance.h |
|
| bOverrideSpecularProfile | uint8 | Defines if SpecularProfile from this instance is used or it uses the parent one. | Materials/MaterialInstance.h |
|
| bOverrideSubsurfaceProfile | uint8 | Defines if SubsurfaceProfile from this instance is used or it uses the parent one. | Materials/MaterialInstance.h |
|
| DisplacementFadeRange | FDisplacementFadeRange | Materials/MaterialInstance.h | ||
| DisplacementScaling | FDisplacementScaling | Materials/MaterialInstance.h | ||
| DitheredLODTransition | uint8 | Materials/MaterialInstance.h | ||
| DoubleVectorParameterValues | TArray< struct FDoubleVectorParameterValue > | DoubleVector parameters. | Materials/MaterialInstance.h |
|
| EnumerationObjects | TArray< TSoftObjectPtr< UObject > > | Array of enumeration objects for use by scalar parameter enumeration indices. | Materials/MaterialInstance.h | |
| FontParameterValues | TArray< struct FFontParameterValue > | Font parameters. | Materials/MaterialInstance.h |
|
| MaxWorldPositionOffsetDisplacement | float | Materials/MaterialInstance.h | ||
| NaniteOverrideMaterial | FMaterialOverrideNanite | An override material which will be used instead of this one when rendering with Nanite. | Materials/MaterialInstance.h |
|
| OpacityMaskClipValue | float | Cached copies of the base property overrides or the value from the parent to avoid traversing the parent chain for each access. | Materials/MaterialInstance.h | |
| ParameterCollectionParameterValues | TArray< struct FParameterCollectionParameterValue > | Texture Collection parameters. | Materials/MaterialInstance.h |
|
| Parent | TObjectPtr< class UMaterialInterface > | Parent material. | Materials/MaterialInstance.h |
|
| PhysicalMaterialMap | TObjectPtr< class UPhysicalMaterial > | Physical material map used with physical material mask, when it exists. | Materials/MaterialInstance.h |
|
| PhysMaterial | TObjectPtr< class UPhysicalMaterial > | Physical material to use for this graphics material. Used for sounds, effects etc. | Materials/MaterialInstance.h |
|
| ReentrantFlag | bool | Flag to detect cycles in the material instance graph, this is only used at content creation time where the hierarchy can be changed. | Materials/MaterialInstance.h | |
| Resource | FMaterialInstanceResource * | FMaterialRenderProxy derivative that represent this material instance to the renderer, when the renderer needs to fetch parameter values. | Materials/MaterialInstance.h | |
| RuntimeVirtualTextureParameterValues | TArray< struct FRuntimeVirtualTextureParameterValue > | RuntimeVirtualTexture parameters. | Materials/MaterialInstance.h |
|
| ScalarParameterValues | TArray< struct FScalarParameterValue > | Scalar parameters. | Materials/MaterialInstance.h |
|
| ShadingModels | FMaterialShadingModelField | Materials/MaterialInstance.h | ||
| SparseVolumeTextureParameterValues | TArray< struct FSparseVolumeTextureParameterValue > | Sparse Volume Texture parameters. | Materials/MaterialInstance.h |
|
| SpecularProfileOverride | TObjectPtr< class USpecularProfile > | Defines SpecularProfile override used by this instance. If not set, it uses the parent ones. | Materials/MaterialInstance.h | |
| TextureCollectionParameterValues | TArray< struct FTextureCollectionParameterValue > | Texture Collection parameters. | Materials/MaterialInstance.h |
|
| TextureParameterValues | TArray< struct FTextureParameterValue > | Texture parameters. | Materials/MaterialInstance.h |
|
| TwoSided | uint8 | Materials/MaterialInstance.h | ||
| UserSceneTextureOverrides | TArray< struct FUserSceneTextureOverride > | User scene texture overrides. Applies to post process domain materials only. | Materials/MaterialInstance.h |
|
| VectorParameterValues | TArray< struct FVectorParameterValue > | Vector parameters. | Materials/MaterialInstance.h |
|
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bCachingUniformExpressions | bool | This instance is caching uniform expressions (the render thread hasn't canceled its creation). | Materials/MaterialInstance.h | |
| bResourceCreated | bool | This instance resource has been created and is still alive (the render thread hasn't destroyed it yet). | Materials/MaterialInstance.h | |
| CachedMaterialResourcesForCooking | TMap< const ITargetPlatform *, TArray< FMaterialResourceForCooking > > | Material resources being cached for cooking. | Materials/MaterialInstance.h | |
| LoadedMaterialResources | TArray< FMaterialResource > | Inline material resources serialized from disk. To be processed on game thread in PostLoad. | Materials/MaterialInstance.h | |
| ReferencedTextureGuids | TArray< FGuid > | Materials/MaterialInstance.h | ||
| StaticParametersRuntime | FStaticParameterSetRuntimeData | Static parameter values that are overridden in this instance. | Materials/MaterialInstance.h | |
| StaticPermutationMaterialResources | TArray< FMaterialResource * > | Material resources used for rendering this material instance, in the case of static parameters being present. | Materials/MaterialInstance.h | |
| TransientTextureParameterOverrides | TArray< FTextureParameterOverride > | Materials/MaterialInstance.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FMaterialResource * AllocatePermutationResource() |
Materials/MaterialInstance.h | ||
void BeginAllowCachingStaticParameterValues() |
Materials/MaterialInstance.h | ||
void CacheResourceShadersForCooking
(
EShaderPlatform ShaderPlatform, |
Cache resource shaders for rendering on the given shader platform. | Materials/MaterialInstance.h | |
void EndAllowCachingStaticParameterValues() |
Materials/MaterialInstance.h | ||
bool Equivalent
(
const UMaterialInstance* CompareTo |
Materials/MaterialInstance.h | ||
void FinishCacheUniformExpressions() |
Materials/MaterialInstance.h | ||
void GetAllShaderMaps
(
TArray< FMaterialShaderMap* >& OutShaderMaps |
Gathers actively used shader maps from all material resources used by this material instance Note - not refcounting the shader maps so the references must not be used after material resources are modified (compilation, loading, etc) | Materials/MaterialInstance.h | |
void GetBasePropertyOverridesHash
(
FSHAHash& OutHash |
Properties of the base material. Can now be overridden by instances. | Materials/MaterialInstance.h | |
FString GetBasePropertyOverrideString() |
Materials/MaterialInstance.h | ||
const FMaterialInstanceCachedData & GetCachedInstanceData() |
Materials/MaterialInstance.h | ||
const FStaticParameterSetEditorOnlyData & GetEditorOnlyStaticParameters() |
Materials/MaterialInstance.h | ||
TSoftObjectPtr< UObject > GetEnumerationObject
(
int32 Index |
Get enumeration object by index. | Materials/MaterialInstance.h | |
bool GetParameterOverrideValue
(
EMaterialParameterType Type, |
Materials/MaterialInstance.h | ||
bool GetReentrantFlag
(
bool bIsInGameThread |
Materials/MaterialInstance.h | ||
FStaticParameterSet GetStaticParameters() |
Materials/MaterialInstance.h | ||
virtual bool HasOverridenBaseProperties() |
Materials/MaterialInstance.h | ||
bool HasStaticParameters() |
Gets static parameter set for this material. | Materials/MaterialInstance.h | |
void InitStaticPermutation
(
EMaterialShaderPrecompileMode PrecompileMode |
Recompiles static permutations if necessary. | Materials/MaterialInstance.h | |
bool IsChildOf
(
const UMaterialInterface* Material |
Determine whether this Material Instance is a child of another Material | Materials/MaterialInstance.h | |
virtual bool IsRedundant () |
Returns true if using this material instance would be equivalent to using its parent. | Materials/MaterialInstance.h | |
bool IsStaticPermutationAllowedForCandidateParent
(
UMaterialInterface* CandidateParent |
Returns this material instance is allowed to override static parameters and introduce a new shader permutation when it derives from `CandidateParent_. | Materials/MaterialInstance.h | |
virtual FGraphEventArray PrecachePSOs
(
const FPSOPrecacheVertexFactoryDataList& VertexFactoryDataList, |
Materials/MaterialInstance.h | ||
void RemoveLayerParameterIndex
(
int32 Index |
Materials/MaterialInstance.h | ||
void SaveShaderStableKeys
(
const ITargetPlatform* TP |
Materials/MaterialInstance.h | ||
bool SetMaterialLayers
(
const FMaterialLayersFunctions& LayersValue |
Materials/MaterialInstance.h | ||
void SetReentrantFlag
(
const bool bValue, |
Materials/MaterialInstance.h | ||
void SetStaticSwitchParameterValueEditorOnly
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void StartCacheUniformExpressions() |
Tracking of in-flight uniform expression cache update operations for the material instance, for thread safety destroying the resource. | Materials/MaterialInstance.h | |
void SwapLayerParameterIndices
(
int32 OriginalIndex, |
Materials/MaterialInstance.h | ||
virtual void UpdateCachedData() |
Materials/MaterialInstance.h | ||
void UpdateOverridableBaseProperties() |
Materials/MaterialInstance.h | ||
void UpdateStaticPermutation
(
FMaterialUpdateContext* MaterialUpdateContext |
Ensure's static permutations for current parameters and overrides are upto date. | Materials/MaterialInstance.h | |
void UpdateStaticPermutation
(
const FStaticParameterSet& NewParameters, |
Sets new static parameter overrides on the instance and recompiles the static permutation resources if needed (can be forced with bForceRecompile). | Materials/MaterialInstance.h | |
void UpdateStaticPermutation
(
const FStaticParameterSet& NewParameters, |
Sets new static parameter overrides on the instance and recompiles the static permutation resources if needed. | Materials/MaterialInstance.h | |
void ValidateStaticPermutationAllowed() |
Ensures that current parent is a valid for this material instance and if not, it resets the parent to null. | Materials/MaterialInstance.h | |
void ValidateTextureOverrides
(
EShaderPlatform InShaderPlatform |
Materials/MaterialInstance.h | ||
void ValidateTextureOverrides
(
ERHIFeatureLevel::Type InFeatureLevel |
Materials/MaterialInstance.h |
Overridden from UMaterialInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void AppendCompileStateDebugInfo
(
FStringBuilderBase& OutDebugInfo |
Materials/MaterialInstance.h | ||
virtual void CacheGivenTypesForCooking
(
EShaderPlatform Platform, |
Materials/MaterialInstance.h | ||
virtual void CacheShaders
(
EMaterialShaderPrecompileMode CompileMode |
Submits remaining shaders for recompilation. | Materials/MaterialInstance.h | |
virtual bool CastsRayTracedShadows() |
Materials/MaterialInstance.h | ||
virtual bool CheckMaterialUsage
(
const EMaterialUsage Usage |
Checks if the material can be used with the given usage flag. | Materials/MaterialInstance.h | |
virtual bool CheckMaterialUsage_Concurrent
(
const EMaterialUsage Usage |
Same as above but is valid to call from any thread. | Materials/MaterialInstance.h | |
virtual void ClearNumericParameterDefault
(
EMaterialParameterType Type, |
Materials/MaterialInstance.h | ||
virtual int32 CompilePropertyEx
(
FMaterialCompiler* Compiler, |
Allows material properties to be compiled with the option of being overridden by the material attributes input. | Materials/MaterialInstance.h | |
virtual void DumpDebugInfo
(
FOutputDevice& OutputDevice |
Materials/MaterialInstance.h | ||
virtual void ForceRecompileForRendering
(
EMaterialShaderPrecompileMode CompileMode |
Clears the shader cache and recompiles the shader for rendering. | Materials/MaterialInstance.h | |
virtual void GetAllParametersOfType
(
EMaterialParameterType Type, |
Materials/MaterialInstance.h | ||
virtual EBlendableLocation GetBlendableLocation
(
const UMaterial* Base |
Materials/MaterialInstance.h | ||
virtual int32 GetBlendablePriority
(
const UMaterial* Base |
Materials/MaterialInstance.h | ||
virtual EBlendMode GetBlendMode() |
Materials/MaterialInstance.h | ||
virtual const FMaterialCachedExpressionData & GetCachedExpressionData
(
TMicRecursionGuard RecursionGuard |
Materials/MaterialInstance.h | ||
virtual bool GetCastDynamicShadowAsMasked() |
Materials/MaterialInstance.h | ||
virtual bool GetCastShadowAsMasked() |
Materials/MaterialInstance.h | ||
virtual void GetDependencies
(
TSet< UMaterialInterface* >& Dependencies |
Get this material dependencies. | Materials/MaterialInstance.h | |
virtual void GetDependentFunctions
(
TArray< class UMaterialFunctionInterface* >& DependentFunctions |
Materials/MaterialInstance.h | ||
virtual float GetDiffuseBoost() |
Materials/MaterialInstance.h | ||
virtual FDisplacementFadeRange GetDisplacementFadeRange() |
Materials/MaterialInstance.h | ||
virtual FDisplacementScaling GetDisplacementScaling() |
Materials/MaterialInstance.h | ||
virtual const UMaterialInstanceEditorOnlyData * GetEditorOnlyData () |
Materials/MaterialInstance.h | ||
virtual UMaterialInstanceEditorOnlyData * GetEditorOnlyData () |
Materials/MaterialInstance.h | ||
virtual const UClass * GetEditorOnlyDataClass() |
Materials/MaterialInstance.h | ||
virtual float GetEmissiveBoost() |
Materials/MaterialInstance.h | ||
virtual float GetExportResolutionScale() |
Materials/MaterialInstance.h | ||
virtual bool GetGroupSortPriority
(
const FString& InGroupName, |
Get the sort priority index of the given parameter group | Materials/MaterialInstance.h | |
virtual void GetLightingGuidChain
(
bool bIncludeTextures, |
Returns all the Guids related to this material. | Materials/MaterialInstance.h | |
virtual UMaterial * GetMaterial () |
Get the material which we are instancing. | Materials/MaterialInstance.h | |
virtual const UMaterial * GetMaterial () |
Get the material which we are instancing. | Materials/MaterialInstance.h | |
virtual const UMaterial * GetMaterial_Concurrent
(
TMicRecursionGuard RecursionGuard |
Same as above, but can be called concurrently | Materials/MaterialInstance.h | |
virtual void GetMaterialInheritanceChain
(
FMaterialInheritanceChain& OutChain |
Materials/MaterialInstance.h | ||
virtual bool GetMaterialLayers
(
FMaterialLayersFunctions& OutLayers, |
Get the material layers stack | Materials/MaterialInstance.h | |
virtual FMaterialResource * GetMaterialResource
(
EShaderPlatform InShaderPlatform, |
Materials/MaterialInstance.h | ||
virtual const FMaterialResource * GetMaterialResource
(
EShaderPlatform InShaderPlatform, |
Materials/MaterialInstance.h | ||
virtual float GetMaxWorldPositionOffsetDisplacement() |
Materials/MaterialInstance.h | ||
virtual UMaterialInterface * GetNaniteOverride
(
TMicRecursionGuard RecursionGuard |
Get the associated nanite override material | Materials/MaterialInstance.h | |
virtual float GetOpacityMaskClipValue() |
Access to overridable properties of the base material. | Materials/MaterialInstance.h | |
virtual bool GetParameterValue
(
EMaterialParameterType Type, |
Materials/MaterialInstance.h | ||
virtual UPhysicalMaterial * GetPhysicalMaterial() |
Return a pointer to the physical material used by this material instance. | Materials/MaterialInstance.h | |
virtual UPhysicalMaterial * GetPhysicalMaterialFromMap
(
int32 Index |
Return a pointer to the physical material from mask map at given index. | Materials/MaterialInstance.h | |
virtual UPhysicalMaterialMask * GetPhysicalMaterialMask() |
Return a pointer to the physical material mask used by this material instance. | Materials/MaterialInstance.h | |
virtual void GetReferencedTexturesAndOverrides
(
TSet< const UTexture* >& InOutTextures |
Add to the set any texture referenced by expressions, including nested functions, as well as any overrides from parameters. | Materials/MaterialInstance.h | |
virtual bool GetRefractionSettings
(
float& OutBiasValue |
Materials/MaterialInstance.h | ||
virtual FMaterialRenderProxy * GetRenderProxy () |
Return a pointer to the FMaterialRenderProxy used for rendering. | Materials/MaterialInstance.h | |
virtual void GetShaderTypes
(
EShaderPlatform Platform, |
Gathers a list of shader types sorted by vertex factory types that should be cached for this material. | Materials/MaterialInstance.h | |
virtual FMaterialShadingModelField GetShadingModels() |
Materials/MaterialInstance.h | ||
virtual USpecularProfile * GetSpecularProfile_Internal
(
uint32 Index |
Materials/MaterialInstance.h | ||
virtual USpecularProfile * GetSpecularProfileOverride_Internal() |
Materials/MaterialInstance.h | ||
virtual USubsurfaceProfile * GetSubsurfaceProfile_Internal() |
Materials/MaterialInstance.h | ||
virtual USubsurfaceProfile * GetSubsurfaceProfileOverride_Internal() |
Materials/MaterialInstance.h | ||
virtual USubsurfaceProfile * GetSubsurfaceProfileRoot_Internal () |
Materials/MaterialInstance.h | ||
virtual USubsurfaceProfile * GetSubsurfaceProfileRoot_Internal
(
uint32 Index |
Materials/MaterialInstance.h | ||
virtual bool GetTextureCollectionParameterValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
virtual float GetTextureDensity
(
FName TextureName, |
Returns the density of a texture in (LocalSpace Unit / Texture). | Materials/MaterialInstance.h | |
virtual bool GetTextureParameterValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
virtual bool GetTexturesInPropertyChain
(
EMaterialProperty InProperty, |
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). | Materials/MaterialInstance.h | |
virtual void GetUsedTextures
(
TArray< UTexture* >& OutTextures, |
Return the textures used to render this material. | Materials/MaterialInstance.h | |
virtual void GetUsedTexturesAndIndices
(
TArray< UTexture* >& OutTextures, |
Materials/MaterialInstance.h | ||
virtual bool GetUserSceneTextureOverride
(
FName& InOutName |
Materials/MaterialInstance.h | ||
virtual bool HasCustomizedUVs() |
Materials/MaterialInstance.h | ||
virtual bool HasCustomPrimitiveData() |
Materials/MaterialInstance.h | ||
virtual bool HasMeshPaintTexture() |
Materials/MaterialInstance.h | ||
virtual bool HasPixelAnimation() |
Materials/MaterialInstance.h | ||
virtual bool HasSubstrateRoughnessTracking() |
Materials/MaterialInstance.h | ||
virtual bool HasVertexInterpolator() |
Materials/MaterialInstance.h | ||
virtual bool IsCompatibleWithLumenCardSharing() |
Materials/MaterialInstance.h | ||
virtual bool IsCompiling() |
Materials/MaterialInstance.h | ||
virtual bool IsComplete () |
Checks to see if this material has all its shaders cached. | Materials/MaterialInstance.h | |
virtual bool IsDeferredDecal() |
Materials/MaterialInstance.h | ||
virtual bool IsDependent
(
UMaterialInterface* TestDependency |
Test this material for dependency on a given material. | Materials/MaterialInstance.h | |
virtual bool IsDependent_Concurrent
(
UMaterialInterface* TestDependency, |
Same as above, but can be called concurrently | Materials/MaterialInstance.h | |
virtual bool IsDisplacementFadeEnabled() |
Materials/MaterialInstance.h | ||
virtual bool IsDitheredLODTransition() |
Materials/MaterialInstance.h | ||
virtual bool IsMasked() |
Materials/MaterialInstance.h | ||
virtual bool IsPostProcessMaterial() |
Materials/MaterialInstance.h | ||
virtual bool IsPropertyActive
(
EMaterialProperty InProperty |
Checks to see if an input property should be active, based on the state of the material | Materials/MaterialInstance.h | |
virtual bool IsShadingModelFromMaterialExpression() |
Materials/MaterialInstance.h | ||
virtual bool IsTessellationEnabled() |
Materials/MaterialInstance.h | ||
virtual bool IsThinSurface() |
Materials/MaterialInstance.h | ||
virtual bool IsTranslucencyVelocityFromDepth() |
Materials/MaterialInstance.h | ||
virtual bool IsTranslucencyWritingVelocity() |
Materials/MaterialInstance.h | ||
virtual bool IsTwoSided() |
Materials/MaterialInstance.h | ||
virtual bool IsUIMaterial() |
Materials/MaterialInstance.h | ||
virtual bool IterateDependentFunctions
(
TFunctionRef< bool(UMaterialFunctionInterface*)> Predicate |
Materials/MaterialInstance.h | ||
virtual void LogMaterialsAndTextures
(
FOutputDevice& Ar, |
Output to the log which materials and textures are used by this material. | Materials/MaterialInstance.h | |
virtual uint32 NumSpecularProfile_Internal() |
Materials/MaterialInstance.h | ||
virtual uint32 NumSubsurfaceProfileRoot_Internal() |
Materials/MaterialInstance.h | ||
virtual void OverrideTexture
(
const UTexture* InTextureToOverride, |
Override a specific texture (transient) | Materials/MaterialInstance.h | |
virtual void RecacheUniformExpressions
(
bool bRecreateUniformBuffer |
Re-caches uniform expressions for this material interface | Materials/MaterialInstance.h | |
virtual void SaveShaderStableKeysInner
(
const ITargetPlatform* TP, |
Materials/MaterialInstance.h | ||
virtual void SetNumericParameterDefault
(
EMaterialParameterType Type, |
Materials/MaterialInstance.h | ||
virtual bool ShouldAlwaysEvaluateWorldPositionOffset() |
Materials/MaterialInstance.h | ||
virtual bool UpdateLightmassTextureTracking () |
Check if the textures have changed since the last time the material was serialized for Lightmass... | Materials/MaterialInstance.h | |
virtual bool WritesToRuntimeVirtualTexture() |
Materials/MaterialInstance.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void BeginCacheForCookedPlatformData
(
const ITargetPlatform* TargetPlatform |
Materials/MaterialInstance.h | ||
virtual void BeginDestroy() |
Materials/MaterialInstance.h | ||
virtual void ClearAllCachedCookedPlatformData() |
Materials/MaterialInstance.h | ||
virtual void ClearCachedCookedPlatformData
(
const ITargetPlatform* TargetPlatform |
Materials/MaterialInstance.h | ||
virtual void FinishDestroy() |
Materials/MaterialInstance.h | ||
virtual void GetResourceSizeEx
(
FResourceSizeEx& CumulativeResourceSize |
Materials/MaterialInstance.h | ||
virtual bool IsCachedCookedPlatformDataLoaded
(
const ITargetPlatform* TargetPlatform |
Materials/MaterialInstance.h | ||
virtual bool IsReadyForFinishDestroy() |
Materials/MaterialInstance.h | ||
virtual void OnCookEvent
(
UE::Cook::ECookEvent CookEvent, |
Materials/MaterialInstance.h | ||
virtual void PostDuplicate
(
bool bDuplicateForPIE |
Materials/MaterialInstance.h | ||
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Materials/MaterialInstance.h | ||
virtual void PostEditUndo() |
Materials/MaterialInstance.h | ||
virtual void PostInitProperties() |
Materials/MaterialInstance.h | ||
virtual void PostLoad() |
Materials/MaterialInstance.h | ||
virtual void Serialize
(
FArchive& Ar |
Materials/MaterialInstance.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void BeginCacheShadersForResources
(
EShaderPlatform ShaderPlatform, |
Initiates caching for this shader resource that will be finished when each material resource IsCompilationFinished returns true. | Materials/MaterialInstance.h | |
void CacheResourceShadersForRendering
(
EMaterialShaderPrecompileMode PrecompileMode, |
Materials/MaterialInstance.h | ||
void CacheResourceShadersForRendering
(
EMaterialShaderPrecompileMode PrecompileMode |
Cache resource shaders for rendering on the given shader platform. | Materials/MaterialInstance.h | |
void CacheShadersForResources
(
EShaderPlatform ShaderPlatform, |
Caches shader maps for an array of material resources. | Materials/MaterialInstance.h | |
void ClearParameterValuesInternal
(
EMaterialInstanceClearParameterFlag Flags |
Materials/MaterialInstance.h | ||
void CopyMaterialInstanceParameters
(
UMaterialInterface* Source |
Copies over material instance parameters from the base material given a material interface. | Materials/MaterialInstance.h | |
void CopyMaterialUniformParametersInternal
(
UMaterialInterface* Source |
Copies the uniform parameters (scalar, vector and texture) from a material or instance hierarchy. | Materials/MaterialInstance.h | |
void GetTextureCollectionExpressionValues
(
const FMaterialResource* MaterialResource, |
Materials/MaterialInstance.h | ||
void GetTextureExpressionValues
(
const FMaterialResource* MaterialResource, |
Materials/MaterialInstance.h | ||
void InitResources() |
Initialize the material instance's resources. | Materials/MaterialInstance.h | |
void PropagateDataToMaterialProxy() |
To share code between PostLoad() and PostEditChangeProperty() | Materials/MaterialInstance.h | |
void ReserveParameterValuesInternal
(
EMaterialParameterType Type, |
Internal interface for setting / updating values for material instances. | Materials/MaterialInstance.h | |
void SetDoubleVectorParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetFontParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetParameterCollectionParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
bool SetParentInternal
(
UMaterialInterface* NewParent, |
Materials/MaterialInstance.h | ||
void SetRuntimeVirtualTextureParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetScalarParameterAtlasInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
bool SetScalarParameterByIndexInternal
(
int32 ParameterIndex, |
Materials/MaterialInstance.h | ||
void SetScalarParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetSparseVolumeTextureParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetTextureCollectionParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void SetTextureParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
bool SetVectorParameterByIndexInternal
(
int32 ParameterIndex, |
Materials/MaterialInstance.h | ||
void SetVectorParameterValueInternal
(
const FMaterialParameterInfo& ParameterInfo, |
Materials/MaterialInstance.h | ||
void UpdateParameterNames() |
Refresh parameter names using the stored reference to the expression object for the parameter. | Materials/MaterialInstance.h | |
bool UpdateParameters() |
Updates parameter names on the material instance, returns true if parameters have changed. | Materials/MaterialInstance.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void AddReferencedObjects
(
UObject* InThis, |
Materials/MaterialInstance.h | ||
static void AllMaterialsCacheResourceShadersForRendering
(
bool bUpdateProgressDialog, |
For all materials instances, UMaterialInstance::CacheResourceShadersForRendering. | Materials/MaterialInstance.h | |
static void DeclareConstructClasses
(
TArray< FTopLevelAssetPath >& OutConstructClasses, |
Materials/MaterialInstance.h |
Deprecated Variables
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bOverrideBaseProperties_DEPRECATED | bool | Materials/MaterialInstance.h |