summaryrefslogtreecommitdiff
path: root/servers/rendering/renderer_viewport.cpp
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <remi@verschelde.fr>2022-09-13 08:23:16 +0200
committerGitHub <noreply@github.com>2022-09-13 08:23:16 +0200
commit0b716fdb31f1780b541cbda862f2319a78be55ee (patch)
tree738d6fa2ce8f142e8d4afe484a4da2160494e453 /servers/rendering/renderer_viewport.cpp
parent6a8b2a4210d424935aeac14bc70c105601823549 (diff)
parent96b7cb66df340e7f2ab379c7eefd29d74ea9e3a9 (diff)
Merge pull request #65727 from clayjohn/GLES3-multiwindow
Fix multiwindow support in GLES3 for X11, Windows, and MacOS.
Diffstat (limited to 'servers/rendering/renderer_viewport.cpp')
-rw-r--r--servers/rendering/renderer_viewport.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/servers/rendering/renderer_viewport.cpp b/servers/rendering/renderer_viewport.cpp
index d466f90e79..5771def45f 100644
--- a/servers/rendering/renderer_viewport.cpp
+++ b/servers/rendering/renderer_viewport.cpp
@@ -714,7 +714,14 @@ void RendererViewport::draw_viewports() {
blit_to_screen_list[vp->viewport_to_screen] = Vector<BlitToScreen>();
}
- blit_to_screen_list[vp->viewport_to_screen].push_back(blit);
+ if (OS::get_singleton()->get_current_rendering_driver_name() == "opengl3") {
+ Vector<BlitToScreen> blit_to_screen_vec;
+ blit_to_screen_vec.push_back(blit);
+ RSG::rasterizer->blit_render_targets_to_screen(vp->viewport_to_screen, blit_to_screen_vec.ptr(), 1);
+ RSG::rasterizer->end_frame(true);
+ } else {
+ blit_to_screen_list[vp->viewport_to_screen].push_back(blit);
+ }
}
}