UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
CanvasRenderTarget2D.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#include "CanvasRenderTarget2D.generated.h"
11
12class UCanvas;
13
16
17
26UCLASS(BlueprintType, Blueprintable, MinimalAPI)
29{
31
32public:
33 ENGINE_API virtual void UpdateResourceWithParams(EUpdateResourceFlags InFlags) override;
34
43 UFUNCTION(BlueprintCallable, Category="Canvas Render Target 2D")
44 void UpdateResource() { UpdateResourceWithParams(EUpdateResourceFlags::None); }
45
56 UFUNCTION(BlueprintCallable, Category="Canvas Render Target 2D",meta=(WorldContext="WorldContextObject" ))
57 static ENGINE_API UCanvasRenderTarget2D* CreateCanvasRenderTarget2D(UObject* WorldContextObject, TSubclassOf<UCanvasRenderTarget2D> CanvasRenderTarget2DClass, int32 Width = 1024, int32 Height = 1024);
58
66 UFUNCTION(BlueprintImplementableEvent, Category="Canvas Render Target 2D")
67 ENGINE_API void ReceiveUpdate(UCanvas* Canvas, int32 Width, int32 Height);
68
75 UFUNCTION(BlueprintPure, Category="Canvas Render Target 2D")
76 ENGINE_API void GetSize(int32& Width, int32& Height);
77
78
80 UPROPERTY(BlueprintAssignable, Category="Canvas Render Target 2D")
81 FOnCanvasRenderTargetUpdate OnCanvasRenderTargetUpdate;
82
83 // UObject overrides
84 ENGINE_API virtual UWorld* GetWorld() const override;
85
87 ENGINE_API void FastUpdateResource();
88
89 inline bool ShouldClearRenderTargetOnReceiveUpdate() const { return bShouldClearRenderTargetOnReceiveUpdate; }
94
95 UFUNCTION(BlueprintGetter)
96 ENGINE_API virtual ETextureRenderTargetSampleCount GetSampleCount() const override;
97
98 UFUNCTION(BlueprintSetter)
100
101#if WITH_EDITOR
102 ENGINE_API virtual bool CanEditChange(const FProperty* InProperty) const override;
103 ENGINE_API virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
104#endif // WITH_EDITOR
105
106protected:
107
108 ENGINE_API void RepaintCanvas();
109
110 void OnSampleCountChanged();
111
112 /* The world this render target will be used with */
113 UPROPERTY()
115
117 UPROPERTY(EditAnywhere, BlueprintGetter = GetSampleCount, BlueprintSetter = SetSampleCount, Category = TextureRenderTarget2D, AssetRegistrySearchable, AdvancedDisplay, meta = (AllowPrivateAccess = "true"))
119
120 // If true, clear the render target to green whenever OnReceiveUpdate() is called. (Defaults to true.)
121 // If false, the render target will retain whatever values it had, allowing the user to update only areas that
122 // have changed.
124 bool bShouldClearRenderTargetOnReceiveUpdate;
125};
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
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
#define DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(DelegateName, Param1Type, Param1Name, Param2Type, Param2Name, Param3Type, Param3Name)
Definition DelegateCombinations.h:71
return true
Definition ExternalRpcRegistry.cpp:601
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define UFUNCTION(...)
Definition ObjectMacros.h:745
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
ETextureRenderTargetSampleCount
Definition TextureRenderTarget2D.h:71
Definition UnrealType.h:174
Definition SubclassOf.h:30
Definition CanvasRenderTarget2D.h:29
void SetShouldClearRenderTargetOnReceiveUpdate(bool bInShouldClearRenderTargetOnReceiveUpdate)
Definition CanvasRenderTarget2D.h:90
Definition Canvas.h:159
FCanvas * Canvas
Definition Canvas.h:221
Definition Object.h:95
Definition TextureRenderTarget2D.h:104
EUpdateResourceFlags
Definition Texture.h:1697
Definition World.h:918
Definition UnrealType.h:6865
Definition WeakObjectPtrTemplates.h:25