UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Shader Namespace Reference

Namespaces

namespace  Private
 

Classes

struct  FComponentBounds
 
struct  FMemoryImageValue
 
class  FPreshaderData
 
struct  FPreshaderDataContext
 
struct  FPreshaderDebugStack
 
struct  FPreshaderDebugStackElement
 
struct  FPreshaderLabel
 
class  FPreshaderStack
 
struct  FPreshaderStructType
 
struct  FPreshaderType
 
struct  FPreshaderValue
 
struct  FStructField
 
struct  FStructFieldInitializer
 
struct  FStructType
 
struct  FStructTypeInitializer
 
class  FStructTypeRegistry
 
struct  FType
 
struct  FValue
 
union  FValueComponent
 
struct  FValueComponentTypeDescription
 
struct  FValueTypeDescription
 
struct  TValue
 

Typedefs

using FFloatValue = TValue< float >
 
using FDoubleValue = TValue< double >
 
using FIntValue = TValue< int32 >
 
using FBoolValue = TValue< bool >
 

Enumerations

enum class  EPreshaderDebugStackType : uint8 { Singular , SumTerms , ProductTerms }
 
enum class  EPreshaderOperatorType : uint8 {
  Add , Sub , Mul , Div ,
  None
}
 
enum class  EPreshaderOpcode : uint8 {
  Nop , ConstantZero , Constant , Parameter ,
  Add , Sub , Mul , Div ,
  Fmod , Modulo , Min , Max ,
  Clamp , Sin , Cos , Tan ,
  Asin , Acos , Atan , Atan2 ,
  Dot , Cross , Sqrt , Rcp ,
  Length , Normalize , Saturate , Abs ,
  Floor , Ceil , Round , Trunc ,
  Sign , Frac , Fractional , Log2 ,
  Log10 , ComponentSwizzle , AppendVector , TextureSize ,
  TexelSize , ExternalTextureCoordinateScaleRotation , ExternalTextureCoordinateOffset , RuntimeVirtualTextureUniform ,
  SparseVolumeTextureUniform , GetField , SetField , Neg ,
  Jump , JumpIfFalse , PushValue , Less ,
  Assign , Greater , LessEqual , GreaterEqual ,
  Exp , Exp2 , Log
}
 
enum class  EComponentBound : uint8 {
  NegDoubleMax , NegFloatMax , IntMin , NegOne ,
  Zero , One , IntMax , FloatMax ,
  DoubleMax
}
 
enum class  EValueComponentType : uint8 {
  Void , Float , Double , Int ,
  Bool , Numeric , Num
}
 
enum class  EValueType : uint8 {
  Void , Float1 , Float2 , Float3 ,
  Float4 , Double1 , Double2 , Double3 ,
  Double4 , Int1 , Int2 , Int3 ,
  Int4 , Bool1 , Bool2 , Bool3 ,
  Bool4 , Numeric1 , Numeric2 , Numeric3 ,
  Numeric4 , Float4x4 , Double4x4 , DoubleInverse4x4 ,
  Numeric4x4 , Struct , Object , Any ,
  Num
}
 
enum class  EValueStringFormat { Description , HLSL }
 

Functions

template<>
uint8 ReadPreshaderValue< uint8 > (FPreshaderDataContext &RESTRICT Data)
 
template<>
FScriptName ReadPreshaderValue< FScriptName > (FPreshaderDataContext &RESTRICT Data)
 
template<>
FPreshaderType ReadPreshaderValue< FPreshaderType > (FPreshaderDataContext &RESTRICT Data)
 
template<>
FName ReadPreshaderValue< FName > (FPreshaderDataContext &RESTRICT Data)=delete
 
template<>
FHashedMaterialParameterInfo ReadPreshaderValue< FHashedMaterialParameterInfo > (FPreshaderDataContext &RESTRICT Data)
 
EValueType NormalizeInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
FPreshaderValue EvaluatePreshader (const FUniformExpressionSet *UniformExpressionSet, const FMaterialRenderContext &Context, FPreshaderStack &Stack, FPreshaderDataContext &RESTRICT Data)
 
FString PreshaderGenerateDebugString (const FUniformExpressionSet &UniformExpressionSet, const FMaterialRenderContext &Context, FPreshaderDataContext &RESTRICT Data, TMap< FString, uint32 > *ParameterReferences)
 
