Navigation
API > API/Runtime > API/Runtime/Engine > API/Runtime/Engine/Materials
Inheritance Hierarchy
- FRenderResource
- FNoncopyable
- FMaterialRenderProxy
- FColoredMaterialRenderProxy
- FColoredTexturedMaterialRenderProxy
- FLightingDensityMaterialRenderProxy
- FOverrideSelectionColorMaterialRenderProxy
References
| Module | Engine |
| Header | /Engine/Source/Runtime/Engine/Public/Materials/MaterialRenderProxy.h |
| Include | #include "Materials/MaterialRenderProxy.h" |
Syntax
class FMaterialRenderProxy :
public FRenderResource ,
public FNoncopyable
Remarks
A material render proxy used by the renderer.
Variables
| Type | Name | Description | |
|---|---|---|---|
| FImmutableSamplerState | ImmutableSamplerState | Cached external texture immutable samplers | |
| FUniformExpressionCacheContainer | UniformExpressionCache | Cached uniform expressions. |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FMaterialRenderProxy
(
FString InMaterialName |
Default constructor. |
Destructors
| Type | Name | Description | |
|---|---|---|---|
| Destructor. |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddSpecularProfileRT
(
const USpecularProfile* Ptr |
Specular profiles. | |
| void | AddSubsurfaceProfileRT
(
const USubsurfaceProfile* Ptr |
Subsurface profiles. | |
| void | CacheUniformExpressions
(
FRHICommandListBase& RHICmdList, |
Caches uniform expressions for efficient runtime evaluation. | |
| void | CacheUniformExpressions
(
bool bRecreateUniformBuffer |
||
| void | CacheUniformExpressions_GameThread
(
bool bRecreateUniformBuffer |
Enqueues a rendering command to cache uniform expressions for efficient runtime evaluation. | |
| void | Cancels an in-flight cache operation. | ||
| void | EvaluateUniformExpressions
(
FUniformExpressionCache& OutUniformExpressionCache, |
||
| void | EvaluateUniformExpressions
(
FRHICommandListBase& RHICmdList, |
Evaluates uniform expressions and stores them in OutUniformExpressionCache. | |
| EBlendableLocation | GetBlendableLocation
(
const FMaterial* Base |
||
| int32 | GetBlendablePriority
(
const FMaterial* Base |
||
| int32 | |||
| const FMaterialRenderProxy * | GetFallback
(
ERHIFeatureLevel::Type InFeatureLevel |
||
| const FMaterial & | GetIncompleteMaterialWithFallback
(
ERHIFeatureLevel::Type InFeatureLevel |
Finds the FMaterial to use for rendering this FMaterialRenderProxy. | |
| UMaterialInterface * | |||
| const FString & | |||
| const FMaterial * | GetMaterialNoFallback
(
ERHIFeatureLevel::Type InFeatureLevel |
Returns the FMaterial, without using a fallback if the FMaterial doesn't have a valid shader map. | |
| const TSet< FMaterialRenderProxy * > & | |||
| FCriticalSection & | |||
| const FMaterial & | GetMaterialWithFallback
(
ERHIFeatureLevel::Type InFeatureLevel, |
Finds the FMaterial to use for rendering this FMaterialRenderProxy. | |
| const UNeuralProfile * | |||
| bool | GetParameterValue
(
EMaterialParameterType Type, |
||
| bool | GetScalarValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| const USpecularProfile * | GetSpecularProfileRT
(
uint32 Index |
||
| const USubsurfaceProfile * | GetSubsurfaceProfileRT
(
uint32 Index |
||
| const USubsurfaceProfile * | |||
| bool | GetTextureCollectionValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| bool | GetTextureValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| bool | GetTextureValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| bool | GetTextureValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| FName | GetUserSceneTextureOutput
(
const FMaterial* Base |
||
| bool | GetUserSceneTextureOverride
(
FName& InOutValue |
||
| bool | GetVectorValue
(
const FHashedMaterialParameterInfo& ParameterInfo, |
||
| bool | |||
| void | InvalidateUniformExpressionCache
(
bool bRecreateUniformBuffer |
Invalidates the uniform expression cache. | |
| bool | IsDeleted () |
||
| bool | |||
| void | |||
| const uint32 | |||
| const uint32 | |||
| void | SetNeuralProfileRT
(
const UNeuralProfile* Ptr |
Neural profiles. | |
| void | SetSubsurfaceProfileRT
(
const USubsurfaceProfile* Ptr |
Subsurface profile. | |
| void | |||
| void | UpdateDeferredCachedUniformExpressions
(
FRHICommandListBase& RHICmdList, |
||
| void | UpdateUniformExpressionCacheIfNeeded
(
ERHIFeatureLevel::Type InFeatureLevel |
||
| const FMaterial * | UpdateUniformExpressionCacheIfNeeded
(
FRHICommandListBase& RHICmdList, |
Overridden from FRenderResource
| Type | Name | Description | |
|---|---|---|---|
| void | InitRHI
(
FRHICommandListBase& RHICmdList |
Initializes the RHI resources used by this resource. | |
| void | Prepares the resource for deletion. This is only called by the rendering thread. | ||
| void | ReleaseRHI () |
Releases the RHI resources used by this resource. |
Constants
| Name | Description |
|---|---|
| DeferredUniformExpressionCacheRequests | |
| DeferredUniformExpressionCacheRequestsMutex | |
| MaterialRenderProxyMap | Tracks all material render proxies in all scenes. |
| MaterialRenderProxyMapLock | Lock that guards the access to the render proxy map |