summaryrefslogtreecommitdiffstats
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2023-12-22 17:42:05 +0100
committerGitHub <noreply@github.com>2023-12-22 17:42:05 +0100
commit91290b9be4e99a9890c6545e327f600484e39914 (patch)
tree7a247dcb080ba01e97258c471c2b97f47ab87354 /src/video_core/engines
parentMerge pull request #12435 from liamwhite/type-check (diff)
parentgl_rasterizer: Less spammy log for unimplemented resets (diff)
downloadyuzu-91290b9be4e99a9890c6545e327f600484e39914.tar
yuzu-91290b9be4e99a9890c6545e327f600484e39914.tar.gz
yuzu-91290b9be4e99a9890c6545e327f600484e39914.tar.bz2
yuzu-91290b9be4e99a9890c6545e327f600484e39914.tar.lz
yuzu-91290b9be4e99a9890c6545e327f600484e39914.tar.xz
yuzu-91290b9be4e99a9890c6545e327f600484e39914.tar.zst
yuzu-91290b9be4e99a9890c6545e327f600484e39914.zip
Diffstat (limited to 'src/video_core/engines')
-rw-r--r--src/video_core/engines/maxwell_3d.cpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp
index 592c28ba3..95ba4f76c 100644
--- a/src/video_core/engines/maxwell_3d.cpp
+++ b/src/video_core/engines/maxwell_3d.cpp
@@ -586,14 +586,22 @@ void Maxwell3D::ProcessQueryCondition() {
}
void Maxwell3D::ProcessCounterReset() {
- switch (regs.clear_report_value) {
- case Regs::ClearReport::ZPassPixelCount:
- rasterizer->ResetCounter(VideoCommon::QueryType::ZPassPixelCount64);
- break;
- default:
- LOG_DEBUG(Render_OpenGL, "Unimplemented counter reset={}", regs.clear_report_value);
- break;
- }
+ const auto query_type = [clear_report = regs.clear_report_value]() {
+ switch (clear_report) {
+ case Tegra::Engines::Maxwell3D::Regs::ClearReport::ZPassPixelCount:
+ return VideoCommon::QueryType::ZPassPixelCount64;
+ case Tegra::Engines::Maxwell3D::Regs::ClearReport::StreamingPrimitivesSucceeded:
+ return VideoCommon::QueryType::StreamingPrimitivesSucceeded;
+ case Tegra::Engines::Maxwell3D::Regs::ClearReport::PrimitivesGenerated:
+ return VideoCommon::QueryType::PrimitivesGenerated;
+ case Tegra::Engines::Maxwell3D::Regs::ClearReport::VtgPrimitivesOut:
+ return VideoCommon::QueryType::VtgPrimitivesOut;
+ default:
+ LOG_DEBUG(HW_GPU, "Unimplemented counter reset={}", clear_report);
+ return VideoCommon::QueryType::Payload;
+ }
+ }();
+ rasterizer->ResetCounter(query_type);
}
void Maxwell3D::ProcessSyncPoint() {