diff options
| author | Stenzek <stenzek@gmail.com> | 2017-03-04 16:40:08 +1000 |
|---|---|---|
| committer | Stenzek <stenzek@gmail.com> | 2017-03-04 16:42:16 +1000 |
| commit | 238a70b0060c1d45b12d4702bb41725e9ebb5fa6 (patch) | |
| tree | a6a0a51cc1bd19df0cd539b45cdbd659fad3a3c3 /Source/Core/VideoBackends/D3D12/Render.cpp | |
| parent | 277829d842ae4aca234de95fb295ed9da043a9fa (diff) | |
VideoCommon: Move some common initialization logic to RenderBase
Diffstat (limited to 'Source/Core/VideoBackends/D3D12/Render.cpp')
| -rw-r--r-- | Source/Core/VideoBackends/D3D12/Render.cpp | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/Source/Core/VideoBackends/D3D12/Render.cpp b/Source/Core/VideoBackends/D3D12/Render.cpp index c9e8c618c1..d63af49a04 100644 --- a/Source/Core/VideoBackends/D3D12/Render.cpp +++ b/Source/Core/VideoBackends/D3D12/Render.cpp @@ -101,8 +101,6 @@ StateCache gx_state_cache; static void SetupDeviceObjects() { - g_framebuffer_manager = std::make_unique<FramebufferManager>(); - D3D12_DEPTH_STENCIL_DESC depth_desc; depth_desc.DepthEnable = FALSE; depth_desc.DepthWriteMask = D3D12_DEPTH_WRITE_MASK_ZERO; @@ -211,7 +209,7 @@ static void Create3DVisionTexture(int width, int height) // D3D12TODO: 3D Vision not implemented on D3D12 backend. } -Renderer::Renderer(void*& window_handle) +Renderer::Renderer() : ::Renderer(D3D::GetBackBufferWidth(), D3D::GetBackBufferHeight()) { if (g_ActiveConfig.iStereoMode == STEREO_3DVISION) { @@ -219,21 +217,11 @@ Renderer::Renderer(void*& window_handle) return; } - s_backbuffer_width = D3D::GetBackBufferWidth(); - s_backbuffer_height = D3D::GetBackBufferHeight(); - - FramebufferManagerBase::SetLastXfbWidth(MAX_XFB_WIDTH); - FramebufferManagerBase::SetLastXfbHeight(MAX_XFB_HEIGHT); - - UpdateDrawRectangle(); - s_last_multisamples = g_ActiveConfig.iMultisamples; - s_last_efb_scale = g_ActiveConfig.iEFBScale; s_last_stereo_mode = g_ActiveConfig.iStereoMode > 0; s_last_xfb_mode = g_ActiveConfig.bUseRealXFB; - CalculateTargetSize(); - PixelShaderManager::SetEfbScaleChanged(); + g_framebuffer_manager = std::make_unique<FramebufferManager>(s_target_width, s_target_height); SetupDeviceObjects(); // Setup GX pipeline state @@ -877,7 +865,7 @@ void Renderer::SwapImpl(u32 xfb_addr, u32 fb_width, u32 fb_stride, u32 fb_height nullptr); g_framebuffer_manager.reset(); - g_framebuffer_manager = std::make_unique<FramebufferManager>(); + g_framebuffer_manager = std::make_unique<FramebufferManager>(s_target_width, s_target_height); const float clear_color[4] = {0.f, 0.f, 0.f, 1.f}; FramebufferManager::GetEFBColorTexture()->TransitionToResourceState( |
