summaryrefslogtreecommitdiffstats
path: root/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-04-19 16:27:41 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-04-19 16:27:41 +0200
commit993d15da1785760a630545cb11e967bbd84a116a (patch)
tree2f8dfd1ca24b8ba6c50dd13efcd1ed468a03e5b5 /servers/rendering/renderer_rd/storage_rd/texture_storage.cpp
parente50867ae344c8372f84887eef13c03d7b0d1ed73 (diff)
parentadfc9ccc440bb1491de7e0debfee8facb8b7a05d (diff)
downloadredot-engine-993d15da1785760a630545cb11e967bbd84a116a.tar.gz
Merge pull request #90821 from clayjohn/RD-clip-children-rect
Use a src rect for copying from screen with CanvasGroup in the mobile backend
Diffstat (limited to 'servers/rendering/renderer_rd/storage_rd/texture_storage.cpp')
-rw-r--r--servers/rendering/renderer_rd/storage_rd/texture_storage.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp
index da046bf6b1..af30a32866 100644
--- a/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp
+++ b/servers/rendering/renderer_rd/storage_rd/texture_storage.cpp
@@ -3820,7 +3820,10 @@ void TextureStorage::render_target_copy_to_back_buffer(RID p_render_target, cons
if (RendererSceneRenderRD::get_singleton()->_render_buffers_can_be_storage()) {
copy_effects->copy_to_rect(rt->color, rt->backbuffer_mipmap0, region, false, false, false, !rt->use_hdr, true);
} else {
- copy_effects->copy_to_fb_rect(rt->color, rt->backbuffer_fb, region, false, false, false, false, RID(), false, true);
+ Rect2 src_rect = Rect2(region);
+ src_rect.position /= Size2(rt->size);
+ src_rect.size /= Size2(rt->size);
+ copy_effects->copy_to_fb_rect(rt->color, rt->backbuffer_fb, region, false, false, false, false, RID(), false, true, false, false, src_rect);
}
if (!p_gen_mipmaps) {