void PreshaderComputeDebugStats (const FUniformExpressionSet &UniformExpressionSet, const FMaterialRenderContext &Context, FPreshaderDataContext &RESTRICT Data, uint32 &TotalParameters, uint32 &TotalOps)
 
const FValueTypeDescriptionGetValueTypeDescription (EValueType Type)
 
FType CombineTypes (const FType &Lhs, const FType &Rhs, bool bMergeMatrixTypes)
 
FValueComponentTypeDescription GetValueComponentTypeDescription (EValueComponentType Type)
 
EValueComponentType CombineComponentTypes (EValueComponentType Lhs, EValueComponentType Rhs)
 
EValueType FindValueType (FName Name)
 
EValueType MakeValueType (EValueComponentType ComponentType, int32 NumComponents)
 
EValueType MakeValueType (EValueType BaseType, int32 NumComponents)
 
EValueType MakeValueTypeWithRequestedNumComponents (EValueType BaseType, int8 RequestedNumComponents)
 
EValueType MakeNonLWCType (EValueType Type)
 
EValueType MakeConcreteType (EValueType Type)
 
EValueType MakeDerivativeType (EValueType Type)
 
bool operator== (const FValue &Lhs, const FValue &Rhs)
 
uint32 GetTypeHash (const FType &Type)
 
uint32 GetTypeHash (const FValue &Value)
 
FValue Neg (const FValue &Value)
 
FValue Abs (const FValue &Value)
 
FValue Saturate (const FValue &Value)
 
FValue Floor (const FValue &Value)
 
FValue Ceil (const FValue &Value)
 
FValue Round (const FValue &Value)
 
FValue Trunc (const FValue &Value)
 
FValue Sign (const FValue &Value)
 
FValue Frac (const FValue &Value)
 
FValue Fractional (const FValue &Value)
 
FValue Sqrt (const FValue &Value)
 
FValue Rcp (const FValue &Value)
 
FValue Exp (const FValue &Value)
 
FValue Exp2 (const FValue &Value)
 
FValue Log (const FValue &Value)
 
FValue Log2 (const FValue &Value)
 
FValue Log10 (const FValue &Value)
 
FValue Sin (const FValue &Value)
 
FValue Cos (const FValue &Value)
 
FValue Tan (const FValue &Value)
 
FValue Asin (const FValue &Value)
 
FValue Acos (const FValue &Value)
 
FValue Atan (const FValue &Value)
 
FValue Add (const FValue &Lhs, const FValue &Rhs)
 
FValue Sub (const FValue &Lhs, const FValue &Rhs)
 
FValue Mul (const FValue &Lhs, const FValue &Rhs)
 
FValue Div (const FValue &Lhs, const FValue &Rhs)
 
FValue Less (const FValue &Lhs, const FValue &Rhs)
 
FValue Greater (const FValue &Lhs, const FValue &Rhs)
 
FValue LessEqual (const FValue &Lhs, const FValue &Rhs)
 
FValue GreaterEqual (const FValue &Lhs, const FValue &Rhs)
 
FValue Min (const FValue &Lhs, const FValue &Rhs)
 
FValue Max (const FValue &Lhs, const FValue &Rhs)
 
FValue Fmod (const FValue &Lhs, const FValue &Rhs)
 
FValue Modulo (const FValue &Lhs, const FValue &Rhs)
 
FValue Atan2 (const FValue &Lhs, const FValue &Rhs)
 
FValue Clamp (const FValue &Value, const FValue &Low, const FValue &High)
 
FValue Dot (const FValue &Lhs, const FValue &Rhs)
 
FValue Cross (const FValue &Lhs, const FValue &Rhs)
 
FValue Append (const FValue &Lhs, const FValue &Rhs)
 
FValue Cast (const FValue &Value, EValueType Type)
 
EValueType NegInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType AbsInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType SaturateInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType FloorInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType CeilInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType RoundInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType TruncInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType SignInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType FracInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType FractionalInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType SqrtInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType RcpInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType ExpInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType Exp2InPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType LogInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType Log2InPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType Log10InPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType SinInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType CosInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType TanInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType AsinInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType AcosInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType AtanInPlace (EValueType Type, TArrayView< FValueComponent > Component)
 
