summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl
diff options
context:
space:
mode:
authorFernando Sahmkow <fsahmkow27@gmail.com>2020-02-18 22:20:39 +0100
committerFernando Sahmkow <fsahmkow27@gmail.com>2020-04-22 17:36:15 +0200
commitb10db7e4a5f43414679b7969ea309b1829937a37 (patch)
tree5a2df21d974ee17488ee01960a823ae6f89d9edb /src/video_core/renderer_opengl
parentRasterizer: Document SignalFence & ReleaseFences and setup skeletons on Vulkan. (diff)
downloadyuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar.gz
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar.bz2
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar.lz
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar.xz
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.tar.zst
yuzu-b10db7e4a5f43414679b7969ea309b1829937a37.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_fence_manager.cpp4
-rw-r--r--src/video_core/renderer_opengl/gl_fence_manager.h5
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp3
3 files changed, 7 insertions, 5 deletions
diff --git a/src/video_core/renderer_opengl/gl_fence_manager.cpp b/src/video_core/renderer_opengl/gl_fence_manager.cpp
index 4517ef150..69dd3211b 100644
--- a/src/video_core/renderer_opengl/gl_fence_manager.cpp
+++ b/src/video_core/renderer_opengl/gl_fence_manager.cpp
@@ -33,8 +33,8 @@ void GLInnerFence::Wait() {
}
FenceManagerOpenGL::FenceManagerOpenGL(Core::System& system, VideoCore::RasterizerInterface& rasterizer,
- TextureCacheOpenGL& texture_cache)
- : GenericFenceManager(system, rasterizer, texture_cache) {}
+ TextureCacheOpenGL& texture_cache, OGLBufferCache& buffer_cache)
+ : GenericFenceManager(system, rasterizer, texture_cache, buffer_cache) {}
Fence FenceManagerOpenGL::CreateFence(GPUVAddr addr, u32 value) {
return std::make_shared<GLInnerFence>(addr, value);
diff --git a/src/video_core/renderer_opengl/gl_fence_manager.h b/src/video_core/renderer_opengl/gl_fence_manager.h
index 3cfa8b1d0..b48d5eaa0 100644
--- a/src/video_core/renderer_opengl/gl_fence_manager.h
+++ b/src/video_core/renderer_opengl/gl_fence_manager.h
@@ -9,6 +9,7 @@
#include "common/common_types.h"
#include "video_core/fence_manager.h"
+#include "video_core/renderer_opengl/gl_buffer_cache.h"
#include "video_core/renderer_opengl/gl_resource_manager.h"
#include "video_core/renderer_opengl/gl_texture_cache.h"
@@ -30,12 +31,12 @@ private:
};
using Fence = std::shared_ptr<GLInnerFence>;
-using GenericFenceManager = VideoCommon::FenceManager<Fence, TextureCacheOpenGL>;
+using GenericFenceManager = VideoCommon::FenceManager<Fence, TextureCacheOpenGL, OGLBufferCache>;
class FenceManagerOpenGL final : public GenericFenceManager {
public:
FenceManagerOpenGL(Core::System& system, VideoCore::RasterizerInterface& rasterizer,
- TextureCacheOpenGL& texture_cache);
+ TextureCacheOpenGL& texture_cache, OGLBufferCache& buffer_cache);
protected:
Fence CreateFence(GPUVAddr addr, u32 value) override;
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index db7eae065..88914828c 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -102,7 +102,8 @@ RasterizerOpenGL::RasterizerOpenGL(Core::System& system, Core::Frontend::EmuWind
shader_cache{*this, system, emu_window, device}, query_cache{system, *this}, system{system},
screen_info{info}, program_manager{program_manager}, state_tracker{state_tracker},
buffer_cache{*this, system, device, STREAM_BUFFER_SIZE}, fence_manager{system, *this,
- texture_cache} {
+ texture_cache,
+ buffer_cache} {
CheckExtensions();
}