Fix oversampled font artifacts after resize
Font update after resize relies on the viewport size which was updated after the font was already refreshed, which resulted in artifacts when it was rendered into the actual/new viewport size. Fixes #15173.
This commit is contained in:
parent
ebce36c22f
commit
47747718d6
|
@ -498,14 +498,14 @@ bool SceneTree::idle(float p_time) {
|
||||||
Size2 win_size = Size2(OS::get_singleton()->get_video_mode().width, OS::get_singleton()->get_video_mode().height);
|
Size2 win_size = Size2(OS::get_singleton()->get_video_mode().width, OS::get_singleton()->get_video_mode().height);
|
||||||
if (win_size != last_screen_size) {
|
if (win_size != last_screen_size) {
|
||||||
|
|
||||||
|
last_screen_size = win_size;
|
||||||
|
_update_root_rect();
|
||||||
|
|
||||||
if (use_font_oversampling) {
|
if (use_font_oversampling) {
|
||||||
DynamicFontAtSize::font_oversampling = OS::get_singleton()->get_window_size().width / root->get_visible_rect().size.width;
|
DynamicFontAtSize::font_oversampling = OS::get_singleton()->get_window_size().width / root->get_visible_rect().size.width;
|
||||||
DynamicFont::update_oversampling();
|
DynamicFont::update_oversampling();
|
||||||
}
|
}
|
||||||
|
|
||||||
last_screen_size = win_size;
|
|
||||||
_update_root_rect();
|
|
||||||
|
|
||||||
emit_signal("screen_resized");
|
emit_signal("screen_resized");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue