Browse Source

Use Lanczos filtering for variable-sized images such as project icons

This results in better-looking icons with less artifacts
induced by downscaling.
Hugo Locurcio 6 years ago
parent
commit
8f2bcfd909
2 changed files with 2 additions and 2 deletions
  1. 1 1
      editor/plugins/asset_library_editor_plugin.cpp
  2. 1 1
      editor/project_manager.cpp

+ 1 - 1
editor/plugins/asset_library_editor_plugin.cpp

@@ -758,7 +758,7 @@ void EditorAssetLibrary::_image_update(bool use_cache, bool final, const PoolByt
 			switch (image_queue[p_queue_id].image_type) {
 			switch (image_queue[p_queue_id].image_type) {
 				case IMAGE_QUEUE_ICON:
 				case IMAGE_QUEUE_ICON:
 
 
-					image->resize(64 * EDSCALE, 64 * EDSCALE, Image::INTERPOLATE_CUBIC);
+					image->resize(64 * EDSCALE, 64 * EDSCALE, Image::INTERPOLATE_LANCZOS);
 
 
 					break;
 					break;
 				case IMAGE_QUEUE_THUMBNAIL: {
 				case IMAGE_QUEUE_THUMBNAIL: {

+ 1 - 1
editor/project_manager.cpp

@@ -1109,7 +1109,7 @@ void ProjectList::load_project_icon(int p_index) {
 		Error err = img->load(item.icon.replace_first("res://", item.path + "/"));
 		Error err = img->load(item.icon.replace_first("res://", item.path + "/"));
 		if (err == OK) {
 		if (err == OK) {
 
 
-			img->resize(default_icon->get_width(), default_icon->get_height());
+			img->resize(default_icon->get_width(), default_icon->get_height(), Image::INTERPOLATE_LANCZOS);
 			Ref<ImageTexture> it = memnew(ImageTexture);
 			Ref<ImageTexture> it = memnew(ImageTexture);
 			it->create_from_image(img);
 			it->create_from_image(img);
 			icon = it;
 			icon = it;