|
@@ -786,6 +786,7 @@ void RendererViewport::draw_viewports(bool p_swap_buffers) {
|
|
|
if (OS::get_singleton()->get_current_rendering_driver_name().begins_with("opengl3")) {
|
|
|
if (blits.size() > 0) {
|
|
|
RSG::rasterizer->blit_render_targets_to_screen(vp->viewport_to_screen, blits.ptr(), blits.size());
|
|
|
+ RSG::rasterizer->gl_end_frame(p_swap_buffers);
|
|
|
}
|
|
|
} else if (blits.size() > 0) {
|
|
|
if (!blit_to_screen_list.has(vp->viewport_to_screen)) {
|
|
@@ -796,7 +797,6 @@ void RendererViewport::draw_viewports(bool p_swap_buffers) {
|
|
|
blit_to_screen_list[vp->viewport_to_screen].push_back(blits[b]);
|
|
|
}
|
|
|
}
|
|
|
- RSG::rasterizer->end_viewport(p_swap_buffers && blits.size() > 0);
|
|
|
}
|
|
|
}
|
|
|
} else
|
|
@@ -826,10 +826,10 @@ void RendererViewport::draw_viewports(bool p_swap_buffers) {
|
|
|
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->gl_end_frame(p_swap_buffers);
|
|
|
} else {
|
|
|
blit_to_screen_list[vp->viewport_to_screen].push_back(blit);
|
|
|
}
|
|
|
- RSG::rasterizer->end_viewport(p_swap_buffers);
|
|
|
}
|
|
|
}
|
|
|
|