summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_buffer_cache.cpp
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-20 18:14:03 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-04-22 17:36:18 +0200
commit131b342130f21cf66ca64ece8034951ad6cce1f7 (patch)
treef6023db21a04e60535e4e6ac7ffd25d609b682f0 /src/video_core/renderer_opengl/gl_buffer_cache.cpp
parentGPU: Implement Flush Requests for Async mode. (diff)
downloadyuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar.gz
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar.bz2
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar.lz
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar.xz
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.tar.zst
yuzu-131b342130f21cf66ca64ece8034951ad6cce1f7.zip
Diffstat (limited to 'src/video_core/renderer_opengl/gl_buffer_cache.cpp')
-rw-r--r--src/video_core/renderer_opengl/gl_buffer_cache.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_buffer_cache.cpp b/src/video_core/renderer_opengl/gl_buffer_cache.cpp
index cb5792407..4efce0de7 100644
--- a/src/video_core/renderer_opengl/gl_buffer_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_buffer_cache.cpp
@@ -52,7 +52,7 @@ Buffer OGLBufferCache::CreateBlock(VAddr cpu_addr, std::size_t size) {
}
void OGLBufferCache::WriteBarrier() {
- glMemoryBarrier(GL_ALL_BARRIER_BITS);
+ glMemoryBarrier(GL_SHADER_STORAGE_BARRIER_BIT);
}
GLuint OGLBufferCache::ToHandle(const Buffer& buffer) {
@@ -72,6 +72,7 @@ void OGLBufferCache::UploadBlockData(const Buffer& buffer, std::size_t offset, s
void OGLBufferCache::DownloadBlockData(const Buffer& buffer, std::size_t offset, std::size_t size,
u8* data) {
MICROPROFILE_SCOPE(OpenGL_Buffer_Download);
+ glMemoryBarrier(GL_BUFFER_UPDATE_BARRIER_BIT);
glGetNamedBufferSubData(buffer->GetHandle(), static_cast<GLintptr>(offset),
static_cast<GLsizeiptr>(size), data);
}