UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SRetainerWidget.cpp File Reference

Classes

class  FRetainerWidgetRenderingResources
 

Macros

#define PLATFORM_REQUIRES_DEFERRED_RETAINER_UPDATE   PLATFORM_IOS || PLATFORM_ANDROID;
 

Functions

 DECLARE_CYCLE_STAT (TEXT("Retainer Widget Tick"), STAT_SlateRetainerWidgetTick, STATGROUP_Slate)
 
 DECLARE_CYCLE_STAT (TEXT("Retainer Widget Paint"), STAT_SlateRetainerWidgetPaint, STATGROUP_Slate)
 
FAutoConsoleVariableRef EnableDesignerRetainedRendering (TEXT("Slate.EnableDesignerRetainedRendering"), GEnableDesignerRetainedRendering, TEXT("Controls if retainer renders in designer; 0 - Never; 1 - Per Widget Properties"), FConsoleVariableDelegate::CreateStatic(&HandleDesignerRetainedRenderingToggled))
 

Variables

bool GEnableDesignerRetainedRendering = true
 
int32 GEnableRetainedRendering = 1
 
FAutoConsoleVariableRef EnableRetainedRendering (TEXT("Slate.EnableRetainedRendering"), GEnableRetainedRendering,)
 
bool GSlateEnableRenderWithLocalTransform = true
 
FAutoConsoleVariableRef CVarGlateEnableRenderWithLocalTransform (TEXT("Slate.EnableRetainedRenderingWithLocalTransform"), GSlateEnableRenderWithLocalTransform,)
 
int32 GDeferRetainedRenderingRenderThread = PLATFORM_REQUIRES_DEFERRED_RETAINER_UPDATE
 
FAutoConsoleVariableRef DeferRetainedRenderingRT (TEXT("Slate.DeferRetainedRenderingRenderThread"), GDeferRetainedRenderingRenderThread, TEXT("Whether or not to defer retained rendering to happen at the same time as the rest of slate render thread work"))
 

Macro Definition Documentation

◆ PLATFORM_REQUIRES_DEFERRED_RETAINER_UPDATE

#define PLATFORM_REQUIRES_DEFERRED_RETAINER_UPDATE   PLATFORM_IOS || PLATFORM_ANDROID;

Whether or not the platform should have deferred retainer widget render target updating enabled by default

Function Documentation

◆ DECLARE_CYCLE_STAT() [1/2]

DECLARE_CYCLE_STAT ( TEXT("Retainer Widget Paint" ,
STAT_SlateRetainerWidgetPaint  ,
STATGROUP_Slate   
)

◆ DECLARE_CYCLE_STAT() [2/2]

DECLARE_CYCLE_STAT ( TEXT("Retainer Widget Tick" ,
STAT_SlateRetainerWidgetTick  ,
STATGROUP_Slate   
)

◆ EnableDesignerRetainedRendering()

FAutoConsoleVariableRef EnableDesignerRetainedRendering ( TEXT("Slate.EnableDesignerRetainedRendering")  ,
GEnableDesignerRetainedRendering  ,
TEXT("Controls if retainer renders in designer; 0 - Never; 1 - Per Widget Properties" ,
FConsoleVariableDelegate::CreateStatic &  HandleDesignerRetainedRenderingToggled 
)

Variable Documentation

◆ CVarGlateEnableRenderWithLocalTransform

FAutoConsoleVariableRef CVarGlateEnableRenderWithLocalTransform(TEXT("Slate.EnableRetainedRenderingWithLocalTransform"), GSlateEnableRenderWithLocalTransform,) ( TEXT("Slate.EnableRetainedRenderingWithLocalTransform")  ,
GSlateEnableRenderWithLocalTransform   
)

◆ DeferRetainedRenderingRT

FAutoConsoleVariableRef DeferRetainedRenderingRT(TEXT("Slate.DeferRetainedRenderingRenderThread"), GDeferRetainedRenderingRenderThread, TEXT("Whether or not to defer retained rendering to happen at the same time as the rest of slate render thread work")) ( TEXT("Slate.DeferRetainedRenderingRenderThread")  ,
GDeferRetainedRenderingRenderThread  ,
TEXT("Whether or not to defer retained rendering to happen at the same time as the rest of slate render thread work"  
)

◆ EnableRetainedRendering

FAutoConsoleVariableRef EnableRetainedRendering(TEXT("Slate.EnableRetainedRendering"), GEnableRetainedRendering,) ( TEXT("Slate.EnableRetainedRendering")  ,
GEnableRetainedRendering   
)

◆ GDeferRetainedRenderingRenderThread

int32 GDeferRetainedRenderingRenderThread = PLATFORM_REQUIRES_DEFERRED_RETAINER_UPDATE

If this is true the retained rendering render thread work will happen during normal slate render thread rendering after the back buffer has been presented in order to avoid extra render target switching in the middle of the frame. The downside is that the UI update will be a frame late

◆ GEnableDesignerRetainedRendering

bool GEnableDesignerRetainedRendering = true

True if we should do retained rendering in designer.

◆ GEnableRetainedRendering

int32 GEnableRetainedRendering = 1

True if we should allow widgets to be cached in the UI at all.

◆ GSlateEnableRenderWithLocalTransform

bool GSlateEnableRenderWithLocalTransform = true

True if we allow the transform to be modify to render in local space.