diff options
| author | 2019-12-25 19:46:04 -0300 | |
|---|---|---|
| committer | 2020-02-28 16:47:59 -0300 | |
| commit | 925521da5fbc1096f56933eba1683b60c6c19b20 (patch) | |
| tree | 2b83322e281fead062bd51f8563a70231e77802c /src | |
| parent | gl_state: Remove point size tracking (diff) | |
| download | yuzu-925521da5fbc1096f56933eba1683b60c6c19b20.tar.gz yuzu-925521da5fbc1096f56933eba1683b60c6c19b20.tar.xz yuzu-925521da5fbc1096f56933eba1683b60c6c19b20.zip | |
gl_state: Remove front face tracking
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 2 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/gl_state.cpp | 4 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/gl_state.h | 1 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/renderer_opengl.cpp | 4 |
4 files changed, 5 insertions, 6 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index a0b0274fb..e9e9f9794 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp | |||
| @@ -1025,7 +1025,7 @@ void RasterizerOpenGL::SyncCullMode() { | |||
| 1025 | state.cull.mode = MaxwellToGL::CullFace(regs.cull.cull_face); | 1025 | state.cull.mode = MaxwellToGL::CullFace(regs.cull.cull_face); |
| 1026 | } | 1026 | } |
| 1027 | 1027 | ||
| 1028 | state.cull.front_face = MaxwellToGL::FrontFace(regs.cull.front_face); | 1028 | glFrontFace(MaxwellToGL::FrontFace(regs.cull.front_face)); |
| 1029 | } | 1029 | } |
| 1030 | 1030 | ||
| 1031 | void RasterizerOpenGL::SyncPrimitiveRestart() { | 1031 | void RasterizerOpenGL::SyncPrimitiveRestart() { |
diff --git a/src/video_core/renderer_opengl/gl_state.cpp b/src/video_core/renderer_opengl/gl_state.cpp index 02b3455cc..817676505 100644 --- a/src/video_core/renderer_opengl/gl_state.cpp +++ b/src/video_core/renderer_opengl/gl_state.cpp | |||
| @@ -170,10 +170,6 @@ void OpenGLState::ApplyCulling() { | |||
| 170 | if (UpdateValue(cur_state.cull.mode, cull.mode)) { | 170 | if (UpdateValue(cur_state.cull.mode, cull.mode)) { |
| 171 | glCullFace(cull.mode); | 171 | glCullFace(cull.mode); |
| 172 | } | 172 | } |
| 173 | |||
| 174 | if (UpdateValue(cur_state.cull.front_face, cull.front_face)) { | ||
| 175 | glFrontFace(cull.front_face); | ||
| 176 | } | ||
| 177 | } | 173 | } |
| 178 | 174 | ||
| 179 | void OpenGLState::ApplyRasterizerDiscard() { | 175 | void OpenGLState::ApplyRasterizerDiscard() { |
diff --git a/src/video_core/renderer_opengl/gl_state.h b/src/video_core/renderer_opengl/gl_state.h index acd24c042..1b5fde23a 100644 --- a/src/video_core/renderer_opengl/gl_state.h +++ b/src/video_core/renderer_opengl/gl_state.h | |||
| @@ -34,7 +34,6 @@ public: | |||
| 34 | struct { | 34 | struct { |
| 35 | bool enabled = false; // GL_CULL_FACE | 35 | bool enabled = false; // GL_CULL_FACE |
| 36 | GLenum mode = GL_BACK; // GL_CULL_FACE_MODE | 36 | GLenum mode = GL_BACK; // GL_CULL_FACE_MODE |
| 37 | GLenum front_face = GL_CCW; // GL_FRONT_FACE | ||
| 38 | } cull; | 37 | } cull; |
| 39 | 38 | ||
| 40 | struct { | 39 | struct { |
diff --git a/src/video_core/renderer_opengl/renderer_opengl.cpp b/src/video_core/renderer_opengl/renderer_opengl.cpp index f71e23f9e..311053695 100644 --- a/src/video_core/renderer_opengl/renderer_opengl.cpp +++ b/src/video_core/renderer_opengl/renderer_opengl.cpp | |||
| @@ -571,6 +571,10 @@ void RendererOpenGL::DrawScreenTriangles(const ScreenInfo& screen_info, float x, | |||
| 571 | state.textures[0] = screen_info.display_texture; | 571 | state.textures[0] = screen_info.display_texture; |
| 572 | state.framebuffer_srgb.enabled = screen_info.display_srgb; | 572 | state.framebuffer_srgb.enabled = screen_info.display_srgb; |
| 573 | state.Apply(); | 573 | state.Apply(); |
| 574 | |||
| 575 | // TODO: Signal state tracker about these changes | ||
| 576 | glFrontFace(GL_CW); | ||
| 577 | |||
| 574 | glNamedBufferSubData(vertex_buffer.handle, 0, sizeof(vertices), std::data(vertices)); | 578 | glNamedBufferSubData(vertex_buffer.handle, 0, sizeof(vertices), std::data(vertices)); |
| 575 | glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); | 579 | glDrawArrays(GL_TRIANGLE_STRIP, 0, 4); |
| 576 | // Restore default state | 580 | // Restore default state |