diff options
author | liamwhite <liamwhite@users.noreply.github.com> | 2023-03-13 18:45:17 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-03-13 18:45:17 +0100 |
commit | 638044820ddbeb00d33692eef69ce41bb6234c66 (patch) | |
tree | 71b4b63e46f07d3b3f1726eb0b90d1d97fb0c9dc | |
parent | Merge pull request #9936 from liamwhite/m_this (diff) | |
parent | video_core: Fix ogl status error when draw_texture (diff) | |
download | yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar.gz yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar.bz2 yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar.lz yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar.xz yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.tar.zst yuzu-638044820ddbeb00d33692eef69ce41bb6234c66.zip |
-rw-r--r-- | src/video_core/engines/draw_manager.cpp | 1 | ||||
-rw-r--r-- | src/video_core/renderer_opengl/blit_image.cpp | 3 | ||||
-rw-r--r-- | src/video_core/renderer_opengl/gl_rasterizer.cpp | 1 |
3 files changed, 3 insertions, 2 deletions
diff --git a/src/video_core/engines/draw_manager.cpp b/src/video_core/engines/draw_manager.cpp index 1d22d25f1..0e94c521a 100644 --- a/src/video_core/engines/draw_manager.cpp +++ b/src/video_core/engines/draw_manager.cpp @@ -164,6 +164,7 @@ void DrawManager::DrawEnd(u32 instance_count, bool force_draw) { draw_state.index_buffer.count = static_cast<u32>(draw_state.inline_index_draw_indexes.size() / 4); draw_state.index_buffer.format = Maxwell3D::Regs::IndexFormat::UnsignedInt; + maxwell3d->dirty.flags[VideoCommon::Dirty::IndexBuffer] = true; ProcessDraw(true, instance_count); draw_state.inline_index_draw_indexes.clear(); break; diff --git a/src/video_core/renderer_opengl/blit_image.cpp b/src/video_core/renderer_opengl/blit_image.cpp index 9a560a73b..3b03e8d5a 100644 --- a/src/video_core/renderer_opengl/blit_image.cpp +++ b/src/video_core/renderer_opengl/blit_image.cpp @@ -22,7 +22,7 @@ BlitImageHelper::~BlitImageHelper() = default; void BlitImageHelper::BlitColor(GLuint dst_framebuffer, GLuint src_image_view, GLuint src_sampler, const Region2D& dst_region, const Region2D& src_region, const Extent3D& src_size) { - glEnable(GL_CULL_FACE); + glDisable(GL_CULL_FACE); glDisable(GL_COLOR_LOGIC_OP); glDisable(GL_DEPTH_TEST); glDisable(GL_STENCIL_TEST); @@ -31,7 +31,6 @@ void BlitImageHelper::BlitColor(GLuint dst_framebuffer, GLuint src_image_view, G glDisable(GL_ALPHA_TEST); glDisablei(GL_BLEND, 0); glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); - glCullFace(GL_BACK); glFrontFace(GL_CW); glColorMaski(0, GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE); glDepthRangeIndexed(0, 0.0, 0.0); diff --git a/src/video_core/renderer_opengl/gl_rasterizer.cpp b/src/video_core/renderer_opengl/gl_rasterizer.cpp index abe0f3582..90e35e307 100644 --- a/src/video_core/renderer_opengl/gl_rasterizer.cpp +++ b/src/video_core/renderer_opengl/gl_rasterizer.cpp @@ -357,6 +357,7 @@ void RasterizerOpenGL::DrawTexture() { .y = static_cast<s32>(draw_texture_state.src_y1)}}; blit_image.BlitColor(texture_cache.GetFramebuffer()->Handle(), texture.DefaultHandle(), sampler->Handle(), dst_region, src_region, texture.size); + state_tracker.InvalidateState(); } ++num_queued_commands; |