1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-04 12:00:25 +00:00

Fix oversampling for embedded windows using content scale.

This commit is contained in:
Pāvels Nadtočajevs
2025-04-30 17:35:22 +03:00
parent 32eafc18b4
commit c6e1bc6170

View File

@@ -1322,6 +1322,7 @@ void Window::_update_viewport_size() {
if (embedder) { if (embedder) {
float scale = MIN(embedder->stretch_transform.get_scale().width, embedder->stretch_transform.get_scale().height); float scale = MIN(embedder->stretch_transform.get_scale().width, embedder->stretch_transform.get_scale().height);
Viewport::set_oversampling_override(scale);
Size2 s = Size2(final_size.width * scale, final_size.height * scale).ceil(); Size2 s = Size2(final_size.width * scale, final_size.height * scale).ceil();
RS::get_singleton()->viewport_set_global_canvas_transform(get_viewport_rid(), global_canvas_transform * scale * content_scale_factor); RS::get_singleton()->viewport_set_global_canvas_transform(get_viewport_rid(), global_canvas_transform * scale * content_scale_factor);
RS::get_singleton()->viewport_set_size(get_viewport_rid(), s.width, s.height); RS::get_singleton()->viewport_set_size(get_viewport_rid(), s.width, s.height);