diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-11-28 06:15:34 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2020-02-14 21:38:27 +0100 |
commit | 73d2d3342dc8867d32f08f89b2ca36ff071598dc (patch) | |
tree | 3a032d4a36d0f07981eeb8b396472670bfd11e5a /src/video_core/engines/maxwell_3d.cpp | |
parent | gl_query_cache: Implement host queries using a deferred cache (diff) | |
download | yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar.gz yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar.bz2 yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar.lz yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar.xz yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.tar.zst yuzu-73d2d3342dc8867d32f08f89b2ca36ff071598dc.zip |
Diffstat (limited to 'src/video_core/engines/maxwell_3d.cpp')
-rw-r--r-- | src/video_core/engines/maxwell_3d.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp index 9add2bc94..842cdcbcf 100644 --- a/src/video_core/engines/maxwell_3d.cpp +++ b/src/video_core/engines/maxwell_3d.cpp @@ -4,6 +4,7 @@ #include <cinttypes> #include <cstring> +#include <optional> #include "common/assert.h" #include "core/core.h" #include "core/core_timing.h" @@ -16,6 +17,8 @@ namespace Tegra::Engines { +using VideoCore::QueryType; + /// First register id that is actually a Macro call. constexpr u32 MacroRegistersStart = 0xE00; @@ -614,10 +617,11 @@ void Maxwell3D::ProcessQueryCondition() { void Maxwell3D::ProcessCounterReset() { switch (regs.counter_reset) { case Regs::CounterReset::SampleCnt: - rasterizer.ResetCounter(VideoCore::QueryType::SamplesPassed); + rasterizer.ResetCounter(QueryType::SamplesPassed); break; default: - UNIMPLEMENTED_MSG("counter_reset={}", static_cast<u32>(regs.counter_reset)); + LOG_WARNING(Render_OpenGL, "Unimplemented counter reset={}", + static_cast<int>(regs.counter_reset)); break; } } @@ -670,7 +674,8 @@ std::optional<u64> Maxwell3D::GetQueryResult() { return 0; case Regs::QuerySelect::SamplesPassed: // Deferred. - rasterizer.Query(regs.query.QueryAddress(), VideoCore::QueryType::SamplesPassed); + rasterizer.Query(regs.query.QueryAddress(), VideoCore::QueryType::SamplesPassed, + system.GPU().GetTicks()); return {}; default: UNIMPLEMENTED_MSG("Unimplemented query select type {}", |