UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MaterialExpressionCollectionTransform.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
7#pragma once
8
9#include "CoreMinimal.h"
11#include "Misc/Guid.h"
13#include "MaterialExpressionCollectionTransform.generated.h"
14
16
17UENUM()
19{
20 Position UMETA(ToolTip = "Float 4x4 matrix (includes translation, 4 input elements, output float3 or float4 depending on input)"),
21 Vector UMETA(ToolTip = "Float 3x3 matrix (rotation only, 3 input elements, output float3)"),
22 Projection UMETA(ToolTip = "Float 4x4 projection matrix (optimized assuming only m11 m22 m33 m34 m43 m44 non-zero, 4 input elements, output float4)"),
23 LocalToWorld UMETA(ToolTip = "LWC matrix (float 4x4, post tile offset, 5 vector elements, output LWC float3)"),
24 WorldToLocal UMETA(ToolTip = "LWC inverse matrix (float 4x4, pre tile offset, 5 vector elements, output float3 or float4 depending on input)")
25};
26
27// Node that uses 3 to 5 consecutive vector elements of a Material Parameter Collection as a Transform matrix
28UCLASS(hidecategories = object, MinimalAPI)
30{
32
33 UPROPERTY()
35
39
42 FName ParameterName;
43
45 UPROPERTY()
46 FGuid ParameterId;
47
50
51 //~ Begin UObject Interface.
52#if WITH_EDITOR
53 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
54#endif // WITH_EDITOR
55 virtual void PostLoad() override;
56 //~ End UObject Interface.
57
58 //~ Begin UMaterialExpression Interface
59#if WITH_EDITOR
60 virtual void Build(MIR::FEmitter& Emitter) override;
61 virtual int32 Compile(class FMaterialCompiler* Compiler, int32 OutputIndex) override;
62 virtual void GetCaption(TArray<FString>& OutCaptions) const override;
63
64 virtual bool HasAParameterName() const override { return true; }
65 virtual FName GetParameterName() const override { return ParameterName; }
66 virtual void SetParameterName(const FName& Name) override { ParameterName = Name; }
67 virtual void ValidateParameterName(const bool bAllowDuplicateName) override {};
68
69 virtual bool MatchesSearchQuery( const TCHAR* SearchQuery ) override;
70#endif
71 //~ End UMaterialExpression Interface
72};
FPlatformTypes::TCHAR TCHAR
Either ANSICHAR or WIDECHAR, depending on whether the platform supports wide characters or the requir...
Definition Platform.h:1135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EParameterCollectionTransformType
Definition MaterialExpressionCollectionTransform.h:19
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
AUTORTFM_INFER constexpr auto Projection(Invocable0Type &&Invocable0, InvocableTypes &&... Invocables)
Definition Projection.h:108
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition MaterialCompiler.h:109
Definition NameTypes.h:617
Definition Array.h:670
Definition MaterialExpressionCollectionTransform.h:30
Definition MaterialExpression.h:150
Definition MaterialExpressionIO.h:23
Definition Guid.h:109
Definition UnrealType.h:6865
Definition ObjectPtr.h:488