diff options
author | bunnei <bunneidev@gmail.com> | 2019-03-07 10:41:53 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-03-07 10:41:53 -0500 |
commit | 4f352833a5b94e900ed7afb3b84eeda1bb5fab3d (patch) | |
tree | 48af4d722e551f55a117244f986c11e47e7b27e5 /src/core/core.cpp | |
parent | 076c76f4e41602f94c06e23f5d1f1ff1cddca95b (diff) | |
parent | 84ad81ee6798ece6c66016c4581b5fe57ce7b20e (diff) |
Merge pull request #2055 from bunnei/gpu-thread
Asynchronous GPU command processing
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r-- | src/core/core.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index d741ef90d..eba2177d1 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp @@ -36,7 +36,8 @@ #include "frontend/applets/software_keyboard.h" #include "frontend/applets/web_browser.h" #include "video_core/debug_utils/debug_utils.h" -#include "video_core/gpu.h" +#include "video_core/gpu_asynch.h" +#include "video_core/gpu_synch.h" #include "video_core/renderer_base.h" #include "video_core/video_core.h" @@ -129,10 +130,16 @@ struct System::Impl { return ResultStatus::ErrorVideoCore; } - gpu_core = std::make_unique<Tegra::GPU>(system, renderer->Rasterizer()); + is_powered_on = true; + + if (Settings::values.use_asynchronous_gpu_emulation) { + gpu_core = std::make_unique<VideoCommon::GPUAsynch>(system, *renderer); + } else { + gpu_core = std::make_unique<VideoCommon::GPUSynch>(system, *renderer); + } cpu_core_manager.Initialize(system); - is_powered_on = true; + LOG_DEBUG(Core, "Initialized OK"); // Reset counters and set time origin to current frame |