summaryrefslogtreecommitdiff
path: root/src/video_core/rasterizer_interface.h
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2019-07-27 19:40:10 -0300
committerGravatar ReinUsesLisp2020-02-14 17:27:17 -0300
commit2b58652f0897053d4da04deb586490220ab5a774 (patch)
treecb49e0b4da2297e25da1aa196bbb38d6e996d399 /src/video_core/rasterizer_interface.h
parentgl_resource_manager: Add managed query class (diff)
downloadyuzu-2b58652f0897053d4da04deb586490220ab5a774.tar.gz
yuzu-2b58652f0897053d4da04deb586490220ab5a774.tar.xz
yuzu-2b58652f0897053d4da04deb586490220ab5a774.zip
maxwell_3d: Slow implementation of passed samples (query 21)
Implements GL_SAMPLES_PASSED by waiting immediately for queries.
Diffstat (limited to 'src/video_core/rasterizer_interface.h')
-rw-r--r--src/video_core/rasterizer_interface.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/rasterizer_interface.h b/src/video_core/rasterizer_interface.h
index c586cd6fe..2fc627539 100644
--- a/src/video_core/rasterizer_interface.h
+++ b/src/video_core/rasterizer_interface.h
@@ -17,6 +17,10 @@ class MemoryManager;
17 17
18namespace VideoCore { 18namespace VideoCore {
19 19
20enum class QueryType {
21 SamplesPassed,
22};
23
20enum class LoadCallbackStage { 24enum class LoadCallbackStage {
21 Prepare, 25 Prepare,
22 Decompile, 26 Decompile,
@@ -41,6 +45,12 @@ public:
41 /// Dispatches a compute shader invocation 45 /// Dispatches a compute shader invocation
42 virtual void DispatchCompute(GPUVAddr code_addr) = 0; 46 virtual void DispatchCompute(GPUVAddr code_addr) = 0;
43 47
48 /// Resets the counter of a query
49 virtual void ResetCounter(QueryType type) = 0;
50
51 /// Returns the value of a GPU query
52 virtual u64 Query(QueryType type) = 0;
53
44 /// Notify rasterizer that all caches should be flushed to Switch memory 54 /// Notify rasterizer that all caches should be flushed to Switch memory
45 virtual void FlushAll() = 0; 55 virtual void FlushAll() = 0;
46 56