Merge pull request #4923 from jroweboy/diskcachelul
Disk Shader Caching
This commit is contained in:
commit
e74a402c69
41 changed files with 1600 additions and 138 deletions
|
@ -237,9 +237,16 @@ System::ResultStatus System::Init(Frontend::EmuWindow& emu_window, u32 system_mo
|
|||
Service::Init(*this);
|
||||
GDBStub::Init();
|
||||
|
||||
ResultStatus result = VideoCore::Init(emu_window, *memory);
|
||||
if (result != ResultStatus::Success) {
|
||||
return result;
|
||||
VideoCore::ResultStatus result = VideoCore::Init(emu_window, *memory);
|
||||
if (result != VideoCore::ResultStatus::Success) {
|
||||
switch (result) {
|
||||
case VideoCore::ResultStatus::ErrorGenericDrivers:
|
||||
return ResultStatus::ErrorVideoCore_ErrorGenericDrivers;
|
||||
case VideoCore::ResultStatus::ErrorBelowGL33:
|
||||
return ResultStatus::ErrorVideoCore_ErrorBelowGL33;
|
||||
default:
|
||||
return ResultStatus::ErrorVideoCore;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef ENABLE_FFMPEG_VIDEO_DUMPER
|
||||
|
@ -253,6 +260,10 @@ System::ResultStatus System::Init(Frontend::EmuWindow& emu_window, u32 system_mo
|
|||
return ResultStatus::Success;
|
||||
}
|
||||
|
||||
RendererBase& System::Renderer() {
|
||||
return *VideoCore::g_renderer;
|
||||
}
|
||||
|
||||
Service::SM::ServiceManager& System::ServiceManager() {
|
||||
return *service_manager;
|
||||
}
|
||||
|
|
|
@ -55,6 +55,8 @@ namespace VideoDumper {
|
|||
class Backend;
|
||||
}
|
||||
|
||||
class RendererBase;
|
||||
|
||||
namespace Core {
|
||||
|
||||
class Timing;
|
||||
|
@ -170,6 +172,8 @@ public:
|
|||
return *dsp_core;
|
||||
}
|
||||
|
||||
RendererBase& Renderer();
|
||||
|
||||
/**
|
||||
* Gets a reference to the service manager.
|
||||
* @returns A reference to the service manager.
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
#include "common/logging/log.h"
|
||||
#include "common/microprofile.h"
|
||||
#include "common/vector_math.h"
|
||||
#include "core/core.h"
|
||||
#include "core/core_timing.h"
|
||||
#include "core/hle/service/gsp/gsp.h"
|
||||
#include "core/hw/gpu.h"
|
||||
|
|
|
@ -28,6 +28,7 @@ void Apply() {
|
|||
VideoCore::g_shader_jit_enabled = values.use_shader_jit;
|
||||
VideoCore::g_hw_shader_enabled = values.use_hw_shader;
|
||||
VideoCore::g_hw_shader_accurate_mul = values.shaders_accurate_mul;
|
||||
VideoCore::g_use_disk_shader_cache = values.use_disk_shader_cache;
|
||||
|
||||
if (VideoCore::g_renderer) {
|
||||
VideoCore::g_renderer->UpdateCurrentFramebufferLayout();
|
||||
|
|
|
@ -141,6 +141,7 @@ struct Values {
|
|||
bool use_gles;
|
||||
bool use_hw_renderer;
|
||||
bool use_hw_shader;
|
||||
bool use_disk_shader_cache;
|
||||
bool shaders_accurate_mul;
|
||||
bool use_shader_jit;
|
||||
u16 resolution_factor;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue