Frontend: Add toggle for software rendering

This commit is contained in:
Connor McLaughlin
2019-10-27 21:52:10 +10:00
parent d1be9460b9
commit 12ce777e30
4 changed files with 41 additions and 12 deletions

View File

@ -1,14 +1,14 @@
#pragma once
#include "types.h"
enum class GPURenderer
{
HardwareOpenGL,
Software
};
struct Settings
{
enum class GPURenderer
{
HardwareOpenGL,
Software
};
Settings();
bool start_paused = false;

View File

@ -108,11 +108,11 @@ bool System::CreateGPU()
{
switch (m_settings.gpu_renderer)
{
case GPURenderer::HardwareOpenGL:
case Settings::GPURenderer::HardwareOpenGL:
m_gpu = GPU::CreateHardwareOpenGLRenderer();
break;
case GPURenderer::Software:
case Settings::GPURenderer::Software:
default:
m_gpu = GPU::CreateSoftwareRenderer();
break;
@ -122,7 +122,7 @@ bool System::CreateGPU()
{
Log_ErrorPrintf("Failed to initialize GPU, falling back to software");
m_gpu.reset();
m_settings.gpu_renderer = GPURenderer::Software;
m_settings.gpu_renderer = Settings::GPURenderer::Software;
m_gpu = GPU::CreateSoftwareRenderer();
if (!m_gpu->Initialize(this, m_dma.get(), m_interrupt_controller.get(), m_timers.get()))
return false;