EValueType AddInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType SubInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType MulInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType DivInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType MinInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType MaxInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType FmodInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType ModuloInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType Atan2InPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EValueType AppendInPlace (EValueType LhsType, EValueType RhsType, TArrayView< FValueComponent > Component, int32 &OutComponentsConsumed)
 
EComponentBound MinBound (EComponentBound Lhs, EComponentBound Rhs)
 
EComponentBound MaxBound (EComponentBound Lhs, EComponentBound Rhs)
 
bool operator== (const FComponentBounds &Lhs, const FComponentBounds &Rhs)
 
bool operator!= (const FComponentBounds &Lhs, const FComponentBounds &Rhs)
 
FComponentBounds MinBound (FComponentBounds Lhs, FComponentBounds Rhs)
 
FComponentBounds MaxBound (FComponentBounds Lhs, FComponentBounds Rhs)
 
bool IsWithinBounds (FComponentBounds Lhs, FComponentBounds Rhs)
 
const TCHARGetComponentTypeName (EValueComponentType Type)
 
uint32 GetComponentTypeSizeInBytes (EValueComponentType Type)
 
bool IsNumericType (EValueComponentType Type)
 
bool IsComponentTypeWithinBounds (EValueComponentType Type, FComponentBounds Bounds)
 
EValueComponentType MakeNonLWCType (EValueComponentType Type)
 
EValueComponentType MakeConcreteType (EValueComponentType Type)
 
bool IsGenericType (EValueComponentType Type)
 
bool IsLWCType (EValueComponentType Type)
 
bool IsLWCType (EValueType Type)
 
bool IsGenericType (EValueType Type)
 
bool IsNumericType (EValueType Type)
 
bool IsNumericScalarType (EValueType Type)
 
bool IsNumericVectorType (EValueType Type)
 
bool IsNumericMatrixType (EValueType Type)
 
bool operator== (const FType &Lhs, const FType &Rhs)
 
bool operator!= (const FType &Lhs, const FType &Rhs)
 
bool operator== (const FType &Lhs, const EValueType &Rhs)
 
bool operator!= (const FType &Lhs, const EValueType &Rhs)
 
bool operator== (const EValueType &Lhs, const FType &Rhs)
 
bool operator!= (const EValueType &Lhs, const FType &Rhs)
 
bool operator!= (const FValue &Lhs, const FValue &Rhs)
 

Variables

const FValueTypeDescription GValueTypeDescriptions []
 
constexpr int32 NumValueTypes = (int32)EValueType::Num
 

Typedef Documentation

◆ FBoolValue

◆ FDoubleValue

◆ FFloatValue

◆ FIntValue

Enumeration Type Documentation

◆ EComponentBound

Enumerator
NegDoubleMax 
NegFloatMax 
IntMin 
NegOne 
Zero 
One 
IntMax 
FloatMax 
DoubleMax 

◆ EPreshaderDebugStackType

Enumerator
Singular 
SumTerms 
ProductTerms 

◆ EPreshaderOpcode

Enumerator
Nop 
ConstantZero 
Constant 
Parameter 
Add 
Sub 
Mul 
Div 
Fmod 
Modulo 
Min 
Max 
Clamp 
Sin 
Cos 
Tan 
Asin 
Acos 
Atan 
Atan2 
Dot 
Cross 
Sqrt 
Rcp 
Length 
Normalize 
Saturate 
Abs 
Floor 
Ceil 
Round 
Trunc 
Sign 
Frac 
Fractional 
Log2 
Log10 
ComponentSwizzle 
AppendVector 
TextureSize 
TexelSize 
ExternalTextureCoordinateScaleRotation 
ExternalTextureCoordinateOffset 
RuntimeVirtualTextureUniform 
SparseVolumeTextureUniform 
GetField 
SetField 
Neg 
Jump 
JumpIfFalse 
PushValue 
Less 
Assign 
Greater 
LessEqual 
GreaterEqual 
Exp 
Exp2 
Log 

