aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_opengl/gl_state.h
diff options
context:
space:
mode:
authorMarcos <marcosvitali@users.noreply.github.com>2018-11-26 20:31:44 -0300
committerbunnei <bunneidev@gmail.com>2018-11-26 18:31:44 -0500
commitcb8d51e37e7d630f1ea3dc816b2d5aaab2295bc2 (patch)
treed8eebad471412afebbee0c0e465655695b8df585 /src/video_core/renderer_opengl/gl_state.h
parent7684f4d0cf92f3badf4e8599122d6d5f599764cb (diff)
GPU States: Implement Polygon Offset. This is used in SMO all the time. (#1784)
* GPU States: Implement Polygon Offset. This is used in SMO all the time. * Clang Format fixes. * Initialize polygon_offset in the constructor.
Diffstat (limited to 'src/video_core/renderer_opengl/gl_state.h')
-rw-r--r--src/video_core/renderer_opengl/gl_state.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_state.h b/src/video_core/renderer_opengl/gl_state.h
index 032fc43f0..0bf19ed07 100644
--- a/src/video_core/renderer_opengl/gl_state.h
+++ b/src/video_core/renderer_opengl/gl_state.h
@@ -176,6 +176,15 @@ public:
float size; // GL_POINT_SIZE
} point;
+ struct {
+ bool point_enable;
+ bool line_enable;
+ bool fill_enable;
+ GLfloat units;
+ GLfloat factor;
+ GLfloat clamp;
+ } polygon_offset;
+
std::array<bool, 2> clip_distance; // GL_CLIP_DISTANCE
OpenGLState();
@@ -226,6 +235,7 @@ private:
void ApplyLogicOp() const;
void ApplyTextures() const;
void ApplySamplers() const;
+ void ApplyPolygonOffset() const;
};
} // namespace OpenGL