summaryrefslogtreecommitdiff
path: root/src/video_core
diff options
context:
space:
mode:
authorGravatar Subv2018-03-24 01:22:19 -0500
committerGravatar Subv2018-03-24 01:22:19 -0500
commit9b9de3008662239d034ed6ec61e96b855bdcee8c (patch)
tree6a49c9ff5679539138f25780e1d848db2f5ea3d1 /src/video_core
parentMerge pull request #265 from bunnei/tegra-progress-2 (diff)
downloadyuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.gz
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.tar.xz
yuzu-9b9de3008662239d034ed6ec61e96b855bdcee8c.zip
GPU: Added viewport registers to Maxwell3D's reg structure.
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/engines/maxwell_3d.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 69ed56338..545d7ff35 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -33,6 +33,7 @@ public:
33 static constexpr size_t NUM_REGS = 0xE36; 33 static constexpr size_t NUM_REGS = 0xE36;
34 34
35 static constexpr size_t NumRenderTargets = 8; 35 static constexpr size_t NumRenderTargets = 8;
36 static constexpr size_t NumViewports = 16;
36 static constexpr size_t NumCBData = 16; 37 static constexpr size_t NumCBData = 16;
37 static constexpr size_t NumVertexArrays = 32; 38 static constexpr size_t NumVertexArrays = 32;
38 static constexpr size_t NumVertexAttributes = 32; 39 static constexpr size_t NumVertexAttributes = 32;
@@ -186,7 +187,22 @@ public:
186 } 187 }
187 } rt[NumRenderTargets]; 188 } rt[NumRenderTargets];
188 189
189 INSERT_PADDING_WORDS(0xDD); 190 INSERT_PADDING_WORDS(0x80);
191
192 struct {
193 union {
194 BitField<0, 16, u32> x;
195 BitField<16, 16, u32> width;
196 };
197 union {
198 BitField<0, 16, u32> y;
199 BitField<16, 16, u32> height;
200 };
201 float depth_range_near;
202 float depth_range_far;
203 } viewport[NumViewports];
204
205 INSERT_PADDING_WORDS(0x1D);
190 206
191 struct { 207 struct {
192 u32 first; 208 u32 first;
@@ -462,6 +478,7 @@ private:
462 "Field " #field_name " has invalid position") 478 "Field " #field_name " has invalid position")
463 479
464ASSERT_REG_POSITION(rt, 0x200); 480ASSERT_REG_POSITION(rt, 0x200);
481ASSERT_REG_POSITION(viewport, 0x300);
465ASSERT_REG_POSITION(vertex_buffer, 0x35D); 482ASSERT_REG_POSITION(vertex_buffer, 0x35D);
466ASSERT_REG_POSITION(zeta, 0x3F8); 483ASSERT_REG_POSITION(zeta, 0x3F8);
467ASSERT_REG_POSITION(vertex_attrib_format[0], 0x458); 484ASSERT_REG_POSITION(vertex_attrib_format[0], 0x458);