summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/IndexGenerator.cpp
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2021-12-20 14:27:14 -0500
committerGitHub <noreply@github.com>2021-12-20 14:27:14 -0500
commit32fed91b0d35f06c46281f55c9f0fa4694c5334a (patch)
tree6e47451f525329e5ba57fc615c491b0ca06088d8 /Source/Core/VideoCommon/IndexGenerator.cpp
parent1714dc64bb1cc01aee9d9b52763f20aa6a44a674 (diff)
parentffa512f5e7d24d9d9e93366bb596b9473d26d61b (diff)
Merge pull request #9718 from Pokechu22/better-fifo-analyzer-part-3
Fifo analyzer improvements, part 3
Diffstat (limited to 'Source/Core/VideoCommon/IndexGenerator.cpp')
-rw-r--r--Source/Core/VideoCommon/IndexGenerator.cpp30
1 files changed, 16 insertions, 14 deletions
diff --git a/Source/Core/VideoCommon/IndexGenerator.cpp b/Source/Core/VideoCommon/IndexGenerator.cpp
index d71f6c8292..be2dc99e3a 100644
--- a/Source/Core/VideoCommon/IndexGenerator.cpp
+++ b/Source/Core/VideoCommon/IndexGenerator.cpp
@@ -202,25 +202,27 @@ u16* AddPoints(u16* index_ptr, u32 num_verts, u32 index)
void IndexGenerator::Init()
{
+ using OpcodeDecoder::Primitive;
+
if (g_Config.backend_info.bSupportsPrimitiveRestart)
{
- m_primitive_table[OpcodeDecoder::GX_DRAW_QUADS] = AddQuads<true>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_QUADS_2] = AddQuads_nonstandard<true>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLES] = AddList<true>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLE_STRIP] = AddStrip<true>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLE_FAN] = AddFan<true>;
+ m_primitive_table[Primitive::GX_DRAW_QUADS] = AddQuads<true>;
+ m_primitive_table[Primitive::GX_DRAW_QUADS_2] = AddQuads_nonstandard<true>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLES] = AddList<true>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLE_STRIP] = AddStrip<true>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLE_FAN] = AddFan<true>;
}
else
{
- m_primitive_table[OpcodeDecoder::GX_DRAW_QUADS] = AddQuads<false>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_QUADS_2] = AddQuads_nonstandard<false>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLES] = AddList<false>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLE_STRIP] = AddStrip<false>;
- m_primitive_table[OpcodeDecoder::GX_DRAW_TRIANGLE_FAN] = AddFan<false>;
+ m_primitive_table[Primitive::GX_DRAW_QUADS] = AddQuads<false>;
+ m_primitive_table[Primitive::GX_DRAW_QUADS_2] = AddQuads_nonstandard<false>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLES] = AddList<false>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLE_STRIP] = AddStrip<false>;
+ m_primitive_table[Primitive::GX_DRAW_TRIANGLE_FAN] = AddFan<false>;
}
- m_primitive_table[OpcodeDecoder::GX_DRAW_LINES] = AddLineList;
- m_primitive_table[OpcodeDecoder::GX_DRAW_LINE_STRIP] = AddLineStrip;
- m_primitive_table[OpcodeDecoder::GX_DRAW_POINTS] = AddPoints;
+ m_primitive_table[Primitive::GX_DRAW_LINES] = AddLineList;
+ m_primitive_table[Primitive::GX_DRAW_LINE_STRIP] = AddLineStrip;
+ m_primitive_table[Primitive::GX_DRAW_POINTS] = AddPoints;
}
void IndexGenerator::Start(u16* index_ptr)
@@ -230,7 +232,7 @@ void IndexGenerator::Start(u16* index_ptr)
m_base_index = 0;
}
-void IndexGenerator::AddIndices(int primitive, u32 num_vertices)
+void IndexGenerator::AddIndices(OpcodeDecoder::Primitive primitive, u32 num_vertices)
{
m_index_buffer_current =
m_primitive_table[primitive](m_index_buffer_current, num_vertices, m_base_index);