UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MaterialExpressionNoise.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3
4#pragma once
5
6#include "CoreMinimal.h"
11#include "MaterialExpressionNoise.generated.h"
12
13UENUM()
15{
20 NOISEFUNCTION_SimplexTex UMETA(DisplayName="Simplex - Texture Based"),
21
28 NOISEFUNCTION_GradientTex UMETA(DisplayName="Gradient - Texture Based"),
29
34 NOISEFUNCTION_GradientTex3D UMETA(DisplayName = "Fast Gradient - 3D Texture"),
35
40 NOISEFUNCTION_GradientALU UMETA(DisplayName = "Gradient - Computational"),
41
47 NOISEFUNCTION_ValueALU UMETA(DisplayName="Value - Computational"),
48
54 NOISEFUNCTION_VoronoiALU UMETA(DisplayName = "Voronoi"),
55
57};
58
59UCLASS(MinimalAPI)
61{
63
64
65 UPROPERTY()
67
69 UPROPERTY(EditAnywhere, Category = MaterialExpressionNoise)
70 EPositionOrigin WorldPositionOriginType = EPositionOrigin::Absolute;
71
73 UPROPERTY()
74 FExpressionInput FilterWidth;
75
77 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise)
78 float Scale;
79
81 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise, meta=(UIMin = "1", UIMax = "4"))
82 int32 Quality;
83
85 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise, meta=(DisplayName = "Function"))
87
89 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise)
90 uint32 bTurbulence:1;
91
93 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise, meta=(UIMin = "1", UIMax = "10"))
94 int32 Levels;
95
96 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise)
97 float OutputMin;
98
99 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise)
100 float OutputMax;
101
103 UPROPERTY(EditAnywhere, Category=MaterialExpressionNoise, meta=(UIMin = "2", UIMax = "8"))
104 float LevelScale;
105
107 UPROPERTY(EditAnywhere, Category = MaterialExpressionNoise)
108 uint32 bTiling:1;
109
111 UPROPERTY(EditAnywhere, Category = MaterialExpressionNoise, meta=(UIMin = "4"))
112 uint32 RepeatSize;
113
114 //~ Begin UMaterialExpression Interface
115#if WITH_EDITOR
116 virtual void Build(MIR::FEmitter& Emitter) override;
117 virtual bool CanEditChange(const FProperty* InProperty) const override;
118 virtual FName GetInputName(int32 InputIndex) const override;
119 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
120 virtual int32 Compile(class FMaterialCompiler* Compiler, int32 OutputIndex) override;
121 virtual void GetCaption(TArray<FString>& OutCaptions) const override;
122#endif
123 //~ End UMaterialExpression Interface
124};
125
126UCLASS(MinimalAPI)
128{
130
131 // Later, we could add a 2D Position input if needed to overide pixel position
132
133 //~ Begin UMaterialExpression Interface
134#if WITH_EDITOR
135 virtual EMaterialValueType GetOutputValueType(int32 OutputIndex) override;
136 virtual int32 Compile(class FMaterialCompiler* Compiler, int32 OutputIndex) override;
137 virtual void GetCaption(TArray<FString>& OutCaptions) const override;
138 virtual void GetExpressionToolTip(TArray<FString>& OutToolTip) override;
139 virtual void GetConnectorToolTip(int32 InputIndex, int32 OutputIndex, TArray<FString>& OutToolTip) override;
140#endif
141 //~ End UMaterialExpression Interface
142};
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
ENoiseFunction
Definition MaterialExpressionNoise.h:15
@ NOISEFUNCTION_MAX
Definition MaterialExpressionNoise.h:56
@ UMETA
Definition MaterialExpressionNoise.h:20
EPositionOrigin
Definition MaterialExpression.h:645
EMaterialValueType
Definition MaterialValueType.h:15
#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
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition MaterialCompiler.h:109
Definition NameTypes.h:617
Definition UnrealType.h:174
Definition Array.h:670
Definition EnumAsByte.h:22
Definition MaterialExpressionExternalCodeBase.h:11
Definition MaterialExpressionNoise.h:61
Definition MaterialExpressionNoise.h:128
Definition MaterialExpression.h:150
Definition MaterialExpressionIO.h:23
Definition UnrealType.h:6865