UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
LandscapeBlueprintBrushBase.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
10
11#include "LandscapeBlueprintBrushBase.generated.h"
12
14
15USTRUCT(BlueprintType)
17{
19
22
23 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
24 FTransform RenderAreaWorldTransform;
25
26 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
28
29 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
31
32 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
34
35 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
36 FName WeightmapLayerName;
37};
38
39
40UCLASS(Abstract, NotPlaceable, NotBlueprintable, MinimalAPI)
42#if CPP && WITH_EDITOR // UHT doesn't support inheriting from namespaced class
44 , public UE::Landscape::EditLayers::IEditLayerRendererProvider
45#endif // CPP && WITH_EDITOR
46{
48
49protected:
50 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
51 bool UpdateOnPropertyChange;
52
53 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite, Setter = "SetCanAffectHeightmap")
54 bool AffectHeightmap;
55
56 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite, Setter = "SetCanAffectWeightmap")
57 bool AffectWeightmap;
58
59 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite, Setter="SetCanAffectVisibilityLayer")
60 bool AffectVisibilityLayer;
61
62 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite)
63 TArray<FName> AffectedWeightmapLayers;
64
69 UPROPERTY(Category = "Settings", EditAnywhere, BlueprintReadWrite, Setter="SetCanAffectVisibilityLayer")
70 bool bUsePowerOfTwoRenderTarget = true;
71
72#if WITH_EDITORONLY_DATA
75
77 bool bIsVisible;
78
80
84#endif // WITH_EDITORONLY_DATA
85
86public:
87 UFUNCTION(BlueprintNativeEvent, meta = (DeprecatedFunction, DeprecationMessage = "Please use RenderLayer instead."))
89
90 UFUNCTION(BlueprintNativeEvent)
93
94 UFUNCTION(BlueprintNativeEvent)
97
98 UFUNCTION(BlueprintCallable, Category = "Landscape")
99 LANDSCAPE_API void RequestLandscapeUpdate(bool bInUserTriggered = false);
100
101 UFUNCTION(BlueprintImplementableEvent, CallInEditor)
102 LANDSCAPE_API void GetBlueprintRenderDependencies(TArray<UObject*>& OutStreamableAssets);
103
104 LANDSCAPE_API void SetCanAffectHeightmap(bool bInCanAffectHeightmap);
105 LANDSCAPE_API void SetCanAffectWeightmap(bool bInCanAffectWeightmap);
106 LANDSCAPE_API void SetCanAffectVisibilityLayer(bool bInCanAffectVisibilityLayer);
107 LANDSCAPE_API void SetUsePowerOfTwoRenderTarget(bool bInUsePowerOfTwoRenderTarget);
108
109#if WITH_EDITOR
110 //~ Begin ILandscapeEditLayerRenderer implementation
111 LANDSCAPE_API virtual void GetRendererStateInfo(const UE::Landscape::EditLayers::FMergeContext* InMergeContext,
112 UE::Landscape::EditLayers::FEditLayerTargetTypeState& OutSupportedTargetTypeState, UE::Landscape::EditLayers::FEditLayerTargetTypeState& OutEnabledTargetTypeState,
114 virtual UE::Landscape::EditLayers::ERenderFlags GetRenderFlags(const UE::Landscape::EditLayers::FMergeContext* InMergeContext) const override { return UE::Landscape::EditLayers::ERenderFlags::RenderMode_Immediate; }
115 LANDSCAPE_API virtual TArray<UE::Landscape::EditLayers::FEditLayerRenderItem> GetRenderItems(const UE::Landscape::EditLayers::FMergeContext* InMergeContext) const override;
116 LANDSCAPE_API virtual bool RenderLayer(UE::Landscape::EditLayers::FRenderParams& RenderParams, UE::Landscape::FRDGBuilderRecorder& RDGBuilderRecorder) override;
117 LANDSCAPE_API virtual FString GetEditLayerRendererDebugName() const override;
118 //~ End ILandscapeEditLayerRenderer implementation
119
120 //~ Begin UE::Landscape::EditLayers::IEditLayerRendererProvider implementation
122 //~ End UE::Landscape::EditLayers::IEditLayerRendererProvider implementation
123
125
126 LANDSCAPE_API virtual void CheckForErrors() override;
127
128 LANDSCAPE_API virtual void GetRenderDependencies(TSet<UObject*>& OutDependencies);
129
132
136 bool CanAffectHeightmap() const { return AffectHeightmap; }
137 bool CanAffectWeightmap() const { return AffectWeightmap; }
138 bool CanAffectVisibilityLayer() const { return AffectVisibilityLayer; }
139 LANDSCAPE_API virtual bool CanAffectWeightmapLayer(const FName& InLayerName) const;
140 LANDSCAPE_API virtual bool AffectsHeightmap() const;
141 LANDSCAPE_API virtual bool AffectsWeightmap() const;
142 LANDSCAPE_API virtual bool AffectsWeightmapLayer(const FName& InLayerName) const;
143 LANDSCAPE_API virtual bool AffectsVisibilityLayer() const;
144 virtual bool SupportsBlueprintBrushTool() const { return true; }
145
146 bool IsVisible() const { return bIsVisible; }
148
149 LANDSCAPE_API void SetIsVisible(bool bInIsVisible);
150
151 LANDSCAPE_API virtual bool ShouldTickIfViewportsOnly() const override;
152 LANDSCAPE_API virtual void Tick(float DeltaSeconds) override;
153 LANDSCAPE_API virtual void PostEditMove(bool bFinished) override;
154 LANDSCAPE_API virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
155 LANDSCAPE_API virtual void PostEditUndo() override;
156 LANDSCAPE_API virtual void Destroyed() override;
157
159
160 virtual bool CanChangeIsSpatiallyLoadedFlag() const override { return false; }
161#endif // WITH_EDITOR
162};
@ ForceInitToZero
Definition CoreMiscDefines.h:156
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
ELandscapeToolTargetType
Definition LandscapeEditTypes.h:12
FInt32Point FIntPoint
Definition MathFwd.h:124
const bool
Definition NetworkReplayStreaming.h:178
#define MAX_int32
Definition NumericLimits.h:25
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define USTRUCT(...)
Definition ObjectMacros.h:746
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Actor.h:257
Definition LandscapeBlueprintBrushBase.h:46
Definition NameTypes.h:617
Definition LandscapeEditLayerRenderer.h:260
Definition Array.h:670
Definition LandscapeUtils.h:106
Definition Object.h:95
Definition TextureRenderTarget2D.h:104
@ false
Definition radaudio_common.h:23
Definition LandscapeBlueprintBrushBase.h:17
Definition UnrealType.h:6865
Definition ObjectPtr.h:488
Definition IntPoint.h:25