summary refs log tree commit diff
path: root/src/World/BlockSide.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/World/BlockSide.hpp')
-rw-r--r--src/World/BlockSide.hpp46
1 files changed, 21 insertions, 25 deletions
diff --git a/src/World/BlockSide.hpp b/src/World/BlockSide.hpp
index 69df159..831982a 100644
--- a/src/World/BlockSide.hpp
+++ b/src/World/BlockSide.hpp
@@ -16,8 +16,8 @@ public:
         Top,
         Bottom,
 
-        Left,
         Right,
+        Left,
     };
 
     BlockSide() = default;
@@ -26,31 +26,27 @@ public:
     operator Value() const { return m_side; }
 
     std::array<Vector<3, F32>, 4> face() {
+        // Winding order: (0, 1, 2) (2, 3, 0)
+        // Note: OpenGL Coordinate system has a flipped z axis.
         switch (m_side) {
-            case Front:
-                return {{
-                    {0.0f, 0.0f, 1.0f}, {1.0f, 0.0f, 1.0f}, {1.0f, 1.0f, 1.0f}, {0.0f, 1.0f, 1.0f},
-                }};
-            case Back:
-                return {{
-                    {1.0f, 0.0f, 0.0f}, {0.0f, 0.0f, 0.0f}, {0.0f, 1.0f, 0.0f}, {1.0f, 1.0f, 0.0f},
-                }};
-            case Top:
-                return {{
-                    {0.0f, 1.0f, 1.0f}, {1.0f, 1.0f, 1.0f}, {1.0f, 1.0f, 0.0f}, {0.0f, 1.0f, 0.0f},
-                }};
-            case Bottom:
-                return {{
-                    {0.0f, 0.0f, 0.0f}, {1.0f, 0.0f, 0.0f}, {1.0f, 0.0f, 1.0f}, {0.0f, 0.0f, 1.0f},
-                }};
-            case Left:
-                return {{
-                    {0.0f, 0.0f, 0.0f},{0.0f, 0.0f, 1.0f},{0.0f, 1.0f, 1.0f}, {0.0f, 1.0f, 0.0f},
-                }};
-            case Right:
-                return {{
-                    {1.0f, 0.0f, 1.0f}, {1.0f, 0.0f, 0.0f}, {1.0f, 1.0f, 0.0f}, {1.0f, 1.0f, 1.0f},
-                }};
+            case Front: return {{
+                {0, 1, 1}, {0, 0, 1}, {1, 0, 1}, {1, 1, 1}
+            }};
+            case Back: return {{
+                {0, 1, 0}, {1, 1, 0}, {1, 0, 0}, {0, 0, 0}
+            }};
+            case Top: return {{
+                {0, 1, 1}, {1, 1, 1}, {1, 1, 0}, {0, 1, 0}
+            }};
+            case Bottom: return {{
+                {0, 0, 1}, {0, 0, 0}, {1, 0, 0}, {1, 0, 1}
+            }};
+            case Right: return {{
+                {1, 1, 0}, {1, 1, 1}, {1, 0, 1}, {1, 0, 0}
+            }};
+            case Left: return {{
+                {0, 1, 0}, {0, 0, 0}, {0, 0, 1}, {0, 1, 1}
+            }};
         }
     }