summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-20 16:55:32 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-04-22 17:36:17 +0200
commit1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434 (patch)
tree123d3f3e906e1af35c4bbced2d9029bc93fb4653 /src/video_core/renderer_opengl
parentFenceManager: Manage syncpoints and rename fences to semaphores. (diff)
downloadyuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar.gz
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar.bz2
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar.lz
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar.xz
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.tar.zst
yuzu-1fb516cd979ed0dbf8fa7cb4f6a334932dfb6434.zip
Diffstat (limited to 'src/video_core/renderer_opengl')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index e52e5961f..fbd81b895 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -601,6 +601,8 @@ void RasterizerOpenGL::Draw(bool is_indexed, bool is_instanced) {
EndTransformFeedback();
++num_queued_commands;
+
+ system.GPU().TickWork();
}
void RasterizerOpenGL::DispatchCompute(GPUVAddr code_addr) {
@@ -628,6 +630,7 @@ void RasterizerOpenGL::DispatchCompute(GPUVAddr code_addr) {
const auto& launch_desc = system.GPU().KeplerCompute().launch_description;
glDispatchCompute(launch_desc.grid_dim_x, launch_desc.grid_dim_y, launch_desc.grid_dim_z);
++num_queued_commands;
+ system.GPU().TickWork();
}
void RasterizerOpenGL::ResetCounter(VideoCore::QueryType type) {
@@ -652,6 +655,9 @@ void RasterizerOpenGL::FlushRegion(VAddr addr, u64 size) {
}
bool RasterizerOpenGL::MustFlushRegion(VAddr addr, u64 size) {
+ if (!Settings::IsGPULevelExtreme()) {
+ return buffer_cache.MustFlushRegion(addr, size);
+ }
return texture_cache.MustFlushRegion(addr, size) || buffer_cache.MustFlushRegion(addr, size);
}