◆ EPreshaderOperatorType

Enumerator
Add 
Sub 
Mul 
Div 
None 

◆ EValueComponentType

Enumerator
Void 
Float 
Double 
Int 
Bool 
Numeric 
Num 

◆ EValueStringFormat

Enumerator
Description 
HLSL 

◆ EValueType

Enumerator
Void 
Float1 
Float2 
Float3 
Float4 
Double1 
Double2 
Double3 
Double4 
Int1 
Int2 
Int3 
Int4 
Bool1 
Bool2 
Bool3 
Bool4 
Numeric1 
Numeric2 
Numeric3 
Numeric4 
Float4x4 
Double4x4 
DoubleInverse4x4 
Numeric4x4 
Struct 
Object 
Any 
Num 

Function Documentation

◆ Abs()

ENGINE_API FValue UE::Shader::Abs ( const FValue Value)

◆ AbsInPlace()

ENGINE_API EValueType UE::Shader::AbsInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Acos()

ENGINE_API FValue UE::Shader::Acos ( const FValue Value)

◆ AcosInPlace()

ENGINE_API EValueType UE::Shader::AcosInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Add()

ENGINE_API FValue UE::Shader::Add ( const FValue Lhs,
const FValue Rhs 
)

◆ AddInPlace()

ENGINE_API EValueType UE::Shader::AddInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Append()

ENGINE_API FValue UE::Shader::Append ( const FValue Lhs,
const FValue Rhs 
)

◆ AppendInPlace()

ENGINE_API EValueType UE::Shader::AppendInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Asin()

ENGINE_API FValue UE::Shader::Asin ( const FValue Value)

◆ AsinInPlace()

ENGINE_API EValueType UE::Shader::AsinInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Atan()

ENGINE_API FValue UE::Shader::Atan ( const FValue Value)

◆ Atan2()

ENGINE_API FValue UE::Shader::Atan2 ( const FValue Lhs,
const FValue Rhs 
)

◆ Atan2InPlace()

ENGINE_API EValueType UE::Shader::Atan2InPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ AtanInPlace()

ENGINE_API EValueType UE::Shader::AtanInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Cast()

ENGINE_API FValue UE::Shader::Cast ( const FValue Value,
EValueType  Type 
)

◆ Ceil()

ENGINE_API FValue UE::Shader::Ceil ( const FValue Value)

◆ CeilInPlace()

ENGINE_API EValueType UE::Shader::CeilInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Clamp()

ENGINE_API FValue UE::Shader::Clamp ( const FValue Value,
const FValue Low,
const FValue High 
)

◆ CombineComponentTypes()

ENGINE_API EValueComponentType UE::Shader::CombineComponentTypes ( EValueComponentType  Lhs,
EValueComponentType  Rhs 
)

◆ CombineTypes()

ENGINE_API FType UE::Shader::CombineTypes ( const FType Lhs,
const FType Rhs,
bool  bMergeMatrixTypes 
)

◆ Cos()

ENGINE_API FValue UE::Shader::Cos ( const FValue Value)

◆ CosInPlace()

ENGINE_API EValueType UE::Shader::CosInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Cross()

ENGINE_API FValue UE::Shader::Cross ( const FValue Lhs,
const FValue Rhs 
)

◆ Div()

ENGINE_API FValue UE::Shader::Div ( const FValue Lhs,
const FValue Rhs 
)

◆ DivInPlace()

ENGINE_API EValueType UE::Shader::DivInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Dot()

ENGINE_API FValue UE::Shader::Dot ( const FValue Lhs,
const FValue Rhs 
)

◆ EvaluatePreshader()

ENGINE_API FPreshaderValue UE::Shader::EvaluatePreshader ( const FUniformExpressionSet UniformExpressionSet,
const FMaterialRenderContext Context,
FPreshaderStack Stack,
FPreshaderDataContext &RESTRICT  Data 
)

◆ Exp()

ENGINE_API FValue UE::Shader::Exp ( const FValue Value)

◆ Exp2()

ENGINE_API FValue UE::Shader::Exp2 ( const FValue Value)

◆ Exp2InPlace()

ENGINE_API EValueType UE::Shader::Exp2InPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ ExpInPlace()

