FMaterialUniformExpressionTexture

A texture expression.

Windows
MacOS
Linux

Inheritance Hierarchy

FRefCountedObject

FMaterialUniformExpression

FMaterialUniformExpressionTexture

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/MaterialShared.h

Include

#include "MaterialShared.h"

Syntax

class FMaterialUniformExpressionTexture : public FMaterialUniformExpression

Remarks

A texture expression.

Variables

Name Description

Protected variable

bool

 

bVirtualTexture

Virtual texture flag used only for unique serialization

Protected variable

int32

 

LayerIndex

Fixed layer in virtual texture stack if preallocated

Protected variable

ESamplerSourceM...

 

SamplerSource

Sampler state object source for this expression

Protected variable

EMaterialSample...

 

SamplerType

Sampler logic for this expression

Protected variable

int32

 

TextureIndex

Index into FMaterial::GetReferencedTextures

Protected variable

UTexture *

 

TransientOverrideValue_GameThread

Texture that may be used in the editor for overriding the texture but never saved to disk, accessible only by the game thread!

Protected variable

UTexture *

 

TransientOverrideValue_RenderThread

Texture that may be used in the editor for overriding the texture but never saved to disk, accessible only by the rendering thread!

Constructors

Name Description

Public function

FMaterialUniformExpressionTexture()

Public function

FMaterialUniformExpressionTexture

(
    int32 InTextureIndex,
    int32 InLayerIndex,
    EMaterialSamplerType InSamplerType
)

Public function

FMaterialUniformExpressionTexture

(
    int32 InTextureIndex,
    EMaterialSamplerType InSamplerType,
    ESamplerSourceMode InSamplerSource,
    bool InVirtualTexture
)

Functions

Name Description

Public function Virtual Const

void

 

GetGameThreadTextureValue

(
    const UMaterialInterface* Mate...,
    const FMaterial& Material,
    UTexture*& OutValue,
    bool bAllowOverride
)

Get the UTexture referenced by this expression including any transient override logic.

Public function Const

int32

 

GetLayerIndex()

Gets the layer index in the virtual texture stack if this is fixed.

Public function Const

ESamplerSour...

 

GetSamplerSource()

Get the sampler state object to use (globally shared or from texture asset).

Public function Const

EMaterialSam...

 

GetSamplerType()

Get the sampling/decoding logic to compile in the shader for this texture.

Public function Const

int32

 

GetTextureIndex()

Gets texture index which is the index in the full set of referenced textures for this material.

Public function Virtual

FMaterialUni...

 

GetTextureParameterUniformExpression()

Public function Virtual Const

void

 

GetTextureValue

(
    const FMaterialRenderContext& Cont...,
    const FMaterial& Material,
    const UTexture*& OutValue
)

Get the UTexture referenced by this expression (can be a nullptr).

Public function Virtual Const

void

 

GetTextureValue

(
    const FMaterial& Material,
    const URuntimeVirtualTexture*&...
)

Get the URuntimeVirtualTexture referenced by this expression (can be a nullptr).

Public function Static

FMaterialUni...

 

SerializationConstructor()

Public function

void

 

SetTransientOverrideTextureValue

(
    UTexture* InOverrideTexture
)

Sets an override texture.

Overridden from FMaterialUniformExpression

Name Description

Public function Virtual

FMaterialUni...

 

GetTextureUniformExpression()

Public function Virtual Const

FMaterialUni...

 

GetType()

Public function Virtual Const

bool

 

IsIdentical

(
    const FMaterialUniformExpression&#...
)

Public function Virtual

void

 

Serialize

(
    FArchive& Ar
)

Constants

Name

Description

StaticType

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