UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
RenderingCommon.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"
6#include "Stats/Stats.h"
7#include "Layout/SlateRect.h"
9#include "Input/CursorReply.h"
10#include "Input/Reply.h"
13#include "PixelFormat.h"
16#include "SlateGlobals.h"
17#include <type_traits>
18#include <utility>
19
20#include "RenderingCommon.generated.h"
21
23class FRHIBuffer;
24class FRDGBuilder;
25class FRDGTexture;
27class FSlateInstanceBufferUpdate;
28class FWidgetStyle;
29class SWidget;
30
33
35
36#define UE_SLATE_VERIFY_PIXELSIZE UE_BUILD_DEBUG
37
38#define SLATE_USE_32BIT_INDICES !PLATFORM_USES_GLES
39
40#if SLATE_USE_32BIT_INDICES
42#else
43typedef uint16 SlateIndex;
44#endif
49{
50 None,
53};
54
59enum class ESlateShader : uint8
60{
62 Default = 0,
64 Border = 1,
66 GrayscaleFont = 2,
68 ColorFont = 3,
70 LineSegment = 4,
72 Custom = 5,
74 PostProcess = 6,
76 RoundedBox = 7,
78 SdfFont = 8,
80 MsdfFont = 9,
81};
82
89{
91 None = 0,
93 NoBlending = 1 << 0,
95 PreMultipliedAlpha = 1 << 1,
97 NoGamma = 1 << 2,
99 InvertAlpha = 1 << 3,
100
101 // ^^ These Match ESlateBatchDrawFlag ^^
102
104 NoPixelSnapping = 1 << 4,
106 DisabledEffect = 1 << 5,
108 IgnoreTextureAlpha = 1 << 6,
109
111 ReverseGamma = 1 << 7
112};
113
115
118{
120 None = 0,
122 NoBlending = 1 << 0,
124 PreMultipliedAlpha = 1 << 1,
126 NoGamma = 1 << 2,
128 InvertAlpha = 1 << 3,
129
130 // ^^ These Match ESlateDrawEffect ^^
131
133 Wireframe = 1 << 4,
135 TileU = 1 << 5,
137 TileV = 1 << 6,
139 ReverseGamma = 1 << 7,
141 HDR = 1 << 8
142};
143
145
147{
148 // Joins line segments with a sharp edge (miter)
149 Sharp = 0,
150 // Simply stitches together line segments
151 Simple = 1,
152};
153
154
158UENUM()
160{
161 NormalVision UMETA(DisplayName="Normal Vision"),
162 Deuteranope UMETA(DisplayName="Deuteranope (green weak/blind) (7% of males, 0.4% of females)"),
163 Protanope UMETA(DisplayName="Protanope (red weak/blind) (2% of males, 0.01% of females)"),
164 Tritanope UMETA(DisplayName="Tritanope (blue weak/blind) (0.0003% of males)"),
165};
166
167
169{
170 Disabled,
171 Enabled
172};
173
175{
176 SDR,
177 HDR
178};
179
181
182
215
216
221{
223 float TexCoords[4];
224
227
230
233
236
239
241 {}
242
243public:
244
245 template<ESlateVertexRounding Rounding>
247 {
250 Vertex.TexCoords[1] = InTexCoord.Y;
251 Vertex.TexCoords[2] = InTexCoord2.X;
252 Vertex.TexCoords[3] = InTexCoord2.Y;
254
255 return Vertex;
256 }
257
258 template<ESlateVertexRounding Rounding>
260 {
263 Vertex.TexCoords[1] = InTexCoord.Y;
264 Vertex.TexCoords[2] = 1.0f;
265 Vertex.TexCoords[3] = 1.0f;
267
268 return Vertex;
269 }
270
271 template<ESlateVertexRounding Rounding>
273 {
276 Vertex.TexCoords[1] = InTexCoords.Y;
277 Vertex.TexCoords[2] = InTexCoords.Z;
278 Vertex.TexCoords[3] = InTexCoords.W;
279 Vertex.MaterialTexCoords = InMaterialTexCoords;
281
282 return Vertex;
283 }
284
285 template<ESlateVertexRounding Rounding>
287 {
290 Vertex.TexCoords[1] = InTexCoords.Y;
291 Vertex.TexCoords[2] = InTexCoords.Z;
292 Vertex.TexCoords[3] = InTexCoords.W;
293 Vertex.MaterialTexCoords = FVector2f(InLocalPosition.X / InLocalSize.X, InLocalPosition.Y / InLocalSize.Y);
295
296 const int32 PixelSizeX = FMath::RoundToInt(InLocalSize.X * Scale);
297 const int32 PixelSizeY = FMath::RoundToInt(InLocalSize.Y * Scale);
298 Vertex.PixelSize[0] = (uint16)PixelSizeX;
299 Vertex.PixelSize[1] = (uint16)PixelSizeY;
300
301#if UE_SLATE_VERIFY_PIXELSIZE
302 ensureMsgf((int32)Vertex.PixelSize[0] == PixelSizeX, TEXT("Conversion of PixelSizeX is bigger than 16. Cast:%d, int16:%d, int32:%d")
303 , (int32)Vertex.PixelSize[0], Vertex.PixelSize[0], PixelSizeX);
304 ensureMsgf((int32)Vertex.PixelSize[1] == PixelSizeY, TEXT("Conversion of PixelSizeY is bigger than 16. Cast:%d, int16:%d, int32:%d")
305 , (int32)Vertex.PixelSize[1], Vertex.PixelSize[1], PixelSizeY);
306#endif
307
308 return Vertex;
309 }
310
312 {
314 ? FSlateVertex::Make<ESlateVertexRounding::Enabled>(RenderTransform, InLocalPosition, InTexCoord, InTexCoord2, InColor, SecondaryColor)
315 : FSlateVertex::Make<ESlateVertexRounding::Disabled>(RenderTransform, InLocalPosition, InTexCoord, InTexCoord2, InColor, SecondaryColor);
316 }
317
318
320 {
322 ? FSlateVertex::Make<ESlateVertexRounding::Enabled>(RenderTransform, InLocalPosition, InTexCoord, InColor, SecondaryColor)
323 : FSlateVertex::Make<ESlateVertexRounding::Disabled>(RenderTransform, InLocalPosition, InTexCoord, InColor, SecondaryColor);
324 }
325
326
328 {
330 ? FSlateVertex::Make<ESlateVertexRounding::Enabled>(RenderTransform, InLocalPosition, InTexCoords, InMaterialTexCoords, InColor, SecondaryColor)
331 : FSlateVertex::Make<ESlateVertexRounding::Disabled>(RenderTransform, InLocalPosition, InTexCoords, InMaterialTexCoords, InColor, SecondaryColor);
332 }
333
334
336 {
338 ? FSlateVertex::Make<ESlateVertexRounding::Enabled>(RenderTransform, InLocalPosition, InLocalSize, Scale, InTexCoords, InColor, SecondaryColor)
339 : FSlateVertex::Make<ESlateVertexRounding::Disabled>(RenderTransform, InLocalPosition, InLocalSize, Scale, InTexCoords, InColor, SecondaryColor);
340 }
341
343 {
344 TexCoords[0] = InTexCoords.X;
345 TexCoords[1] = InTexCoords.Y;
346 TexCoords[2] = InTexCoords.Z;
347 TexCoords[3] = InTexCoords.W;
348 }
349
351 {
353 }
354
355private:
356
357 template<ESlateVertexRounding Rounding>
358 inline void InitCommon(const FSlateRenderTransform& RenderTransform, const FVector2f InLocalPosition, const FColor InColor, const FColor InSecondaryColor)
359 {
361
362 if constexpr ( Rounding == ESlateVertexRounding::Enabled )
363 {
364 Position.X = FMath::RoundToFloat(Position.X);
365 Position.Y = FMath::RoundToFloat(Position.Y);
366 }
367
368 Color = InColor;
370 }
371};
372
373template<> struct TIsPODType<FSlateVertex> { enum { Value = true }; };
374static_assert(std::is_trivially_destructible_v<FSlateVertex>, "FSlateVertex should be trivially destructible");
375static_assert(std::is_trivially_copyable_v<FSlateVertex> == true, "FSlateVertex should be trivially copyable");
376
379{
381 : Left(0)
382 , Top(0)
383 , Right(0)
384 , Bottom(0)
385 {
386 }
387
395
396 explicit FShortRect(const FSlateRect& Rect)
397 : Left((uint16)FMath::Clamp(Rect.Left, 0.0f, 65535.0f))
398 , Top((uint16)FMath::Clamp(Rect.Top, 0.0f, 65535.0f))
399 , Right((uint16)FMath::Clamp(Rect.Right, 0.0f, 65535.0f))
400 , Bottom((uint16)FMath::Clamp(Rect.Bottom, 0.0f, 65535.0f))
401 {
402 }
403
404 bool operator==(const FShortRect& RHS) const { return Left == RHS.Left && Top == RHS.Top && Right == RHS.Right && Bottom == RHS.Bottom; }
405 bool operator!=(const FShortRect& RHS) const { return !(*this == RHS); }
406 bool DoesIntersect( const FShortRect& B ) const
407 {
408 const bool bDoNotOverlap =
409 B.Right < Left || Right < B.Left ||
410 B.Bottom < Top || Bottom < B.Top;
411
412 return ! bDoNotOverlap;
413 }
414
415 bool DoesIntersect(const FSlateRect& B) const
416 {
417 const bool bDoNotOverlap =
418 B.Right < Left || Right < B.Left ||
419 B.Bottom < Top || Bottom < B.Top;
420
421 return !bDoNotOverlap;
422 }
423
424 FVector2f GetTopLeft() const { return FVector2f(Left, Top); }
426
431};
432
433template<> struct TIsPODType<FShortRect> { enum { Value = true }; };
434static_assert(std::is_trivially_destructible_v<FShortRect>, "FShortRect should be trivially destructible");
435
436namespace UE::Slate
437{
438 template<typename IndexType, IndexType...Indices>
439 auto MakeTupleIndiciesInner(std::integer_sequence<IndexType, Indices...>)
440 {
441 return MakeTuple<IndexType>(Indices...);
442 };
443
444 template<typename IndexType, std::size_t Num, typename Indices = std::make_integer_sequence<IndexType, Num>>
446 {
447 return MakeTupleIndiciesInner(Indices{});
448 };
449};
450
455#if STATS
456
459
460#else
461
464
465#endif // STATS
466
471{
472public:
473 virtual ~ISlateViewport() {}
474
482 virtual void OnDrawViewport( const FGeometry& AllottedGeometry, const FSlateRect& MyCullingRect, class FSlateWindowElementList& OutDrawElements, int32 LayerId, const FWidgetStyle& InWidgetStyle, bool bParentEnabled ) { }
483
487 virtual FIntPoint GetSize() const = 0;
488
493
498
502 virtual bool IsViewportTextureAlphaOnly() const
503 {
504 return false;
505 }
506
510 virtual bool IsStereoscopic3D() const
511 {
512 return false;
513 }
514
518 virtual bool UseSeparateRenderTarget() const
519 {
520 return false;
521 }
522
530
534 virtual void Tick(const FGeometry& AllottedGeometry, double InCurrentTime, float DeltaTime )
535 {
536 }
537
541 virtual bool RequiresVsync() const = 0;
542
546 virtual bool AllowScaling() const
547 {
548 return true;
549 }
550
560
570
574 virtual bool IsSoftwareCursorVisible() const
575 {
576 return false;
577 }
578
583 {
585 }
586
596 {
597 return FReply::Unhandled();
598 }
599
609 {
610 return FReply::Unhandled();
611 }
612
613
615 {
616
617 }
618
619 virtual void OnMouseLeave( const FPointerEvent& MouseEvent )
620 {
621
622 }
623
633 {
634 return FReply::Unhandled();
635 }
636
646 {
647 return FReply::Unhandled();
648 }
649
662
672 {
673 return FReply::Unhandled();
674 }
675
685 {
686 return FReply::Unhandled();
687 }
688
700
710 {
711 return FReply::Unhandled();
712 }
713
720 {
721 return FReply::Unhandled();
722 }
723
730 {
731 return FReply::Unhandled();
732 }
733
740 {
741 return FReply::Unhandled();
742 }
743
750 {
751 return FReply::Unhandled();
752 }
753
760 {
761 return FReply::Unhandled();
762 }
763
770 {
771 return FReply::Unhandled();
772 }
773
780 {
781 return FReply::Unhandled();
782 }
783
791 {
792 return FReply::Unhandled();
793 }
794
801 {
802 return TOptional<bool>();
803 }
804
809 {
810 }
811
818 {
820 }
821
832
841 {
842 return false;
843 }
844
850 virtual void OnFocusLost( const FFocusEvent& InFocusEvent )
851 {
852 }
853
864 {
865 return FReply::Unhandled();
866 }
867
871 virtual void OnViewportClosed()
872 {
873 }
874
879 {
880 return nullptr;
881 }
882
890
897};
898
903{
904public:
906
908 virtual void PostCustomElementAdded(FSlateElementBatcher& ElementBatcher) const {}
909
921
923 virtual void Draw_RenderThread(FRDGBuilder& GraphBuilder, const FDrawPassInputs& Inputs) {};
924
926 // Deprecated API
927
928 struct UE_DEPRECATED(5.5, "Use ICustomSlateElement::Draw instead") FSlateCustomDrawParams
929 {
930 FMatrix44f ViewProjectionMatrix;
931 FVector2f ViewOffset;
932 FIntRect ViewRect;
934 ESlatePostRT UsedSlatePostBuffers = ESlatePostRT::None;
935 bool bWireFrame = false;
936 bool bIsHDR = false;
937 };
938
939 UE_DEPRECATED(5.4, "Use ICustomSlateElement::Draw instead.")
941
942 UE_DEPRECATED(5.5, "Use ICustomSlateElement::Draw instead.")
946
947 UE_DEPRECATED(5.5, "Use ICustomSlateElement::Draw instead.")
948 virtual bool UsesAdditionalRHIParams() const { return false; }
949
951};
952
953/*
954 * A proxy object used to access a slate per-instance data buffer on the render thread.
955 */
957{
958protected:
960
961public:
962 virtual FRHIBuffer* GetRHI() const = 0;
963
964 UE_DEPRECATED(5.5, "Use GetStreamSource instead")
965 virtual void BindStreamSource(class FRHICommandList& RHICmdList, int32 StreamIndex, uint32 InstanceOffset) {}
966};
967
969
974{
975public:
978
980 virtual uint32 GetNumInstances() const = 0;
981
984
986 virtual void Update(FSlateInstanceBufferData& Data) = 0;
987};
#define ensureMsgf( InExpression, InFormat,...)
Definition AssertionMacros.h:465
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
#define DECLARE_CYCLE_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:679
#define DECLARE_DWORD_COUNTER_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:682
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ENUM_CLASS_FLAGS(Enum)
Definition EnumClassFlags.h:6
EFocusCause
Definition Events.h:25
#define PRAGMA_ENABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:12
#define PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:8
EDisplayColorGamut
Definition GenericPlatformMisc.h:518
UE::Math::TVector2< float > FVector2f
Definition MathFwd.h:74
UE::Math::TVector4< float > FVector4f
Definition MathFwd.h:75
@ Vertex
Definition MetalRHIPrivate.h:223
#define UENUM(...)
Definition ObjectMacros.h:749
EPixelFormat
Definition PixelFormat.h:16
@ PF_Unknown
Definition PixelFormat.h:17
ESlateDrawPrimitive
Definition RenderingCommon.h:49
TArray< FSlateVertex > FSlateVertexArray
Definition RenderingCommon.h:462
ESlateBatchDrawFlag
Definition RenderingCommon.h:118
ESlateLineJoinType
Definition RenderingCommon.h:147
ESlateViewportDynamicRange
Definition RenderingCommon.h:175
ESlateDrawEffect
Definition RenderingCommon.h:89
ESlateVertexRounding
Definition RenderingCommon.h:169
TArray< FVector4f > FSlateInstanceBufferData
Definition RenderingCommon.h:968
TArray< SlateIndex > FSlateIndexArray
Definition RenderingCommon.h:463
ESlateShader
Definition RenderingCommon.h:60
EColorVisionDeficiency
Definition RenderingCommon.h:160
uint32 SlateIndex
Definition RenderingCommon.h:41
ESlatePostRT
Definition SlateRendererTypes.h:15
PositionType TransformPoint(const TransformType &Transform, const PositionType &Point)
Definition TransformCalculus.h:358
uint8_t uint8
Definition binka_ue_file_header.h:8
uint16_t uint16
Definition binka_ue_file_header.h:7
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition CursorReply.h:16
static FCursorReply Unhandled()
Definition CursorReply.h:24
Definition NavigationReply.h:43
static FNavigationReply Stop()
Definition NavigationReply.h:106
Definition PopupMethodReply.h:24
static FPopupMethodReply Unhandled()
Definition PopupMethodReply.h:27
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:571
Definition RHIResources.h:1581
Definition RHICommandList.h:4626
Definition RHICommandList.h:3819
Definition Reply.h:24
static FReply Unhandled()
Definition Reply.h:241
Definition ElementBatcher.h:246
Definition SlateRect.h:26
Definition SlateRenderBatch.h:45
Definition SlateShaderResource.h:44
Definition DrawElements.h:220
Definition WidgetStyle.h:15
Definition Events.h:1206
Definition RenderingCommon.h:903
virtual PRAGMA_ENABLE_DEPRECATION_WARNINGS bool UsesAdditionalRHIParams() const
Definition RenderingCommon.h:948
struct UE_DEPRECATED(5.5, "Use ICustomSlateElement::Draw instead") FSlateCustomDrawParams
Definition RenderingCommon.h:928
virtual ~ICustomSlateElement()
Definition RenderingCommon.h:905
virtual void PostCustomElementAdded(FSlateElementBatcher &ElementBatcher) const
Definition RenderingCommon.h:908
virtual void DrawRenderThread(FRHICommandListImmediate &RHICmdList, const void *RenderTarget)
Definition RenderingCommon.h:940
virtual void Draw_RenderThread(FRDGBuilder &GraphBuilder, const FDrawPassInputs &Inputs)
Definition RenderingCommon.h:923
Definition RenderingCommon.h:957
virtual ~ISlateUpdatableInstanceBufferRenderProxy()
Definition RenderingCommon.h:959
virtual FRHIBuffer * GetRHI() const =0
virtual void BindStreamSource(class FRHICommandList &RHICmdList, int32 StreamIndex, uint32 InstanceOffset)
Definition RenderingCommon.h:965
Definition RenderingCommon.h:974
virtual ~ISlateUpdatableInstanceBuffer()
Definition RenderingCommon.h:976
friend class FSlateInstanceBufferUpdate
Definition RenderingCommon.h:977
virtual void Update(FSlateInstanceBufferData &Data)=0
virtual ISlateUpdatableInstanceBufferRenderProxy * GetRenderProxy() const =0
virtual uint32 GetNumInstances() const =0
Definition RenderingCommon.h:471
virtual FReply OnTouchGesture(const FGeometry &MyGeometry, const FPointerEvent &InGestureEvent)
Definition RenderingCommon.h:779
virtual FReply OnKeyDown(const FGeometry &MyGeometry, const FKeyEvent &InKeyEvent)
Definition RenderingCommon.h:671
virtual bool RequiresVsync() const =0
virtual FVector2D GetSoftwareCursorPosition() const
Definition RenderingCommon.h:582
virtual FReply OnMouseButtonUp(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:608
virtual FReply OnTouchStarted(const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent)
Definition RenderingCommon.h:729
virtual bool IsViewportTextureAlphaOnly() const
Definition RenderingCommon.h:502
virtual FReply OnRequestWindowClose()
Definition RenderingCommon.h:863
virtual FPopupMethodReply OnQueryPopupMethod() const
Definition RenderingCommon.h:817
virtual FReply OnAnalogValueChanged(const FGeometry &MyGeometry, const FAnalogInputEvent &InAnalogInputEvent)
Definition RenderingCommon.h:696
virtual FReply OnMouseButtonDown(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:595
virtual FReply OnMotionDetected(const FGeometry &MyGeometry, const FMotionEvent &InMotionEvent)
Definition RenderingCommon.h:790
virtual void OnFocusLost(const FFocusEvent &InFocusEvent)
Definition RenderingCommon.h:850
virtual void OnMouseEnter(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:614
virtual ~ISlateViewport()
Definition RenderingCommon.h:473
virtual class FSlateShaderResource * GetViewportRenderTargetTexture() const =0
virtual bool IsStereoscopic3D() const
Definition RenderingCommon.h:510
virtual TOptional< TSharedRef< SWidget > > OnMapCursor(const FCursorReply &CursorReply)
Definition RenderingCommon.h:566
virtual FCursorReply OnCursorQuery(const FGeometry &MyGeometry, const FPointerEvent &CursorEvent)
Definition RenderingCommon.h:556
virtual FReply OnMouseWheel(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:645
virtual FReply OnKeyUp(const FGeometry &MyGeometry, const FKeyEvent &InKeyEvent)
Definition RenderingCommon.h:684
virtual FReply OnKeyChar(const FGeometry &MyGeometry, const FCharacterEvent &InCharacterEvent)
Definition RenderingCommon.h:709
virtual FReply OnMouseMove(const FGeometry &MyGeometry, const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:632
virtual ESlateViewportDynamicRange GetViewportDynamicRange() const
Definition RenderingCommon.h:526
virtual void Tick(const FGeometry &AllottedGeometry, double InCurrentTime, float DeltaTime)
Definition RenderingCommon.h:534
virtual FIntPoint GetSize() const =0
virtual TWeakPtr< SWidget > GetWidget()
Definition RenderingCommon.h:878
virtual void OnViewportClosed()
Definition RenderingCommon.h:871
virtual bool HandleNavigation(const uint32 InUserIndex, TSharedPtr< SWidget > InDestination)
Definition RenderingCommon.h:840
virtual FReply OnMouseButtonDoubleClick(const FGeometry &InMyGeometry, const FPointerEvent &InMouseEvent)
Definition RenderingCommon.h:658
virtual void OnFinishedPointerInput()
Definition RenderingCommon.h:808
virtual bool IsSoftwareCursorVisible() const
Definition RenderingCommon.h:574
virtual FReply OnTouchEnded(const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent)
Definition RenderingCommon.h:749
virtual FReply OnViewportActivated(const FWindowActivateEvent &InActivateEvent)
Definition RenderingCommon.h:886
virtual FNavigationReply OnNavigation(const FGeometry &MyGeometry, const FNavigationEvent &InNavigationEvent)
Definition RenderingCommon.h:828
virtual EPixelFormat GetSceneTargetFormat() const
Definition RenderingCommon.h:497
virtual void OnDrawViewport(const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, class FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled)
Definition RenderingCommon.h:482
virtual FReply OnTouchMoved(const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent)
Definition RenderingCommon.h:739
virtual FReply OnTouchForceChanged(const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent)
Definition RenderingCommon.h:759
virtual bool UseSeparateRenderTarget() const
Definition RenderingCommon.h:518
virtual bool AllowScaling() const
Definition RenderingCommon.h:546
virtual FReply OnTouchFirstMove(const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent)
Definition RenderingCommon.h:769
virtual void OnMouseLeave(const FPointerEvent &MouseEvent)
Definition RenderingCommon.h:619
virtual void OnViewportDeactivated(const FWindowActivateEvent &InActivateEvent)
Definition RenderingCommon.h:894
virtual FReply OnFocusReceived(const FFocusEvent &InFocusEvent)
Definition RenderingCommon.h:719
virtual TOptional< bool > OnQueryShowFocus(const EFocusCause InFocusCause) const
Definition RenderingCommon.h:800
Definition SWidget.h:165
Definition Array.h:670
Definition SharedPointer.h:692
Definition TransformCalculus2D.h:682
Definition SharedPointer.h:1295
Definition DockingUtilsPrivate.h:8
auto MakeTupleIndicies()
Definition RenderingCommon.h:445
auto MakeTupleIndiciesInner(std::integer_sequence< IndexType, Indices... >)
Definition RenderingCommon.h:439
Definition Events.h:528
Definition Events.h:606
Definition Color.h:486
Definition Events.h:51
Definition Geometry.h:40
Definition Events.h:431
Definition UnrealMathUtility.h:270
Definition Events.h:1060
Definition Events.h:1148
Definition Events.h:695
Definition RenderingCommon.h:187
FVector4f PixelParams3
Definition RenderingCommon.h:191
FVector4f PixelParams2
Definition RenderingCommon.h:190
bool operator==(const FShaderParams &Other) const
Definition RenderingCommon.h:205
FShaderParams(const FVector4f &InPixelParams, const FVector4f &InPixelParams2=FVector4f(0), const FVector4f &InPixelParams3=FVector4f(0))
Definition RenderingCommon.h:199
FVector4f PixelParams
Definition RenderingCommon.h:189
static FShaderParams MakePixelShaderParams(const FVector4f &PixelShaderParams, const FVector4f &InPixelShaderParams2=FVector4f(0), const FVector4f &InPixelShaderParams3=FVector4f(0))
Definition RenderingCommon.h:210
FShaderParams()
Definition RenderingCommon.h:193
Definition RenderingCommon.h:379
uint16 Top
Definition RenderingCommon.h:428
uint16 Right
Definition RenderingCommon.h:429
bool DoesIntersect(const FSlateRect &B) const
Definition RenderingCommon.h:415
bool operator==(const FShortRect &RHS) const
Definition RenderingCommon.h:404
bool operator!=(const FShortRect &RHS) const
Definition RenderingCommon.h:405
FShortRect()
Definition RenderingCommon.h:380
uint16 Bottom
Definition RenderingCommon.h:430
FVector2f GetBottomRight() const
Definition RenderingCommon.h:425
bool DoesIntersect(const FShortRect &B) const
Definition RenderingCommon.h:406
uint16 Left
Definition RenderingCommon.h:427
FShortRect(uint16 InLeft, uint16 InTop, uint16 InRight, uint16 InBottom)
Definition RenderingCommon.h:388
FVector2f GetTopLeft() const
Definition RenderingCommon.h:424
FShortRect(const FSlateRect &Rect)
Definition RenderingCommon.h:396
Definition RenderingCommon.h:221
FSlateVertex()
Definition RenderingCommon.h:240
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InTexCoord, const FVector2f InTexCoord2, const FColor InColor, const FColor SecondaryColor=FColor(), const ESlateVertexRounding InRounding=ESlateVertexRounding::Disabled)
Definition RenderingCommon.h:311
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InTexCoord, const FVector2f InTexCoord2, const FColor InColor, const FColor SecondaryColor=FColor())
Definition RenderingCommon.h:246
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InTexCoord, const FColor &InColor, const FColor SecondaryColor=FColor())
Definition RenderingCommon.h:259
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector4f InTexCoords, const FVector2f InMaterialTexCoords, const FColor InColor, const FColor SecondaryColor=FColor())
Definition RenderingCommon.h:272
void SetTexCoords(const FVector4f InTexCoords)
Definition RenderingCommon.h:342
FColor Color
Definition RenderingCommon.h:232
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InLocalSize, float Scale, const FVector4f InTexCoords, const FColor InColor, const FColor SecondaryColor=FColor(), const ESlateVertexRounding InRounding=ESlateVertexRounding::Disabled)
Definition RenderingCommon.h:335
FColor SecondaryColor
Definition RenderingCommon.h:235
void SetPosition(const FVector2f InPosition)
Definition RenderingCommon.h:350
FVector2f Position
Definition RenderingCommon.h:229
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector4f InTexCoords, const FVector2f InMaterialTexCoords, const FColor InColor, const FColor SecondaryColor=FColor(), const ESlateVertexRounding InRounding=ESlateVertexRounding::Disabled)
Definition RenderingCommon.h:327
uint16 PixelSize[2]
Definition RenderingCommon.h:238
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InLocalSize, float Scale, const FVector4f InTexCoords, const FColor InColor, const FColor SecondaryColor=FColor())
Definition RenderingCommon.h:286
FVector2f MaterialTexCoords
Definition RenderingCommon.h:226
static FSlateVertex Make(const FSlateRenderTransform &RenderTransform, const FVector2f InLocalPosition, const FVector2f InTexCoord, const FColor &InColor, const FColor SecondaryColor=FColor(), const ESlateVertexRounding InRounding=ESlateVertexRounding::Disabled)
Definition RenderingCommon.h:319
float TexCoords[4]
Definition RenderingCommon.h:223
Definition RenderingCommon.h:911
FRDGTexture * OutputTexture
Definition RenderingCommon.h:912
EDisplayColorGamut HDRDisplayColorGamut
Definition RenderingCommon.h:916
bool bWireFrame
Definition RenderingCommon.h:919
FVector2f ElementsOffset
Definition RenderingCommon.h:915
ESlatePostRT UsedSlatePostBuffers
Definition RenderingCommon.h:917
FIntRect SceneViewRect
Definition RenderingCommon.h:913
bool bOutputIsHDRDisplay
Definition RenderingCommon.h:918
FMatrix44f ElementsMatrix
Definition RenderingCommon.h:914
Definition LinuxPlatformSplash.cpp:43
Definition IsPODType.h:12
@ Value
Definition IsPODType.h:13
Definition Optional.h:131
Definition IntPoint.h:25
T Y
Definition Vector2D.h:52
T X
Definition Vector2D.h:49
static CORE_API const TVector2< double > ZeroVector
Definition Vector2D.h:63