summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Fernando Sahmkow2019-12-28 14:33:53 -0400
committerGravatar GitHub2019-12-28 14:33:53 -0400
commitf846e3d6d0e973485a53bb87b913059060dcfdbc (patch)
tree03290de133397ceb727443865ef91a9e30f3093e /src
parentMerge pull request #3228 from ReinUsesLisp/ptp (diff)
parentgl_rasterizer: Allow rendering without fragment shader (diff)
downloadyuzu-f846e3d6d0e973485a53bb87b913059060dcfdbc.tar.gz
yuzu-f846e3d6d0e973485a53bb87b913059060dcfdbc.tar.xz
yuzu-f846e3d6d0e973485a53bb87b913059060dcfdbc.zip
Merge pull request #3250 from ReinUsesLisp/empty-fragment
gl_rasterizer: Allow rendering without fragment shader
Diffstat (limited to 'src')
-rw-r--r--src/video_core/renderer_opengl/gl_rasterizer.cpp3
-rw-r--r--src/video_core/renderer_opengl/gl_shader_manager.h4
2 files changed, 7 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp
index dbb08dd80..672051102 100644
--- a/src/video_core/renderer_opengl/gl_rasterizer.cpp
+++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp
@@ -271,6 +271,9 @@ void RasterizerOpenGL::SetupShaders(GLenum primitive_mode) {
271 case Maxwell::ShaderProgram::Geometry: 271 case Maxwell::ShaderProgram::Geometry:
272 shader_program_manager->UseTrivialGeometryShader(); 272 shader_program_manager->UseTrivialGeometryShader();
273 break; 273 break;
274 case Maxwell::ShaderProgram::Fragment:
275 shader_program_manager->UseTrivialFragmentShader();
276 break;
274 default: 277 default:
275 break; 278 break;
276 } 279 }
diff --git a/src/video_core/renderer_opengl/gl_shader_manager.h b/src/video_core/renderer_opengl/gl_shader_manager.h
index 3703e7018..478c165ce 100644
--- a/src/video_core/renderer_opengl/gl_shader_manager.h
+++ b/src/video_core/renderer_opengl/gl_shader_manager.h
@@ -50,6 +50,10 @@ public:
50 current_state.geometry_shader = 0; 50 current_state.geometry_shader = 0;
51 } 51 }
52 52
53 void UseTrivialFragmentShader() {
54 current_state.fragment_shader = 0;
55 }
56
53private: 57private:
54 struct PipelineState { 58 struct PipelineState {
55 bool operator==(const PipelineState& rhs) const { 59 bool operator==(const PipelineState& rhs) const {