UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSceneViewport Class Reference

#include <SceneViewport.h>

+ Inheritance diagram for FSceneViewport:

Public Member Functions

ENGINE_API FSceneViewport (FViewportClient *InViewportClient, TSharedPtr< SViewport > InViewportWidget)
 
ENGINE_API ~FSceneViewport ()
 
virtual voidGetWindow () override
 
virtual void MoveWindow (int32 NewPosX, int32 NewPosY, int32 NewSizeX, int32 NewSizeY) override
 
virtual ENGINE_API bool HasMouseCapture () const override
 
virtual ENGINE_API bool HasFocus () const override
 
virtual ENGINE_API bool IsForegroundWindow () const override
 
virtual ENGINE_API void CaptureMouse (bool bCapture) override
 
virtual ENGINE_API void LockMouseToViewport (bool bLock) override
 
virtual ENGINE_API void ShowCursor (bool bVisible) override
 
virtual ENGINE_API void SetPreCaptureMousePosFromSlateCursor () override
 
virtual bool IsCursorVisible () const override
 
virtual void ShowSoftwareCursor (bool bVisible) override
 
virtual void SetSoftwareCursorPosition (FVector2D Position) override
 
virtual bool IsSoftwareCursorVisible () const override
 
virtual FVector2D GetSoftwareCursorPosition () const override
 
virtual ENGINE_API FCanvasGetDebugCanvas () override
 
virtual ENGINE_API float GetDisplayGamma () const override
 
virtual ENGINE_API void EnqueueEndRenderFrame (const bool bLockToVsync, const bool bShouldPresent) override
 
virtual ENGINE_API const FTextureRHIRefGetRenderTargetTexture () const
 
virtual ENGINE_API void SetRenderTargetTextureRenderThread (FTextureRHIRef &RT)
 
virtual ENGINE_API bool SetUserFocus (bool bFocus) override
 
virtual ENGINE_API bool KeyState (FKey Key) const override
 
virtual ENGINE_API int32 GetMouseX () const override
 
virtual ENGINE_API int32 GetMouseY () const override
 
virtual ENGINE_API void GetMousePos (FIntPoint &MousePosition, const bool bLocalPosition=true) override
 
virtual ENGINE_API void SetMouse (int32 X, int32 Y) override
 
virtual ENGINE_API void ProcessInput (float DeltaTime) override
 
virtual ENGINE_API FVector2D VirtualDesktopPixelToViewport (FIntPoint VirtualDesktopPointPx) const override
 
virtual ENGINE_API FIntPoint ViewportToVirtualDesktopPixel (FVector2D ViewportCoordinate) const override
 
virtual ENGINE_API void InvalidateDisplay () override
 
virtual ENGINE_API void DeferInvalidateHitProxy () override
 
virtual FViewportGetViewport () override
 
virtual FViewportFrameGetViewportFrame () override
 
TWeakPtr< SViewportGetViewportWidget () const
 
virtual ENGINE_API void EnqueueBeginRenderFrame (const bool bShouldPresent) override
 
virtual ENGINE_API void BeginRenderFrame (FRHICommandListImmediate &RHICmdList) override
 
virtual ENGINE_API void EndRenderFrame (FRHICommandListImmediate &RHICmdList, bool bPresent, bool bLockToVsync) override
 
virtual ENGINE_API void Tick (const FGeometry &AllottedGeometry, double InCurrentTime, float InDeltaTime) override
 
ENGINE_API void OnPlayWorldViewportSwapped (const FSceneViewport &OtherViewport)
 
ENGINE_API void SwapStatCommands (const FSceneViewport &OtherViewport)
 
virtual void SetRequiresVsync (bool bShouldVsync) override
 
virtual bool RequiresVsync () const override
 
virtual ENGINE_API void ResizeFrame (uint32 NewSizeX, uint32 NewSizeY, EWindowMode::Type NewWindowMode) override
 
void SetOnSceneViewportResizeDel (FOnSceneViewportResize InOnSceneViewportResize)
 
void SetPlayInEditorGetsMouseControl (const bool bGetsMouseControl)
 
void SetPlayInEditorIsSimulate (const bool bIsSimulate)
 
bool GetPlayInEditorIsSimulate () const
 
virtual ENGINE_API void UpdateViewportRHI (bool bDestroyed, uint32 NewSizeX, uint32 NewSizeY, EWindowMode::Type NewWindowMode, EPixelFormat PreferredPixelFormat) override
 
virtual ENGINE_API FSlateShaderResourceGetViewportRenderTargetTexture () const override
 
virtual ENGINE_API void OnDrawViewport (const FGeometry &AllottedGeometry, const FSlateRect &MyCullingRect, FSlateWindowElementList &OutDrawElements, int32 LayerId, const FWidgetStyle &InWidgetStyle, bool bParentEnabled) override
 
virtual ENGINE_API FCursorReply OnCursorQuery (const FGeometry &MyGeometry, const FPointerEvent &CursorEvent) override
 
virtual ENGINE_API TOptional< TSharedRef< SWidget > > OnMapCursor (const FCursorReply &CursorReply) override
 
