15#include "StaticParameterSet.generated.h"
40 ExpressionGUID(0, 0, 0, 0)
61 return ParameterInfo == Reference.ParameterInfo && bOverride == Reference.bOverride && ExpressionGUID == Reference.ExpressionGUID;
73 const FString ParameterName = ParameterInfo.ToString();
74 HashState.
Update((
const uint8*)*ParameterName, ParameterName.Len() *
sizeof(
TCHAR));
75 HashState.
Update((
const uint8*)&ExpressionGUID,
sizeof(ExpressionGUID));
80 ENGINE_API void AppendKeyString(FString& KeyString)
const;
116 Ar << P.ParameterInfo.Name;
120 Ar << P.ParameterInfo;
122 Ar << P.Value << P.bOverride << P.ExpressionGUID;
133 ENGINE_API void AppendKeyString(FString& KeyString)
const;
139#if WITH_EDITORONLY_DATA
140 OutResult.ExpressionGuid = ExpressionGUID;
193 Ar << P.ParameterInfo.Name;
197 Ar << P.ParameterInfo;
199 Ar << P.R << P.G << P.B << P.A << P.bOverride << P.ExpressionGUID;
211 HashState.
Update((
const uint8*)&Values,
sizeof(Values));
214 ENGINE_API void AppendKeyString(FString& KeyString)
const;
220#if WITH_EDITORONLY_DATA
221 OutResult.ExpressionGuid = ExpressionGUID;
247 UE_DEPRECATED(
all,
"ParameterInfo_DEPRECATED remains in the code for backwards-compatibility reasons but shall not be used")
251 UE_DEPRECATED(5.7, "ExpressionGUID_DEPRECATED is
now unused and will be
removed in a
future version")
257 bool bOverride_DEPRECATED =
true;
265 UE_DEPRECATED(5.7, "bIsRepeatedLayer is
now unused and will be
removed in a
future version")
269 UE_DEPRECATED(5.7, "bWeightBasedBlend is
now unused and will be
removed in a
future version")
279 UE_DEPRECATED(5.7,
"bWeightBasedBlend being deprecated, this constructor is now useless")
293 return LayerName == Reference.LayerName && WeightmapIndex == Reference.WeightmapIndex;
302#if WITH_EDITORONLY_DATA
309 Ar << P.ParameterInfo_DEPRECATED;
310 P.LayerName = P.ParameterInfo_DEPRECATED.Name;
326 Ar << P.WeightmapIndex;
327#if WITH_EDITORONLY_DATA
330 Ar << P.bOverride_DEPRECATED;
345 HashState.
Update((
const uint8*)&WeightmapIndex,
sizeof(WeightmapIndex));
347 ENGINE_API void AppendKeyString(FString& KeyString)
const;
360 FMaterialLayersFunctions::ID Functions;
364 P.ParameterID.SerializeBase(Ar);
365 P.Functions.SerializeForDDC(Ar);
377 Ar << P.ParameterInfo << P.bOverride << P.ExpressionGUID;
381 P.Value.SerializeLegacy(Ar);
412 StaticSwitchParameters.
Empty();
413 MaterialLayers.
Empty();
414 bHasMaterialLayers =
false;
419 return StaticSwitchParameters.Num() == 0 && !bHasMaterialLayers;
447 StaticComponentMaskParameters.Empty();
448 TerrainLayerWeightParameters.Empty();
449 MaterialLayers.Empty();
454 return StaticComponentMaskParameters.Num() == 0 && TerrainLayerWeightParameters.Num() == 0;
465#if WITH_EDITORONLY_DATA
518 void PostSerialize(
const FArchive& Ar);
535#if WITH_EDITORONLY_DATA
541#if WITH_EDITORONLY_DATA
557 void SortForEquivalent();
559#if WITH_EDITORONLY_DATA
#define check(expr)
Definition AssertionMacros.h:314
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
FArchive & operator<<(FArchive &Ar, FEnvQueryDebugProfileData::FStep &Data)
Definition EnvQueryTypes.cpp:489
return true
Definition ExternalRpcRegistry.cpp:601
EMaterialParameterType
Definition MaterialParameters.h:187
EMaterialSetParameterValueFlags
Definition MaterialParameters.h:271
void SerializeLegacy(FArchive &Ar, FAttributesSetBase &AttributesSet)
Definition MeshAttributeArray.cpp:41
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition Archive.h:1208
virtual CORE_API void UsingCustomVersion(const struct FGuid &Guid)
Definition Archive.cpp:590
CORE_API int32 CustomVer(const struct FGuid &Key) const
Definition Archive.cpp:602
Definition NameTypes.h:617
Definition SecureHash.h:314
CORE_API void Update(const uint8 *data, uint64 len)
Definition SecureHash.cpp:1205
Definition ShaderKeyGenerator.h:29
Definition UnrealString.h.inl:34
@ false
Definition radaudio_common.h:23
CORE_API static const FGuid GUID
Definition FortniteMainBranchObjectVersion.h:21
Definition MaterialLayersFunctions.h:57
Definition MaterialLayersFunctions.h:131
void Empty()
Definition MaterialLayersFunctions.h:165
Definition MaterialLayersFunctions.h:221
Definition MaterialParameters.h:33
Definition MaterialParameters.h:341
CORE_API static const FGuid GUID
Definition ReleaseObjectVersion.h:154
@ MaterialLayersParameterSerializationRefactor
Definition ReleaseObjectVersion.h:48
CORE_API static const FGuid GUID
Definition RenderingObjectVersion.h:148
@ MaterialAttributeLayerParameters
Definition RenderingObjectVersion.h:63
Definition StaticParameterSet.h:152
bool operator==(const FStaticComponentMaskParameter &Reference) const
Definition StaticParameterSet.h:183
void UpdateHash(FSHA1 &HashState) const
Definition StaticParameterSet.h:203
bool IsValid() const
Definition StaticParameterSet.h:225
void GetValue(FMaterialParameterMetadata &OutResult) const
Definition StaticParameterSet.h:217
friend FArchive & operator<<(FArchive &Ar, FStaticComponentMaskParameter &P)
Definition StaticParameterSet.h:188
FStaticComponentMaskParameter(const FMaterialParameterInfo &InInfo, bool InR, bool InG, bool InB, bool InA, bool InOverride, FGuid InGuid)
Definition StaticParameterSet.h:175
Definition StaticParameterSet.h:354
Definition StaticParameterSet.h:26
bool IsOverride() const
Definition StaticParameterSet.h:49
void SerializeBase(FArchive &Ar)
Definition StaticParameterSet.h:64
FStaticParameterBase(const FMaterialParameterInfo &InInfo, bool InOverride, FGuid InGuid)
Definition StaticParameterSet.h:43
void UpdateHash(FSHA1 &HashState) const
Definition StaticParameterSet.h:71
bool operator==(const FStaticParameterBase &Reference) const
Definition StaticParameterSet.h:59
friend FArchive & operator<<(FArchive &Ar, FStaticParameterBase &P)
Definition StaticParameterSet.h:51
Definition StaticParameterSet.h:425
Definition StaticParameterSet.h:390
bool IsEmpty() const
Definition StaticParameterSet.h:417
FStaticParameterSetRuntimeData(const FStaticParameterSet &Rhs)=delete
FStaticParameterSetRuntimeData & operator=(const FStaticParameterSetRuntimeData &Rhs)=default
FStaticParameterSetRuntimeData & operator=(const FStaticParameterSet &Rhs)=delete
void Empty()
Definition StaticParameterSet.h:410
FStaticParameterSetRuntimeData(const FStaticParameterSetRuntimeData &Rhs)=default
Definition StaticParameterSet.h:462
FStaticParameterSet & operator=(const FStaticParameterSetRuntimeData &InValue)=delete
FStaticParameterSet(const FStaticParameterSetRuntimeData &)=delete
friend bool operator!=(const FStaticParameterSet &, const FStaticParameterSetRuntimeData &)=delete
const FStaticParameterSetRuntimeData & GetRuntime() const
Definition StaticParameterSet.h:478
bool operator!=(const FStaticParameterSet &ReferenceSet) const
Definition StaticParameterSet.h:528
void Empty()
Definition StaticParameterSet.h:494
FStaticParameterSetRuntimeData & GetRuntime()
Definition StaticParameterSet.h:477
friend bool operator!=(const FStaticParameterSetRuntimeData &, const FStaticParameterSet &)=delete
friend bool operator==(const FStaticParameterSetRuntimeData &, const FStaticParameterSet &)=delete
friend bool operator==(const FStaticParameterSet &, const FStaticParameterSetRuntimeData &)=delete
FStaticParameterSet()=default
bool IsEmpty() const
Definition StaticParameterSet.h:485
ENGINE_API FStaticParameterSet(const FStaticParameterSet &InValue)
bool GetMaterialLayers(FMaterialLayersFunctions &OutMaterialLayers) const
Definition StaticParameterSet.h:90
void UpdateHash(FSHA1 &HashState) const
Definition StaticParameterSet.h:126
void GetValue(FMaterialParameterMetadata &OutResult) const
Definition StaticParameterSet.h:136
bool operator==(const FStaticSwitchParameter &Reference) const
Definition StaticParameterSet.h:106
bool IsValid() const
Definition StaticParameterSet.h:144
FStaticSwitchParameter(const FMaterialParameterInfo &InInfo, bool InValue, bool InOverride, FGuid InGuid)
Definition StaticParameterSet.h:101
friend FArchive & operator<<(FArchive &Ar, FStaticSwitchParameter &P)
Definition StaticParameterSet.h:111
Definition StaticParameterSet.h:235
friend FArchive & operator<<(FArchive &Ar, FStaticTerrainLayerWeightParameter &P)
Definition StaticParameterSet.h:296
void UpdateHash(FSHA1 &HashState) const
Definition StaticParameterSet.h:341
PRAGMA_DISABLE_DEPRECATION_WARNINGS FStaticTerrainLayerWeightParameter()=default
FStaticTerrainLayerWeightParameter(FStaticTerrainLayerWeightParameter &&)=default
FStaticTerrainLayerWeightParameter(const FName &InName, int32 InWeightmapIndex)
Definition StaticParameterSet.h:286
FStaticTerrainLayerWeightParameter(const FStaticTerrainLayerWeightParameter &)=default
FStaticTerrainLayerWeightParameter & operator=(FStaticTerrainLayerWeightParameter &&)=default
bool operator==(const FStaticTerrainLayerWeightParameter &Reference) const
Definition StaticParameterSet.h:291
FStaticTerrainLayerWeightParameter & operator=(const FStaticTerrainLayerWeightParameter &)=default
Definition StructOpsTypeTraits.h:11
@ WithPostSerialize
Definition StructOpsTypeTraits.h:25
Definition StructOpsTypeTraits.h:46