ENGINE_API EValueType UE::Shader::ExpInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ FindValueType()

ENGINE_API EValueType UE::Shader::FindValueType ( FName  Name)

◆ Floor()

ENGINE_API FValue UE::Shader::Floor ( const FValue Value)

◆ FloorInPlace()

ENGINE_API EValueType UE::Shader::FloorInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Fmod()

ENGINE_API FValue UE::Shader::Fmod ( const FValue Lhs,
const FValue Rhs 
)

◆ FmodInPlace()

ENGINE_API EValueType UE::Shader::FmodInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Frac()

ENGINE_API FValue UE::Shader::Frac ( const FValue Value)

◆ FracInPlace()

ENGINE_API EValueType UE::Shader::FracInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Fractional()

ENGINE_API FValue UE::Shader::Fractional ( const FValue Value)

◆ FractionalInPlace()

ENGINE_API EValueType UE::Shader::FractionalInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ GetComponentTypeName()

const TCHAR * UE::Shader::GetComponentTypeName ( EValueComponentType  Type)
inline

◆ GetComponentTypeSizeInBytes()

uint32 UE::Shader::GetComponentTypeSizeInBytes ( EValueComponentType  Type)
inline

◆ GetTypeHash() [1/2]

ENGINE_API uint32 UE::Shader::GetTypeHash ( const FType Type)

◆ GetTypeHash() [2/2]

ENGINE_API uint32 UE::Shader::GetTypeHash ( const FValue Value)

◆ GetValueComponentTypeDescription()

ENGINE_API FValueComponentTypeDescription UE::Shader::GetValueComponentTypeDescription ( EValueComponentType  Type)

◆ GetValueTypeDescription()

ENGINE_API const FValueTypeDescription & UE::Shader::GetValueTypeDescription ( EValueType  Type)

◆ Greater()

ENGINE_API FValue UE::Shader::Greater ( const FValue Lhs,
const FValue Rhs 
)

◆ GreaterEqual()

ENGINE_API FValue UE::Shader::GreaterEqual ( const FValue Lhs,
const FValue Rhs 
)

◆ IsComponentTypeWithinBounds()

bool UE::Shader::IsComponentTypeWithinBounds ( EValueComponentType  Type,
FComponentBounds  Bounds 
)
inline

◆ IsGenericType() [1/2]

bool UE::Shader::IsGenericType ( EValueComponentType  Type)
inline

◆ IsGenericType() [2/2]

bool UE::Shader::IsGenericType ( EValueType  Type)
inline

◆ IsLWCType() [1/2]

bool UE::Shader::IsLWCType ( EValueComponentType  Type)
inline

◆ IsLWCType() [2/2]

bool UE::Shader::IsLWCType ( EValueType  Type)
inline

◆ IsNumericMatrixType()

bool UE::Shader::IsNumericMatrixType ( EValueType  Type)
inline

◆ IsNumericScalarType()

bool UE::Shader::IsNumericScalarType ( EValueType  Type)
inline

◆ IsNumericType() [1/2]

bool UE::Shader::IsNumericType ( EValueComponentType  Type)
inline

◆ IsNumericType() [2/2]

bool UE::Shader::IsNumericType ( EValueType  Type)
inline

◆ IsNumericVectorType()

bool UE::Shader::IsNumericVectorType ( EValueType  Type)
inline

◆ IsWithinBounds()

bool UE::Shader::IsWithinBounds ( FComponentBounds  Lhs,
FComponentBounds  Rhs 
)
inline

◆ Less()

ENGINE_API FValue UE::Shader::Less ( const FValue Lhs,
const FValue Rhs 
)

◆ LessEqual()

ENGINE_API FValue UE::Shader::LessEqual ( const FValue Lhs,
const FValue Rhs 
)

◆ Log()

ENGINE_API FValue UE::Shader::Log ( const FValue Value)

◆ Log10()

ENGINE_API FValue UE::Shader::Log10 ( const FValue Value)

◆ Log10InPlace()

ENGINE_API EValueType UE::Shader::Log10InPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Log2()

ENGINE_API FValue UE::Shader::Log2 ( const FValue Value)

◆ Log2InPlace()

