Rasterizer: Disable fence managing in synchronous gpu.
This commit is contained in:
parent
165ae823f5
commit
e84eb64e51
2 changed files with 11 additions and 1 deletions
|
@ -682,10 +682,20 @@ void RasterizerOpenGL::SyncGuestHost() {
|
|||
}
|
||||
|
||||
void RasterizerOpenGL::SignalFence(GPUVAddr addr, u32 value) {
|
||||
auto& gpu{system.GPU()};
|
||||
if (!gpu.IsAsync()) {
|
||||
auto& memory_manager{gpu.MemoryManager()};
|
||||
memory_manager.Write<u32>(addr, value);
|
||||
return;
|
||||
}
|
||||
fence_manager.SignalFence(addr, value);
|
||||
}
|
||||
|
||||
void RasterizerOpenGL::ReleaseFences() {
|
||||
auto& gpu{system.GPU()};
|
||||
if (!gpu.IsAsync()) {
|
||||
return;
|
||||
}
|
||||
fence_manager.WaitPendingFences();
|
||||
}
|
||||
|
||||
|
|
|
@ -252,7 +252,7 @@ public:
|
|||
auto& surface = render_targets[index].target;
|
||||
surface->MarkAsRenderTarget(false, NO_RT);
|
||||
const auto& cr_params = surface->GetSurfaceParams();
|
||||
if (!cr_params.is_tiled) {
|
||||
if (!cr_params.is_tiled && Settings::values.use_asynchronous_gpu_emulation) {
|
||||
AsyncFlushSurface(surface);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue