summaryrefslogtreecommitdiff
path: root/src/video_core/primitive_assembly.cpp
diff options
context:
space:
mode:
authorGravatar Tony Wasserka2015-03-09 21:49:49 +0100
committerGravatar Tony Wasserka2015-03-09 21:49:49 +0100
commit5742367341688e3f769e0dc86fddc593c2de767c (patch)
tree356eb606efa0bb872eac04c89084160e0af12cc1 /src/video_core/primitive_assembly.cpp
parentMerge pull request #589 from kevinhartman/config-errors (diff)
downloadyuzu-5742367341688e3f769e0dc86fddc593c2de767c.tar.gz
yuzu-5742367341688e3f769e0dc86fddc593c2de767c.tar.xz
yuzu-5742367341688e3f769e0dc86fddc593c2de767c.zip
Pica/PrimitiveAssembly: Fix triangle strips and fans being generated with incorrect winding order.
Diffstat (limited to 'src/video_core/primitive_assembly.cpp')
-rw-r--r--src/video_core/primitive_assembly.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/video_core/primitive_assembly.cpp b/src/video_core/primitive_assembly.cpp
index 1776a1925..0120f2896 100644
--- a/src/video_core/primitive_assembly.cpp
+++ b/src/video_core/primitive_assembly.cpp
@@ -33,12 +33,9 @@ void PrimitiveAssembler<VertexType>::SubmitVertex(VertexType& vtx, TriangleHandl
33 33
34 case Regs::TriangleTopology::Strip: 34 case Regs::TriangleTopology::Strip:
35 case Regs::TriangleTopology::Fan: 35 case Regs::TriangleTopology::Fan:
36 if (strip_ready) { 36 if (strip_ready)
37 // TODO: Should be "buffer[0], buffer[1], vtx" instead! 37 triangle_handler(buffer[0], buffer[1], vtx);
38 // Not quite sure why we need this order for things to show up properly. 38
39 // Maybe a bug in the rasterizer?
40 triangle_handler(buffer[1], buffer[0], vtx);
41 }
42 buffer[buffer_index] = vtx; 39 buffer[buffer_index] = vtx;
43 40
44 if (topology == Regs::TriangleTopology::Strip) { 41 if (topology == Regs::TriangleTopology::Strip) {