summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Null/NullBackend.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoBackends/Null/NullBackend.cpp')
-rw-r--r--Source/Core/VideoBackends/Null/NullBackend.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/Source/Core/VideoBackends/Null/NullBackend.cpp b/Source/Core/VideoBackends/Null/NullBackend.cpp
index d790331e36..1e5c4e1193 100644
--- a/Source/Core/VideoBackends/Null/NullBackend.cpp
+++ b/Source/Core/VideoBackends/Null/NullBackend.cpp
@@ -13,7 +13,9 @@
#include "VideoBackends/Null/VertexManager.h"
#include "VideoBackends/Null/VideoBackend.h"
-#include "VideoCommon/FramebufferManagerBase.h"
+#include "Common/MsgHandler.h"
+
+#include "VideoCommon/FramebufferManager.h"
#include "VideoCommon/VideoBackendBase.h"
#include "VideoCommon/VideoCommon.h"
#include "VideoCommon/VideoConfig.h"
@@ -61,10 +63,21 @@ bool VideoBackend::Initialize(const WindowSystemInfo& wsi)
g_renderer = std::make_unique<Renderer>();
g_vertex_manager = std::make_unique<VertexManager>();
g_perf_query = std::make_unique<PerfQuery>();
- g_framebuffer_manager = std::make_unique<FramebufferManagerBase>();
+ g_framebuffer_manager = std::make_unique<FramebufferManager>();
g_texture_cache = std::make_unique<TextureCache>();
g_shader_cache = std::make_unique<VideoCommon::ShaderCache>();
- return g_renderer->Initialize() && g_shader_cache->Initialize();
+
+ if (!g_vertex_manager->Initialize() || !g_shader_cache->Initialize() ||
+ !g_renderer->Initialize() || !g_framebuffer_manager->Initialize() ||
+ !g_texture_cache->Initialize())
+ {
+ PanicAlert("Failed to initialize renderer classes");
+ Shutdown();
+ return false;
+ }
+
+ g_shader_cache->InitializeShaderCache();
+ return true;
}
void VideoBackend::Shutdown()