ENGINE_API EValueType UE::Shader::Log2InPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ LogInPlace()

ENGINE_API EValueType UE::Shader::LogInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ MakeConcreteType() [1/2]

EValueComponentType UE::Shader::MakeConcreteType ( EValueComponentType  Type)
inline

◆ MakeConcreteType() [2/2]

ENGINE_API EValueType UE::Shader::MakeConcreteType ( EValueType  Type)

◆ MakeDerivativeType()

ENGINE_API EValueType UE::Shader::MakeDerivativeType ( EValueType  Type)

◆ MakeNonLWCType() [1/2]

EValueComponentType UE::Shader::MakeNonLWCType ( EValueComponentType  Type)
inline

◆ MakeNonLWCType() [2/2]

ENGINE_API EValueType UE::Shader::MakeNonLWCType ( EValueType  Type)

◆ MakeValueType() [1/2]

ENGINE_API EValueType UE::Shader::MakeValueType ( EValueComponentType  ComponentType,
int32  NumComponents 
)

◆ MakeValueType() [2/2]

ENGINE_API EValueType UE::Shader::MakeValueType ( EValueType  BaseType,
int32  NumComponents 
)

◆ MakeValueTypeWithRequestedNumComponents()

ENGINE_API EValueType UE::Shader::MakeValueTypeWithRequestedNumComponents ( EValueType  BaseType,
int8  RequestedNumComponents 
)

◆ Max()

ENGINE_API FValue UE::Shader::Max ( const FValue Lhs,
const FValue Rhs 
)

◆ MaxBound() [1/2]

EComponentBound UE::Shader::MaxBound ( EComponentBound  Lhs,
EComponentBound  Rhs 
)
inline

◆ MaxBound() [2/2]

FComponentBounds UE::Shader::MaxBound ( FComponentBounds  Lhs,
FComponentBounds  Rhs 
)
inline

◆ MaxInPlace()

ENGINE_API EValueType UE::Shader::MaxInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Min()

ENGINE_API FValue UE::Shader::Min ( const FValue Lhs,
const FValue Rhs 
)

◆ MinBound() [1/2]

EComponentBound UE::Shader::MinBound ( EComponentBound  Lhs,
EComponentBound  Rhs 
)
inline

◆ MinBound() [2/2]

FComponentBounds UE::Shader::MinBound ( FComponentBounds  Lhs,
FComponentBounds  Rhs 
)
inline

◆ MinInPlace()

ENGINE_API EValueType UE::Shader::MinInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Modulo()

ENGINE_API FValue UE::Shader::Modulo ( const FValue Lhs,
const FValue Rhs 
)

◆ ModuloInPlace()

ENGINE_API EValueType UE::Shader::ModuloInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Mul()

ENGINE_API FValue UE::Shader::Mul ( const FValue Lhs,
const FValue Rhs 
)

◆ MulInPlace()

ENGINE_API EValueType UE::Shader::MulInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Neg()

ENGINE_API FValue UE::Shader::Neg ( const FValue Value)

◆ NegInPlace()

ENGINE_API EValueType UE::Shader::NegInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ NormalizeInPlace()

EValueType UE::Shader::NormalizeInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ operator!=() [1/5]

bool UE::Shader::operator!= ( const EValueType Lhs,
const FType Rhs 
)
inline

◆ operator!=() [2/5]

bool UE::Shader::operator!= ( const FComponentBounds Lhs,
const FComponentBounds Rhs 
)
inline

◆ operator!=() [3/5]

bool UE::Shader::operator!= ( const FType Lhs,
const EValueType Rhs 
)
inline

◆ operator!=() [4/5]

bool UE::Shader::operator!= ( const FType Lhs,
const FType Rhs 
)
inline

◆ operator!=() [5/5]

bool UE::Shader::operator!= ( const FValue Lhs,
const FValue Rhs 
)
inline

◆ operator==() [1/5]

bool UE::Shader::operator== ( const EValueType Lhs,
const FType Rhs 
)
inline

◆ operator==() [2/5]

bool UE::Shader::operator== ( const FComponentBounds Lhs,
const FComponentBounds Rhs 
)
inline

◆ operator==() [3/5]

bool UE::Shader::operator== ( const FType Lhs,
const EValueType Rhs 
)
inline

◆ operator==() [4/5]

bool UE::Shader::operator== ( const FType Lhs,
const FType Rhs 
)
inline

◆ operator==() [5/5]

ENGINE_API bool UE::Shader::operator== ( const FValue Lhs,
const FValue Rhs 
)

◆ PreshaderComputeDebugStats()

ENGINE_API void UE::Shader::PreshaderComputeDebugStats ( const FUniformExpressionSet UniformExpressionSet,
const FMaterialRenderContext Context,
FPreshaderDataContext &RESTRICT  Data,
uint32 TotalParameters,
uint32 TotalOps 
)

◆ PreshaderGenerateDebugString()

ENGINE_API FString UE::Shader::PreshaderGenerateDebugString ( const FUniformExpressionSet UniformExpressionSet,
const FMaterialRenderContext Context,
FPreshaderDataContext &RESTRICT  Data,
TMap< FString, uint32 > *  ParameterReferences 
)

◆ Rcp()

ENGINE_API FValue UE::Shader::Rcp ( const FValue Value)

◆ RcpInPlace()

ENGINE_API EValueType UE::Shader::RcpInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ ReadPreshaderValue< FHashedMaterialParameterInfo >()

template<>
FHashedMaterialParameterInfo UE::Shader::ReadPreshaderValue< FHashedMaterialParameterInfo > ( FPreshaderDataContext &RESTRICT  Data)

◆ ReadPreshaderValue< FName >()

template<>
FName UE::Shader::ReadPreshaderValue< FName > ( FPreshaderDataContext &RESTRICT  Data)
delete

◆ ReadPreshaderValue< FPreshaderType >()

template<>
FPreshaderType UE::Shader::ReadPreshaderValue< FPreshaderType > ( FPreshaderDataContext &RESTRICT  Data)

◆ ReadPreshaderValue< FScriptName >()

template<>
FScriptName UE::Shader::ReadPreshaderValue< FScriptName > ( FPreshaderDataContext &RESTRICT  Data)

◆ ReadPreshaderValue< uint8 >()

template<>
uint8 UE::Shader::ReadPreshaderValue< uint8 > ( FPreshaderDataContext &RESTRICT  Data)
inline

◆ Round()

ENGINE_API FValue UE::Shader::Round ( const FValue Value)

◆ RoundInPlace()

ENGINE_API EValueType UE::Shader::RoundInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Saturate()

ENGINE_API FValue UE::Shader::Saturate ( const FValue Value)

◆ SaturateInPlace()

ENGINE_API EValueType UE::Shader::SaturateInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Sign()

ENGINE_API FValue UE::Shader::Sign ( const FValue Value)

◆ SignInPlace()

ENGINE_API EValueType UE::Shader::SignInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Sin()

ENGINE_API FValue UE::Shader::Sin ( const FValue Value)

◆ SinInPlace()

ENGINE_API EValueType UE::Shader::SinInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Sqrt()

ENGINE_API FValue UE::Shader::Sqrt ( const FValue Value)

◆ SqrtInPlace()

ENGINE_API EValueType UE::Shader::SqrtInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Sub()

ENGINE_API FValue UE::Shader::Sub ( const FValue Lhs,
const FValue Rhs 
)

◆ SubInPlace()

ENGINE_API EValueType UE::Shader::SubInPlace ( EValueType  LhsType,
EValueType  RhsType,
TArrayView< FValueComponent Component,
int32 OutComponentsConsumed 
)

◆ Tan()

ENGINE_API FValue UE::Shader::Tan ( const FValue Value)

◆ TanInPlace()

ENGINE_API EValueType UE::Shader::TanInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

◆ Trunc()

ENGINE_API FValue UE::Shader::Trunc ( const FValue Value)

◆ TruncInPlace()

ENGINE_API EValueType UE::Shader::TruncInPlace ( EValueType  Type,
TArrayView< FValueComponent Component 
)

Variable Documentation

◆ GValueTypeDescriptions

const FValueTypeDescription UE::Shader::GValueTypeDescriptions[]

◆ NumValueTypes

constexpr int32 UE::Shader::NumValueTypes = (int32)EValueType::Num
inlineconstexpr