FD3D12Viewport

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

FRHIViewport

FD3D12AdapterChild

FD3D12Viewport

References

Module

D3D12RHI

Header

/Engine/Source/Runtime/D3D12RHI/Public/D3D12Viewport.h

Include

#include "D3D12Viewport.h"

Syntax

class FD3D12Viewport :
    public FRHIViewport,
    public FD3D12AdapterChild

Constructors

Name Description

Public function

FD3D12Viewport

(
    FD3D12Adapter* InParent,
    HWND InWindowHandle,
    uint32 InSizeX,
    uint32 InSizeY,
    bool bInIsFullscreen,
    EPixelFormat InPixelFormat
)

Destructors

Name Description

Public function

~FD3D12Viewport()

Functions

Name Description

Public function

void

 

ConditionalResetSwapChain

(
    bool bIgnoreFocus
)

If the swap chain has been invalidated by DXGI, resets the swap chain to the expected state; otherwise, does nothing.

Public function Const

bool

 

CurrentOutputSupportsHDR()

Query the swap chain's current connected output for HDR support.

Public function Const

FD3D12Textur...

 

GetBackBuffer_RHIThread()

Public function Const

FD3D12Textur...

 

GetDummyBackBuffer_RenderThread

(
    bool bInIsSDR
)

Public function

FD3D12Fence ...

 

GetFence()

Public function Const

uint32

 

GetNumBackBuffers()

Public function Static

DXGI_FORMAT

 

GetRenderTargetFormat

(
    EPixelFormat PixelFormat
)

Public function Const

FD3D12Textur...

 

GetSDRBackBuffer_RHIThread()

Public function Const

FIntPoint

 

GetSizeXY()

Accessors.

Public function

void

 

Init()

Public function Const

const bool

 

IsFullscreen()

Public function

void

 

OnResumeRendering()

Public function

void

 

OnSuspendRendering()

Public function

bool

 

Present

(
    bool bLockToVsync
)

Presents the swap chain. Returns true if Present was done by Engine.

Public function

void

 

Resize

(
    uint32 InSizeX,
    uint32 InSizeY,
    bool bInIsFullscreen,
    EPixelFormat PreferredPixelFormat
)

Overridden from FRHIViewport

Name Description

Public function Virtual Const

FRHICustomPr...

 

GetCustomPresent()

Returns currently set custom present handler.

Public function Virtual Const

void *

 

GetNativeBackBufferRT()

Returns access to the platform-specific native resource pointer to a backbuffer rendertarget.

Public function Virtual Const

void *

 

GetNativeBackBufferTexture()

Returns access to the platform-specific native resource pointer to a backbuffer texture.

Public function Virtual Const

void *

 

GetNativeWindow

(
    void** AddParam
)

Returns access to the platform-specific native window.

Public function Virtual

void

 

IssueFrameEvent()

Public function Virtual

void

 

SetCustomPresent

(
    FRHICustomPresent*
)

Sets custom Present handler on the viewport

Public function Virtual

void

 

WaitForFrameEventCompletion()

Enums

Name

Description

Private enum

EDisplayFormat

Private enum

EDisplayGamut

Display gamut, format, and chromacities.

Constants

Name

Description

DXGIBackBufferLock

Lock viewport windows association and back buffer destruction because of possible crash inside DXGI factory during a call to MakeWindowAssociation Backbuffer release will wait on the call to MakeWindowAssociation while this will fail internally with 'The requested operation is not implemented.' in KernelBase.dll Reported & known problem in DXGI and will be fixed with future release but DXGI is not part of the Agility SDK so a code side fix is needed for now.