virtual ENGINE_API FReply OnMouseButtonDown (const FGeometry &InGeometry, const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API FReply OnMouseButtonUp (const FGeometry &InGeometry, const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API void OnMouseEnter (const FGeometry &MyGeometry, const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API void OnMouseLeave (const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API FReply OnMouseMove (const FGeometry &InGeometry, const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API FReply OnMouseWheel (const FGeometry &InGeometry, const FPointerEvent &MouseEvent) override
 
virtual ENGINE_API FReply OnMouseButtonDoubleClick (const FGeometry &InGeometry, const FPointerEvent &InMouseEvent) override
 
virtual ENGINE_API FReply OnTouchStarted (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual ENGINE_API FReply OnTouchMoved (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual ENGINE_API FReply OnTouchEnded (const FGeometry &MyGeometry, const FPointerEvent &InTouchEvent) override
 
virtual ENGINE_API FReply OnTouchForceChanged (const FGeometry &MyGeometry, const FPointerEvent &TouchEvent) override
 
virtual ENGINE_API FReply OnTouchFirstMove (const FGeometry &MyGeometry, const FPointerEvent &TouchEvent) override
 
virtual ENGINE_API FReply OnTouchGesture (const FGeometry &MyGeometry, const FPointerEvent &InGestureEvent) override
 
virtual ENGINE_API FReply OnMotionDetected (const FGeometry &MyGeometry, const FMotionEvent &InMotionEvent) override
 
virtual ENGINE_API FPopupMethodReply OnQueryPopupMethod () const override
 
virtual ENGINE_API bool HandleNavigation (const uint32 InUserIndex, TSharedPtr< SWidget > InDestination) override
 
virtual ENGINE_API TOptional< boolOnQueryShowFocus (const EFocusCause InFocusCause) const override
 
virtual ENGINE_API void OnFinishedPointerInput () override
 
virtual ENGINE_API FReply OnKeyDown (const FGeometry &InGeometry, const FKeyEvent &InKeyEvent) override
 
virtual ENGINE_API FReply OnKeyUp (const FGeometry &InGeometry, const FKeyEvent &InKeyEvent) override
 
virtual ENGINE_API FReply OnAnalogValueChanged (const FGeometry &MyGeometry, const FAnalogInputEvent &InAnalogInputEvent) override
 
virtual ENGINE_API FReply OnKeyChar (const FGeometry &InGeometry, const FCharacterEvent &InCharacterEvent) override
 
virtual ENGINE_API FReply OnFocusReceived (const FFocusEvent &InFocusEvent) override
 
virtual ENGINE_API void OnFocusLost (const FFocusEvent &InFocusEvent) override
 
virtual ENGINE_API void OnViewportClosed () override
 
virtual ENGINE_API FReply OnRequestWindowClose () override
 
virtual ENGINE_API TWeakPtr< SWidgetGetWidget () override
 
virtual ENGINE_API FReply OnViewportActivated (const FWindowActivateEvent &InActivateEvent) override
 
virtual ENGINE_API void OnViewportDeactivated (const FWindowActivateEvent &InActivateEvent) override
 
virtual FIntPoint GetSize () const override
 
virtual ENGINE_API EDisplayColorGamut GetDisplayColorGamut () const override
 
virtual ENGINE_API EDisplayOutputFormat GetDisplayOutputFormat () const override
 
virtual ENGINE_API bool GetSceneHDREnabled () const override
 
virtual ENGINE_API ESlateViewportDynamicRange GetViewportDynamicRange () const override
 
ENGINE_API void SetViewportSize (uint32 NewSizeX, uint32 NewSizeY)
 
ENGINE_API void SetFixedViewportSize (uint32 NewSizeX, uint32 NewSizeY)
 
ENGINE_API bool HasFixedSize () const
 
ENGINE_API TSharedPtr< SWindowFindWindow ()
 
virtual ENGINE_API bool IsStereoRenderingAllowed () const override
 
virtual FIntPoint GetRenderTargetTextureSizeXY () const
 
EPixelFormat GetSceneTargetFormat () const override
 
const FGeometryGetCachedGeometry () const
 
void SetGammaOverride (const float InGammaOverride)
 
ENGINE_API void SetDebugCanvas (TSharedPtr< class SDebugCanvas > InDebugCanvas)
 
ENGINE_API void PaintDebugCanvas (const FGeometry &AllottedGeometry, FSlateWindowElementList &OutDrawElements, int32 LayerId) const
 
- Public Member Functions inherited from FViewport
 DECLARE_MULTICAST_DELEGATE_TwoParams (FOnViewportResized, FViewport *, uint32)
 
ENGINE_API FViewport (FViewportClient *InViewportClient)
 
virtual ENGINE_API ~FViewport ()
 
virtual bool UpdateMouseCursor (bool bSetCursor)
 
virtual float GetTabletPressure ()
 
virtual bool IsPenActive ()
 
virtual bool IsFullscreen () const
 
virtual bool IsExclusiveFullscreen () const
 
virtual EWindowMode::Type GetWindowMode () const
 
virtual ENGINE_API FRHIGPUMask GetGPUMask (FRHICommandListImmediate &RHICmdList) const override
 
virtual bool IsKeyboardAvailable (int32 ControllerID) const
 
virtual bool IsMouseAvailable (int32 ControllerID) const
 
virtual float GetDesiredAspectRatio () const
 
ENGINE_API void Draw (bool bShouldPresent=true)
 
ENGINE_API void InvalidateHitProxy ()
 
ENGINE_API void Invalidate ()
 
ENGINE_API const TArray< FColor > & GetRawHitProxyData (FIntRect InRect)
 
ENGINE_API void GetHitProxyMap (FIntRect InRect, TArray< HHitProxy * > &OutMap)
 
ENGINE_API HHitProxyGetHitProxy (int32 X, int32 Y)
 
ENGINE_API void GetActorsAndModelsInHitProxy (FIntRect InRect, TSet< AActor * > &OutActors, TSet< UModel * > &OutModels)
 
ENGINE_API FTypedElementHandle GetElementHandleAtPoint (int32 X, int32 Y)
 
ENGINE_API void GetElementHandlesInRect (FIntRect InRect, FTypedElementListRef OutElementHandles)
 
ENGINE_API void EnumerateHitProxiesInRect (FIntRect InRect, TFunctionRef< bool(HHitProxy *)> InCallback)
 
ENGINE_API FIntRect CalculateViewExtents (float AspectRatio, const FIntRect &ViewRect)
 
virtual ENGINE_API void SetViewportClient (FViewportClient *InViewportClient)
 
virtual FIntPoint GetSizeXY () const override
 
FIntPoint GetInitialPositionXY () const
 
FViewportClientGetClient () const
 
virtual ENGINE_API void ProcessToggleFreezeCommand () override
 
virtual ENGINE_API bool HasToggleFreezeCommand () override
 
const FViewportRHIRefGetViewportRHI () const
 
void UpdateRenderTargetSurfaceRHIToCurrentBackBuffer ()
 
virtual int32 DrawStatsHUD (FCanvas *InCanvas, const int32 InX, const int32 InY)
 
ENGINE_API void SetInitialSize (FIntPoint InitialSizeXY)
 
bool IsPlayInEditorViewport () const
 
void SetPlayInEditorViewport (bool bInPlayInEditorViewport)
 
bool IsSlateViewport () const
 
bool IsHDRViewport () const
 
void SetHDRMode (bool bHDR)
 
ENGINE_API bool TakeHighResScreenShot ()
 
FName GetViewportType () const
 
- Public Member Functions inherited from FRenderTarget
ENGINE_API FRenderTarget ()
 
virtual ENGINE_API ~FRenderTarget ()
 
virtual ENGINE_API FUnorderedAccessViewRHIRef GetRenderTargetUAV () const
 
virtual ENGINE_API FRDGTextureRef GetRenderTargetTexture (FRDGBuilder &GraphBuilder) const
 
virtual ENGINE_API const FTextureRHIRefGetShaderResourceTexture () const
 
virtual ENGINE_API bool ReadPixels (TArray< FColor > &OutImageData, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_UNorm, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
 
ENGINE_API bool ReadPixelsPtr (FColor *OutImageBytes, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_UNorm, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
 
ENGINE_API bool ReadFloat16Pixels (TArray< FFloat16Color > &OutImageData, ECubeFace CubeFace)
 
virtual ENGINE_API bool ReadFloat16Pixels (TArray< FFloat16Color > &OutImageData, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_UNorm, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
 
virtual ENGINE_API bool ReadLinearColorPixels (TArray< FLinearColor > &OutImageData, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_MinMax, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
 
ENGINE_API bool ReadLinearColorPixelsPtr (FLinearColor *OutImageBytes, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_MinMax, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
 
- Public Member Functions inherited from ISlateViewport
virtual ~ISlateViewport ()
 
virtual bool IsViewportTextureAlphaOnly () const
 
virtual bool AllowScaling () const
 
virtual FNavigationReply OnNavigation (const FGeometry &MyGeometry, const FNavigationEvent &InNavigationEvent)
 

Additional Inherited Members

- Static Public Member Functions inherited from FViewport
static ENGINE_API FIntRect CalculateViewExtents (float AspectRatio, float DesiredAspectRatio, const FIntRect &ViewRect, const FIntPoint &DestSize)
 
static ENGINE_API void SetGameRenderingEnabled (bool bIsEnabled, int32 PresentAndStopMovieDelay=0)
 
static bool IsGameRenderingEnabled ()
 
- Static Public Member Functions inherited from FRenderTarget
static float GetEngineDisplayGamma ()
 
- Public Attributes inherited from FViewport
FString AppVersionString
 
- Static Public Attributes inherited from FViewport
static ENGINE_API FOnViewportResized ViewportResizedEvent
 
- Protected Types inherited from FRenderResource
enum class  EInitPhase : uint8 { Pre , Default , MAX }
 
- Protected Member Functions inherited from FViewport
void HighResScreenshot ()
 
- Protected Member Functions inherited from FRenderResource
void SetFeatureLevel (const FStaticFeatureLevel InFeatureLevel)
 
const FStaticFeatureLevel GetFeatureLevel () const
 
bool HasValidFeatureLevel () const
 
template<typename T >
FBufferRHIRef CreateRHIBuffer (FRHICommandListBase &RHICmdList, T &InOutResourceObject, uint32 ResourceCount, EBufferUsageFlags InBufferUsageFlags, const TCHAR *InDebugName)
 
void SetInitPhase (EInitPhase InInitPhase)
 
RENDERCORE_API FRenderResource ()
 
RENDERCORE_API FRenderResource (ERHIFeatureLevel::Type InFeatureLevel)
 
RENDERCORE_API FRenderResource (const FRenderResource &)
 
RENDERCORE_API FRenderResource (FRenderResource &&)
 
RENDERCORE_API FRenderResourceoperator= (const FRenderResource &Other)
 
RENDERCORE_API FRenderResourceoperator= (FRenderResource &&Other)
 
virtual RENDERCORE_API ~FRenderResource ()
 
virtual RENDERCORE_API void InitResource (FRHICommandListBase &RHICmdList)
 
virtual RENDERCORE_API void ReleaseResource ()
 
RENDERCORE_API void UpdateRHI (FRHICommandListBase &RHICmdList)
 
bool IsInitialized () const
 
int32 GetListIndex () const
 
EInitPhase GetInitPhase () const
 
void SetOwnerName (FName InOwnerName)
 
FName GetOwnerName () const
 
void SetResourceName (FName InResourceName)
 
FName GetResourceName () const
 
- Static Protected Member Functions inherited from FRenderResource
static RENDERCORE_API FRHICommandListBaseGetImmediateCommandList ()
 
static RENDERCORE_API void ReleaseRHIForAllResources ()
 
static RENDERCORE_API void InitPreRHIResources ()
 
static RENDERCORE_API void ChangeFeatureLevel (ERHIFeatureLevel::Type NewFeatureLevel)
 
static RENDERCORE_API FName SetScopeName (FName Name)
 
- Protected Attributes inherited from FViewport
FViewportClientViewportClient
 
FHitProxyMap HitProxyMap
 
TArray< FColorCachedHitProxyData
 
FViewportRHIRef ViewportRHI
 
uint32 InitialPositionX
 
uint32 InitialPositionY
 
uint32 SizeX
 
uint32 SizeY
 
uint32 HitProxySize
 
EWindowMode::Type WindowMode
 
uint32 bRequiresHitProxyStorage: 1
 
uint32 bHitProxiesCached: 1
 
uint32 bHasRequestedToggleFreeze: 1
 
uint32 bIsPlayInEditorViewport: 1
 
uint32 bIsSlateViewport: 1
 
uint32 bIsHDR: 1
 
FName ViewportType
 
bool bTakeHighResScreenShot
 
- Protected Attributes inherited from FRenderTarget
FTextureRHIRef RenderTargetTextureRHI
 
- Protected Attributes inherited from FRenderResource
ERenderResourceState ResourceState = ERenderResourceState::Default
 
- Static Protected Attributes inherited from FViewport
static ENGINE_API bool bIsGameRenderingEnabled = true
 
static int32 PresentAndStopMovieDelay = 0
 

Detailed Description

A viewport for use with Slate SViewport widgets.

Constructor & Destructor Documentation

◆ FSceneViewport()

FSceneViewport::FSceneViewport ( FViewportClient InViewportClient,
TSharedPtr< SViewport InViewportWidget 
)

◆ ~FSceneViewport()

FSceneViewport::~FSceneViewport ( )

Member Function Documentation

◆ BeginRenderFrame()

void FSceneViewport::BeginRenderFrame ( FRHICommandListImmediate RHICmdList)
overridevirtual

Called when a frame starts to render

Reimplemented from FViewport.

◆ CaptureMouse()

void FSceneViewport::CaptureMouse ( bool  bCapture)
overridevirtual

Reimplemented from FViewport.

◆ DeferInvalidateHitProxy()

void FSceneViewport::DeferInvalidateHitProxy ( )
overridevirtual

Invalidates the viewport's cached hit proxies at the end of the frame.

Reimplemented from FViewport.

◆ EndRenderFrame()

void FSceneViewport::EndRenderFrame ( FRHICommandListImmediate RHICmdList,
bool  bPresent,
bool  bLockToVsync 
)
overridevirtual

Called when a frame is done rendering

Parameters
bPresentNot used in Slate viewports
bLockToVsyncNot used in Slate viewports

Reimplemented from FViewport.

◆ EnqueueBeginRenderFrame()

void FSceneViewport::EnqueueBeginRenderFrame ( const bool  bShouldPresent)
overridevirtual

Called before BeginRenderFrame is enqueued

Reimplemented from FViewport.

◆ EnqueueEndRenderFrame()

void FSceneViewport::EnqueueEndRenderFrame ( const bool  bLockToVsync,
const bool  bShouldPresent 
)
overridevirtual

Ends a rendering frame. Called from the game thread.

Parameters
bPresentWhether the frame should be presented to the screen

Reimplemented from FViewport.

◆ FindWindow()

TSharedPtr< SWindow > FSceneViewport::FindWindow ( )

◆ GetCachedGeometry()

const FGeometry & FSceneViewport::GetCachedGeometry ( ) const
inline

Get the cached viewport geometry.

◆ GetDebugCanvas()

FCanvas * FSceneViewport::GetDebugCanvas ( )
overridevirtual
Returns
A canvas that can be used while this viewport is being drawn to render debug elements on top of everything else

Reimplemented from FViewport.

◆ GetDisplayColorGamut()

EDisplayColorGamut FSceneViewport::GetDisplayColorGamut ( ) const
overridevirtual

Reimplemented from FRenderTarget.

◆ GetDisplayGamma()

float FSceneViewport::GetDisplayGamma ( ) const
overridevirtual
Returns
display gamma expected for rendering to this render target

Reimplemented from FRenderTarget.

◆ GetDisplayOutputFormat()

EDisplayOutputFormat FSceneViewport::GetDisplayOutputFormat ( ) const
overridevirtual

Reimplemented from FRenderTarget.

◆ GetMousePos()

void FSceneViewport::GetMousePos ( FIntPoint MousePosition,
const bool  bLocalPosition = true 
)
overridevirtual

Sets MousePosition to the current mouse position

Parameters
MousePositionPopulated with the current mouse position
bLocalPositionIndicates whether the mouse position returned should be in local or absolute space

Implements FViewport.

◆ GetMouseX()

int32 FSceneViewport::GetMouseX ( ) const
overridevirtual
Returns
The current X position of the mouse (in local space, relative to the viewports geometry)

Implements FViewport.

◆ GetMouseY()

int32 FSceneViewport::GetMouseY ( ) const
overridevirtual
Returns
The current Y position of the mouse (in local space, relative to the viewports geometry)

Implements FViewport.

◆ GetPlayInEditorIsSimulate()

bool FSceneViewport::GetPlayInEditorIsSimulate ( ) const
inline

◆ GetRenderTargetTexture()

const FTextureRHIRef & FSceneViewport::GetRenderTargetTexture ( ) const
virtual

Gets the proper RenderTarget based on the current thread

Reimplemented from FRenderTarget.

◆ GetRenderTargetTextureSizeXY()

virtual FIntPoint FSceneViewport::GetRenderTargetTextureSizeXY ( ) const
inlinevirtual

Returns dimensions of RenderTarget texture. Can be called on a game thread.

Reimplemented from FViewport.

◆ GetSceneHDREnabled()

bool FSceneViewport::GetSceneHDREnabled ( ) const
overridevirtual

Reimplemented from FRenderTarget.

◆ GetSceneTargetFormat()

EPixelFormat FSceneViewport::GetSceneTargetFormat ( ) const
inlineoverridevirtual

Returns format for the scene of this viewport.

Reimplemented from ISlateViewport.

◆ GetSize()

virtual FIntPoint FSceneViewport::GetSize ( ) const
inlineoverridevirtual

Returns the size of the viewport

Implements ISlateViewport.

◆ GetSoftwareCursorPosition()

virtual FVector2D FSceneViewport::GetSoftwareCursorPosition ( ) const
inlineoverridevirtual

Returns the current position of the software cursor

Reimplemented from ISlateViewport.

◆ GetViewport()

virtual FViewport * FSceneViewport::GetViewport ( )
inlineoverridevirtual

FViewportFrame interface

Implements FViewportFrame.

◆ GetViewportDynamicRange()

ESlateViewportDynamicRange FSceneViewport::GetViewportDynamicRange ( ) const
overridevirtual

Does the texture contain SDR/HDR information

Reimplemented from ISlateViewport.

◆ GetViewportFrame()

virtual FViewportFrame * FSceneViewport::GetViewportFrame ( )
inlineoverridevirtual

Retrieves the interface to the viewport's frame, if it has one.

Returns
The viewport's frame interface.

Implements FViewport.

◆ GetViewportRenderTargetTexture()

FSlateShaderResource * FSceneViewport::GetViewportRenderTargetTexture ( ) const
overridevirtual

ISlateViewport interface

Implements ISlateViewport.

◆ GetViewportWidget()

TWeakPtr< SViewport > FSceneViewport::GetViewportWidget ( ) const
inline
Returns
The viewport widget being used

◆ GetWidget()

TWeakPtr< SWidget > FSceneViewport::GetWidget ( )
overridevirtual

Gets the SWidget associated with this viewport

Reimplemented from ISlateViewport.

◆ GetWindow()

virtual void * FSceneViewport::GetWindow ( )
inlineoverridevirtual

Implements FViewport.

◆ HandleNavigation()

bool FSceneViewport::HandleNavigation ( const uint32  InUserIndex,
TSharedPtr< SWidget InDestination 
)
overridevirtual

Give the viewport an opportunity to override the navigation behavior. This is called after all the navigation event bubbling is complete and we know a destination.

Parameters
InDestinationThe destination widget
Returns
whether we handled the navigation

Reimplemented from ISlateViewport.

◆ HasFixedSize()

bool FSceneViewport::HasFixedSize ( ) const

Does the viewport has a fixed size

◆ HasFocus()

bool FSceneViewport::HasFocus ( ) const
overridevirtual

Reimplemented from FViewport.

◆ HasMouseCapture()

bool FSceneViewport::HasMouseCapture ( ) const
overridevirtual

Reimplemented from FViewport.

◆ InvalidateDisplay()

void FSceneViewport::InvalidateDisplay ( )
overridevirtual

Called when the viewport should be invalidated and redrawn

Implements FViewport.

◆ IsCursorVisible()

virtual bool FSceneViewport::IsCursorVisible ( ) const
inlineoverridevirtual

Returns true if the mouse cursor is currently visible

Returns
True if the mouse cursor is currently visible, otherwise false.

Reimplemented from FViewport.

◆ IsForegroundWindow()

bool FSceneViewport::IsForegroundWindow ( ) const
overridevirtual

Reimplemented from FViewport.

◆ IsSoftwareCursorVisible()

virtual bool FSceneViewport::IsSoftwareCursorVisible ( ) const
inlineoverridevirtual

Reimplemented from FViewport.

◆ IsStereoRenderingAllowed()

bool FSceneViewport::IsStereoRenderingAllowed ( ) const
overridevirtual

Should return true, if stereo rendering is allowed in this viewport

Reimplemented from FViewport.

◆ KeyState()

bool FSceneViewport::KeyState ( FKey  Key) const
overridevirtual

Returns the state of the provided key.

Parameters
KeyThe name of the key to check
Returns
true if the key is pressed, false otherwise

Implements FViewport.

◆ LockMouseToViewport()

void FSceneViewport::LockMouseToViewport ( bool  bLock)
overridevirtual

Reimplemented from FViewport.

◆ MoveWindow()

virtual void FSceneViewport::MoveWindow ( int32  NewPosX,
int32  NewPosY,
int32  NewSizeX,
int32  NewSizeY 
)
inlineoverridevirtual

FViewport interface

Implements FViewport.

◆ OnAnalogValueChanged()

FReply FSceneViewport::OnAnalogValueChanged ( const FGeometry MyGeometry,
const FAnalogInputEvent InAnalogInputEvent 
)
overridevirtual

Called when an analog value changes on a button that supports analog

Parameters
MyGeometryThe Geometry of the widget receiving the event
InAnalogInputEventAnalog input event
Returns
Returns whether the event was handled, along with other possible actions

Reimplemented from ISlateViewport.

◆ OnCursorQuery()

FCursorReply FSceneViewport::OnCursorQuery ( const FGeometry MyGeometry,
const FPointerEvent CursorEvent 
)
overridevirtual

Called when Slate needs to know what the mouse cursor should be.

Returns
FCursorReply::Unhandled() if the event is not handled; FCursorReply::Cursor() otherwise.

Reimplemented from ISlateViewport.

◆ OnDrawViewport()

void FSceneViewport::OnDrawViewport ( const FGeometry AllottedGeometry,
const FSlateRect MyCullingRect,
FSlateWindowElementList OutDrawElements,
int32  LayerId,
const FWidgetStyle InWidgetStyle,
bool  bParentEnabled 
)
overridevirtual

Called by Slate when the viewport widget is drawn Implementers of this interface can use this method to perform custom per draw functionality. This is only called if the widget is visible

Parameters
AllottedGeometryThe geometry of the viewport widget

Check to see if the viewport should be resized

Reimplemented from ISlateViewport.

◆ OnFinishedPointerInput()

void FSceneViewport::OnFinishedPointerInput ( )
overridevirtual

Called after all input for this frame is processed.

Reimplemented from ISlateViewport.

◆ OnFocusLost()

void FSceneViewport::OnFocusLost ( const FFocusEvent InFocusEvent)
overridevirtual

Called when the viewport loses keyboard focus.

Parameters
InFocusEventInformation about what caused the viewport to lose focus

Reimplemented from ISlateViewport.

◆ OnFocusReceived()

FReply FSceneViewport::OnFocusReceived ( const FFocusEvent InFocusEvent)
overridevirtual

Called when the viewport gains keyboard focus.

Parameters
InFocusEventInformation about what caused the viewport to gain focus

Reimplemented from ISlateViewport.

◆ OnKeyChar()

FReply FSceneViewport::OnKeyChar ( const FGeometry MyGeometry,
const FCharacterEvent InCharacterEvent 
)
overridevirtual

Called by Slate when a character key is pressed while the viewport has focus

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the character that was pressed
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnKeyDown()

FReply FSceneViewport::OnKeyDown ( const FGeometry MyGeometry,
const FKeyEvent InKeyEvent 
)
overridevirtual

Called by Slate when a key is pressed inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the key event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnKeyUp()

FReply FSceneViewport::OnKeyUp ( const FGeometry MyGeometry,
const FKeyEvent InKeyEvent 
)
overridevirtual

Called by Slate when a key is released inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the key event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnMapCursor()

TOptional< TSharedRef< SWidget > > FSceneViewport::OnMapCursor ( const FCursorReply CursorReply)
overridevirtual

After OnCursorQuery has specified a cursor type the system asks each widget under the mouse to map that cursor to a widget. This event is bubbled.

Returns
TOptional<TSharedRef<SWidget>>() if you don't have a mapping otherwise return the Widget to show.

Reimplemented from ISlateViewport.

◆ OnMotionDetected()

FReply FSceneViewport::OnMotionDetected ( const FGeometry MyGeometry,
const FMotionEvent InMotionEvent 
)
overridevirtual

Called when motion is detected (controller or device) e.g. Someone tilts or shakes their controller.

Parameters
InMotionEventThe motion event generated

Reimplemented from ISlateViewport.

◆ OnMouseButtonDoubleClick()

FReply FSceneViewport::OnMouseButtonDoubleClick ( const FGeometry InMyGeometry,
const FPointerEvent InMouseEvent 
)
overridevirtual

Called by Slate when the mouse wheel is used inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the mouse event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnMouseButtonDown()

FReply FSceneViewport::OnMouseButtonDown ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Called by Slate when a mouse button is pressed inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the mouse event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnMouseButtonUp()

FReply FSceneViewport::OnMouseButtonUp ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Called by Slate when a mouse button is released inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the mouse event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnMouseEnter()

void FSceneViewport::OnMouseEnter ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Reimplemented from ISlateViewport.

◆ OnMouseLeave()

void FSceneViewport::OnMouseLeave ( const FPointerEvent MouseEvent)
overridevirtual

Reimplemented from ISlateViewport.

◆ OnMouseMove()

FReply FSceneViewport::OnMouseMove ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Called by Slate when a mouse button is released inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the mouse event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnMouseWheel()

FReply FSceneViewport::OnMouseWheel ( const FGeometry MyGeometry,
const FPointerEvent MouseEvent 
)
overridevirtual

Called by Slate when the mouse wheel is used inside the viewport

Parameters
MyGeometryInformation about the location and size of the viewport
MouseEventInformation about the mouse event
Returns
Whether the event was handled along with possible requests for the system to take action.

Reimplemented from ISlateViewport.

◆ OnPlayWorldViewportSwapped()

void FSceneViewport::OnPlayWorldViewportSwapped ( const FSceneViewport OtherViewport)

Performs a resize when in swapping viewports while viewing the play world.

Parameters
OtherViewportThe previously active viewport

◆ OnQueryPopupMethod()

FPopupMethodReply FSceneViewport::OnQueryPopupMethod ( ) const
overridevirtual

Called to figure out whether we can make new windows for popups within this viewport. Making windows allows us to have popups that go outside the parent window, but cannot be used in fullscreen and do not have per-pixel alpha.

Reimplemented from ISlateViewport.

◆ OnQueryShowFocus()

TOptional< bool > FSceneViewport::OnQueryShowFocus ( const EFocusCause  InFocusCause) const
overridevirtual

Called to determine if we should render the focus brush.

Parameters
InFocusCauseThe cause of focus

Reimplemented from ISlateViewport.

◆ OnRequestWindowClose()

FReply FSceneViewport::OnRequestWindowClose ( )
overridevirtual

Called when the top level window associated with the viewport has been requested to close. At this point, the viewport has not been closed and the operation may be canceled. This may not called from PIE, Editor Windows, on consoles, or before the game ends from other methods. This is only when the platform specific window is closed.

Returns
FReply::Handled if the close event was consumed (and the window should remain open).

Reimplemented from ISlateViewport.

◆ OnTouchEnded()

FReply FSceneViewport::OnTouchEnded ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is ended (finger lifted)

Parameters
ControllerEventThe controller event generated

Reimplemented from ISlateViewport.

◆ OnTouchFirstMove()

FReply FSceneViewport::OnTouchFirstMove ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch has first moved after initial press

Parameters
ControllerEventThe controller event generated

Reimplemented from ISlateViewport.

◆ OnTouchForceChanged()

FReply FSceneViewport::OnTouchForceChanged ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch force changes, but may or may not have moved

Parameters
ControllerEventThe controller event generated

Reimplemented from ISlateViewport.

◆ OnTouchGesture()

FReply FSceneViewport::OnTouchGesture ( const FGeometry MyGeometry,
const FPointerEvent InGestureEvent 
)
overridevirtual

Called on a touchpad gesture event

Parameters
InGestureEventThe touch event generated

Reimplemented from ISlateViewport.

◆ OnTouchMoved()

FReply FSceneViewport::OnTouchMoved ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is moved (finger moved)

Parameters
ControllerEventThe controller event generated

Reimplemented from ISlateViewport.

◆ OnTouchStarted()

FReply FSceneViewport::OnTouchStarted ( const FGeometry MyGeometry,
const FPointerEvent InTouchEvent 
)
overridevirtual

Called when a touchpad touch is started (finger down)

Parameters
ControllerEventThe controller event generated

Reimplemented from ISlateViewport.

◆ OnViewportActivated()

FReply FSceneViewport::OnViewportActivated ( const FWindowActivateEvent InActivateEvent)
overridevirtual

Called when the viewports top level window is being Activated

Reimplemented from ISlateViewport.

◆ OnViewportClosed()

void FSceneViewport::OnViewportClosed ( )
overridevirtual

Called when the viewport has been requested to close.

Reimplemented from ISlateViewport.

◆ OnViewportDeactivated()

void FSceneViewport::OnViewportDeactivated ( const FWindowActivateEvent InActivateEvent)
overridevirtual

Called when the viewports top level window is being Deactivated

Reimplemented from ISlateViewport.

◆ PaintDebugCanvas()

void FSceneViewport::PaintDebugCanvas ( const FGeometry AllottedGeometry,
FSlateWindowElementList OutDrawElements,
int32  LayerId 
) const

Adds a draw element for the debug canvas. Called externally by a widget that manages where the debug canvas draws

◆ ProcessInput()

void FSceneViewport::ProcessInput ( float  DeltaTime)
overridevirtual

Additional input processing that happens every frame

Implements FViewport.

◆ RequiresVsync()

virtual bool FSceneViewport::RequiresVsync ( ) const
inlineoverridevirtual

Returns true if the viewport should be vsynced.

Implements ISlateViewport.

◆ ResizeFrame()

void FSceneViewport::ResizeFrame ( uint32  NewSizeX,
uint32  NewSizeY,
EWindowMode::Type  NewWindowMode 
)
overridevirtual

Called to resize the actual window where this viewport resides

Parameters
NewSizeXThe new width of the viewport
NewSizeYThe new height of the viewport
NewWindowModeWhat window mode should the viewport be resized to

Implements FViewportFrame.

◆ SetDebugCanvas()

void FSceneViewport::SetDebugCanvas ( TSharedPtr< class SDebugCanvas InDebugCanvas)

Sets the debug canvas used to display FCanvas on top of this viewport

◆ SetFixedViewportSize()

void FSceneViewport::SetFixedViewportSize ( uint32  NewSizeX,
uint32  NewSizeY 
)

◆ SetGammaOverride()

void FSceneViewport::SetGammaOverride ( const float  InGammaOverride)
inline

Set an optional display gamma to use for this viewport

◆ SetMouse()

void FSceneViewport::SetMouse ( int32  X,
int32  Y 
)
overridevirtual

Not implemented

Implements FViewport.

◆ SetOnSceneViewportResizeDel()

void FSceneViewport::SetOnSceneViewportResizeDel ( FOnSceneViewportResize  InOnSceneViewportResize)
inline

Sets the Viewport resize delegate.

◆ SetPlayInEditorGetsMouseControl()

void FSceneViewport::SetPlayInEditorGetsMouseControl ( const bool  bGetsMouseControl)
inline

Sets whether a PIE viewport takes mouse control on startup.

Parameters
bGetsMouseControlTakes control if true, or not if false.

◆ SetPlayInEditorIsSimulate()

void FSceneViewport::SetPlayInEditorIsSimulate ( const bool  bIsSimulate)
inline

◆ SetPreCaptureMousePosFromSlateCursor()

void FSceneViewport::SetPreCaptureMousePosFromSlateCursor ( )
overridevirtual

Sets PreCapture coordinates from the current position of the slate cursor.

Reimplemented from FViewport.

◆ SetRenderTargetTextureRenderThread()

void FSceneViewport::SetRenderTargetTextureRenderThread ( FTextureRHIRef RT)
virtual

◆ SetRequiresVsync()

virtual void FSceneViewport::SetRequiresVsync ( bool  bShouldVsync)
inlineoverridevirtual

Indicate that the viewport should be block for vsync.

Reimplemented from FViewport.

◆ SetSoftwareCursorPosition()

virtual void FSceneViewport::SetSoftwareCursorPosition ( FVector2D  Position)
inlineoverridevirtual

Reimplemented from FViewport.

◆ SetUserFocus()

bool FSceneViewport::SetUserFocus ( bool  bFocus)
overridevirtual

Captures or uncaptures the joystick

Parameters
Capturetrue if we should capture, false if we should uncapture

Implements FViewport.

◆ SetViewportSize()

void FSceneViewport::SetViewportSize ( uint32  NewSizeX,
uint32  NewSizeY 
)

◆ ShowCursor()

void FSceneViewport::ShowCursor ( bool  bVisible)
overridevirtual

Reimplemented from FViewport.

◆ ShowSoftwareCursor()

virtual void FSceneViewport::ShowSoftwareCursor ( bool  bVisible)
inlineoverridevirtual

Reimplemented from FViewport.

◆ SwapStatCommands()

void FSceneViewport::SwapStatCommands ( const FSceneViewport OtherViewport)

Swaps the active stats with another viewports

Parameters
OtherViewportThe previously active viewport

◆ Tick()

void FSceneViewport::Tick ( const FGeometry AllottedGeometry,
double  InCurrentTime,
float  InDeltaTime 
)
overridevirtual

Ticks the viewport

Reimplemented from ISlateViewport.

◆ UpdateViewportRHI()

void FSceneViewport::UpdateViewportRHI ( bool  bDestroyed,
uint32  NewSizeX,
uint32  NewSizeY,
EWindowMode::Type  NewWindowMode,
EPixelFormat  PreferredPixelFormat 
)
overridevirtual

Updates the viewport RHI with a new size and fullscreen flag

Reimplemented from FViewport.

◆ ViewportToVirtualDesktopPixel()

FIntPoint FSceneViewport::ViewportToVirtualDesktopPixel ( FVector2D  ViewportCoordinate) const
overridevirtual

Transforms a coordinate in the local space of this viewport into a virtual desktop pixel.

Parameters
ViewportCoordianteNormalized coordniate in the rate [0..1]; (0,0) is upper left and (1,1) is lower right.
Returns
the transformed coordinate. It is in virtual desktop pixels.

Implements FViewport.

◆ VirtualDesktopPixelToViewport()

FVector2D FSceneViewport::VirtualDesktopPixelToViewport ( FIntPoint  VirtualDesktopPointPx) const
overridevirtual

Transforms a virtual desktop pixel (the origin is in the primary screen's top left corner) to the local space of this viewport

Parameters
VirtualDesktopPointPxCoordinate on the virtual desktop in pixel units. Desktop is considered virtual because multiple monitors are supported.
Returns
The transformed pixel. It is normalized to the range [0, 1]

Implements FViewport.


The documentation for this class was generated from the following files: