summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_opengl/gl_compute_pipeline.h
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2021-05-26 23:32:59 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-23 03:51:33 +0200
commitadb591a757ccb289634920d51cf519b515ca32b6 (patch)
tree987c5cd0a346e69633791ad5ec355b6104ab036e /src/video_core/renderer_opengl/gl_compute_pipeline.h
parentglasm: Implement Y direction (diff)
downloadyuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar.gz
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar.bz2
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar.lz
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar.xz
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.tar.zst
yuzu-adb591a757ccb289634920d51cf519b515ca32b6.zip
Diffstat (limited to '')
-rw-r--r--src/video_core/renderer_opengl/gl_compute_pipeline.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/video_core/renderer_opengl/gl_compute_pipeline.h b/src/video_core/renderer_opengl/gl_compute_pipeline.h
index e3b94e2f3..dd6b62ef2 100644
--- a/src/video_core/renderer_opengl/gl_compute_pipeline.h
+++ b/src/video_core/renderer_opengl/gl_compute_pipeline.h
@@ -28,6 +28,7 @@ struct Info;
namespace OpenGL {
+class Device;
class ProgramManager;
struct ComputePipelineKey {
@@ -49,14 +50,18 @@ static_assert(std::is_trivially_constructible_v<ComputePipelineKey>);
class ComputePipeline {
public:
- explicit ComputePipeline(TextureCache& texture_cache_, BufferCache& buffer_cache_,
- Tegra::MemoryManager& gpu_memory_,
+ explicit ComputePipeline(const Device& device, TextureCache& texture_cache_,
+ BufferCache& buffer_cache_, Tegra::MemoryManager& gpu_memory_,
Tegra::Engines::KeplerCompute& kepler_compute_,
ProgramManager& program_manager_, const Shader::Info& info_,
OGLProgram source_program_, OGLAssemblyProgram assembly_program_);
void Configure();
+ [[nodiscard]] bool WritesGlobalMemory() const noexcept {
+ return writes_global_memory;
+ }
+
private:
TextureCache& texture_cache;
BufferCache& buffer_cache;
@@ -70,6 +75,9 @@ private:
u32 num_texture_buffers{};
u32 num_image_buffers{};
+
+ bool use_storage_buffers{};
+ bool writes_global_memory{};
};
} // namespace OpenGL