summaryrefslogtreecommitdiffstats
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2022-11-19 10:46:48 +0100
committerGitHub <noreply@github.com>2022-11-19 10:46:48 +0100
commit4975f60162184be7549f24b6a42b371ee9de83a2 (patch)
treea56bc8aeaad9a439ce166626bc210f164b6611de /src/video_core/engines
parentMerge pull request #9253 from vonchenplus/attr_layer (diff)
parentmaxwell3d: full HLE for multi-layer clears (diff)
downloadyuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar.gz
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar.bz2
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar.lz
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar.xz
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.tar.zst
yuzu-4975f60162184be7549f24b6a42b371ee9de83a2.zip
Diffstat (limited to 'src/video_core/engines')
-rw-r--r--src/video_core/engines/maxwell_3d.cpp6
-rw-r--r--src/video_core/engines/maxwell_3d.h6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp
index d502d181c..5bb1427c1 100644
--- a/src/video_core/engines/maxwell_3d.cpp
+++ b/src/video_core/engines/maxwell_3d.cpp
@@ -232,7 +232,7 @@ void Maxwell3D::ProcessMethodCall(u32 method, u32 argument, u32 nonshadow_argume
use_topology_override = true;
return;
case MAXWELL3D_REG_INDEX(clear_surface):
- return ProcessClearBuffers();
+ return ProcessClearBuffers(1);
case MAXWELL3D_REG_INDEX(report_semaphore.query):
return ProcessQueryGet();
case MAXWELL3D_REG_INDEX(render_enable.mode):
@@ -596,8 +596,8 @@ u32 Maxwell3D::GetRegisterValue(u32 method) const {
return regs.reg_array[method];
}
-void Maxwell3D::ProcessClearBuffers() {
- rasterizer->Clear();
+void Maxwell3D::ProcessClearBuffers(u32 layer_count) {
+ rasterizer->Clear(layer_count);
}
void Maxwell3D::ProcessDraw(u32 instance_count) {
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 34b085388..c3099f9a6 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -3086,6 +3086,9 @@ public:
std::vector<u8> inline_index_draw_indexes;
+ /// Handles a write to the CLEAR_BUFFERS register.
+ void ProcessClearBuffers(u32 layer_count);
+
private:
void InitializeRegisterDefaults();
@@ -3120,9 +3123,6 @@ private:
/// Handles firmware blob 4
void ProcessFirmwareCall4();
- /// Handles a write to the CLEAR_BUFFERS register.
- void ProcessClearBuffers();
-
/// Handles a write to the QUERY_GET register.
void ProcessQueryGet();