summaryrefslogtreecommitdiffstats
path: root/src/video_core/engines
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-09-06 04:50:52 +0200
committerGitHub <noreply@github.com>2018-09-06 04:50:52 +0200
commit77554ac773956e01ba1c9c779f1a2c4f4bde3324 (patch)
tree5ac8237ce6a00847c91e50ccb06700f1ec4cee78 /src/video_core/engines
parentMerge pull request #1244 from FernandoS27/ipa (diff)
parentgl_rasterizer: Implement a VAO cache. (diff)
downloadyuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar.gz
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar.bz2
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar.lz
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar.xz
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.tar.zst
yuzu-77554ac773956e01ba1c9c779f1a2c4f4bde3324.zip
Diffstat (limited to 'src/video_core/engines')
-rw-r--r--src/video_core/engines/maxwell_3d.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/video_core/engines/maxwell_3d.h b/src/video_core/engines/maxwell_3d.h
index 92bfda053..f59d01738 100644
--- a/src/video_core/engines/maxwell_3d.h
+++ b/src/video_core/engines/maxwell_3d.h
@@ -127,6 +127,7 @@ public:
BitField<21, 6, Size> size;
BitField<27, 3, Type> type;
BitField<31, 1, u32> bgra;
+ u32 hex;
};
u32 ComponentCount() const {
@@ -262,6 +263,10 @@ public:
bool IsValid() const {
return size != Size::Invalid;
}
+
+ bool operator<(const VertexAttribute& other) const {
+ return hex < other.hex;
+ }
};
enum class PrimitiveTopology : u32 {
@@ -545,7 +550,7 @@ public:
INSERT_PADDING_WORDS(0x5B);
- VertexAttribute vertex_attrib_format[NumVertexAttributes];
+ std::array<VertexAttribute, NumVertexAttributes> vertex_attrib_format;
INSERT_PADDING_WORDS(0xF);
@@ -964,7 +969,7 @@ ASSERT_REG_POSITION(stencil_back_func_ref, 0x3D5);
ASSERT_REG_POSITION(stencil_back_mask, 0x3D6);
ASSERT_REG_POSITION(stencil_back_func_mask, 0x3D7);
ASSERT_REG_POSITION(zeta, 0x3F8);
-ASSERT_REG_POSITION(vertex_attrib_format[0], 0x458);
+ASSERT_REG_POSITION(vertex_attrib_format, 0x458);
ASSERT_REG_POSITION(rt_control, 0x487);
ASSERT_REG_POSITION(zeta_width, 0x48a);
ASSERT_REG_POSITION(zeta_height, 0x48b);