summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp5
-rw-r--r--src/video_core/renderer_opengl/gl_stream_buffer.cpp5
-rw-r--r--src/video_core/renderer_opengl/gl_stream_buffer.h3
-rw-r--r--src/yuzu/main.cpp3
-rw-r--r--src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp4
5 files changed, 12 insertions, 8 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index afacc3fbd..56f2d2972 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -105,11 +105,6 @@ void RasterizerOpenGL::CheckExtensions() {
105 Render_OpenGL, 105 Render_OpenGL,
106 "Anisotropic filter is not supported! This can cause graphical issues in some games."); 106 "Anisotropic filter is not supported! This can cause graphical issues in some games.");
107 } 107 }
108 if (!GLAD_GL_ARB_buffer_storage) {
109 LOG_WARNING(
110 Render_OpenGL,
111 "Buffer storage control is not supported! This can cause performance degradation.");
112 }
113} 108}
114 109
115GLuint RasterizerOpenGL::SetupVertexFormat() { 110GLuint RasterizerOpenGL::SetupVertexFormat() {
diff --git a/src/video_core/renderer_opengl/gl_stream_buffer.cpp b/src/video_core/renderer_opengl/gl_stream_buffer.cpp
index d0b14b3f6..35ba334e4 100644
--- a/src/video_core/renderer_opengl/gl_stream_buffer.cpp
+++ b/src/video_core/renderer_opengl/gl_stream_buffer.cpp
@@ -15,7 +15,8 @@ MICROPROFILE_DEFINE(OpenGL_StreamBuffer, "OpenGL", "Stream Buffer Orphaning",
15 15
16namespace OpenGL { 16namespace OpenGL {
17 17
18OGLStreamBuffer::OGLStreamBuffer(GLsizeiptr size, bool vertex_data_usage, bool prefer_coherent) 18OGLStreamBuffer::OGLStreamBuffer(GLsizeiptr size, bool vertex_data_usage, bool prefer_coherent,
19 bool use_persistent)
19 : buffer_size(size) { 20 : buffer_size(size) {
20 gl_buffer.Create(); 21 gl_buffer.Create();
21 22
@@ -29,7 +30,7 @@ OGLStreamBuffer::OGLStreamBuffer(GLsizeiptr size, bool vertex_data_usage, bool p
29 allocate_size *= 2; 30 allocate_size *= 2;
30 } 31 }
31 32
32 if (GLAD_GL_ARB_buffer_storage) { 33 if (use_persistent) {
33 persistent = true; 34 persistent = true;
34 coherent = prefer_coherent; 35 coherent = prefer_coherent;
35 const GLbitfield flags = 36 const GLbitfield flags =
diff --git a/src/video_core/renderer_opengl/gl_stream_buffer.h b/src/video_core/renderer_opengl/gl_stream_buffer.h
index 3d18ecb4d..f8383cbd4 100644
--- a/src/video_core/renderer_opengl/gl_stream_buffer.h
+++ b/src/video_core/renderer_opengl/gl_stream_buffer.h
@@ -13,7 +13,8 @@ namespace OpenGL {
13 13
14class OGLStreamBuffer : private NonCopyable { 14class OGLStreamBuffer : private NonCopyable {
15public: 15public:
16 explicit OGLStreamBuffer(GLsizeiptr size, bool vertex_data_usage, bool prefer_coherent = false); 16 explicit OGLStreamBuffer(GLsizeiptr size, bool vertex_data_usage, bool prefer_coherent = false,
17 bool use_persistent = true);
17 ~OGLStreamBuffer(); 18 ~OGLStreamBuffer();
18 19
19 GLuint GetHandle() const; 20 GLuint GetHandle() const;
diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp
index 66a7080c9..443fec249 100644
--- a/src/yuzu/main.cpp
+++ b/src/yuzu/main.cpp
@@ -750,6 +750,9 @@ void GMainWindow::OnDisplayTitleBars(bool show) {
750QStringList GMainWindow::GetUnsupportedGLExtensions() { 750QStringList GMainWindow::GetUnsupportedGLExtensions() {
751 QStringList unsupported_ext; 751 QStringList unsupported_ext;
752 752
753 if (!GLAD_GL_ARB_buffer_storage) {
754 unsupported_ext.append(QStringLiteral("ARB_buffer_storage"));
755 }
753 if (!GLAD_GL_ARB_direct_state_access) { 756 if (!GLAD_GL_ARB_direct_state_access) {
754 unsupported_ext.append(QStringLiteral("ARB_direct_state_access")); 757 unsupported_ext.append(QStringLiteral("ARB_direct_state_access"));
755 } 758 }
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp
index e2d3df180..f91b071bf 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp
@@ -52,6 +52,10 @@ private:
52bool EmuWindow_SDL2_GL::SupportsRequiredGLExtensions() { 52bool EmuWindow_SDL2_GL::SupportsRequiredGLExtensions() {
53 std::vector<std::string> unsupported_ext; 53 std::vector<std::string> unsupported_ext;
54 54
55 if (!GLAD_GL_ARB_buffer_storage)
56 unsupported_ext.push_back("ARB_buffer_storage");
57 if (!GLAD_GL_ARB_direct_state_access)
58 unsupported_ext.push_back("ARB_direct_state_access");
55 if (!GLAD_GL_ARB_vertex_type_10f_11f_11f_rev) 59 if (!GLAD_GL_ARB_vertex_type_10f_11f_11f_rev)
56 unsupported_ext.push_back("ARB_vertex_type_10f_11f_11f_rev"); 60 unsupported_ext.push_back("ARB_vertex_type_10f_11f_11f_rev");
57 if (!GLAD_GL_ARB_texture_mirror_clamp_to_edge) 61 if (!GLAD_GL_ARB_texture_mirror_clamp_to_edge)