summaryrefslogtreecommitdiff
path: root/src/mbgl/gl/cull_face_mode.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mbgl/gl/cull_face_mode.hpp')
-rw-r--r--src/mbgl/gl/cull_face_mode.hpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/mbgl/gl/cull_face_mode.hpp b/src/mbgl/gl/cull_face_mode.hpp
new file mode 100644
index 0000000000..a408d7a88c
--- /dev/null
+++ b/src/mbgl/gl/cull_face_mode.hpp
@@ -0,0 +1,40 @@
+#pragma once
+
+#include <cstdint>
+
+namespace mbgl {
+namespace gl {
+
+class CullFaceMode {
+public:
+ enum CullFace : bool {
+ Disable = false,
+ Enable = true,
+ };
+
+ enum CullFaceSide : uint32_t {
+ Front = 0x0404,
+ Back = 0x0405,
+ FrontAndBack = 0x0408,
+ };
+
+ enum FrontFace : uint32_t {
+ Clockwise = 0x0900,
+ CounterClockwise = 0x0901
+ };
+
+ CullFace cullFace;
+ CullFaceSide side;
+ FrontFace frontFace;
+
+ static CullFaceMode disabled() {
+ return CullFaceMode { Disable, CullFaceSide::Back, FrontFace::CounterClockwise };
+ }
+
+ static CullFaceMode backCCW() {
+ return CullFaceMode { Enable, CullFaceSide::Back, FrontFace::CounterClockwise };
+ }
+};
+
+} // namespace gl
+} // namespace mbgl