Răsfoiți Sursa

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.
Ruslan Mustakov 7 ani în urmă
părinte
comite
47747718d6
1 a modificat fișierele cu 3 adăugiri și 3 ștergeri
  1. 3 3
      scene/main/scene_tree.cpp

+ 3 - 3
scene/main/scene_tree.cpp

@@ -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);
 	if (win_size != last_screen_size) {
 
+		last_screen_size = win_size;
+		_update_root_rect();
+
 		if (use_font_oversampling) {
 			DynamicFontAtSize::font_oversampling = OS::get_singleton()->get_window_size().width / root->get_visible_rect().size.width;
 			DynamicFont::update_oversampling();
 		}
 
-		last_screen_size = win_size;
-		_update_root_rect();
-
 		emit_signal("screen_resized");
 	}