Bladeren bron

Merge pull request #3382 from Hinsbart/atlas_preview

thumbnail preview for AtlasTextures
Rémi Verschelde 9 jaren geleden
bovenliggende
commit
e128355527
1 gewijzigde bestanden met toevoegingen van 16 en 3 verwijderingen
  1. 16 3
      tools/editor/plugins/editor_preview_plugins.cpp

+ 16 - 3
tools/editor/plugins/editor_preview_plugins.cpp

@@ -10,13 +10,26 @@
 
 
 bool EditorTexturePreviewPlugin::handles(const String& p_type) const {
 bool EditorTexturePreviewPlugin::handles(const String& p_type) const {
 
 
-	return ObjectTypeDB::is_type(p_type,"ImageTexture");
+	return (ObjectTypeDB::is_type(p_type,"ImageTexture") || ObjectTypeDB::is_type(p_type, "AtlasTexture"));
 }
 }
 
 
 Ref<Texture> EditorTexturePreviewPlugin::generate(const RES& p_from) {
 Ref<Texture> EditorTexturePreviewPlugin::generate(const RES& p_from) {
 
 
-	Ref<ImageTexture> tex =p_from;
-	Image img = tex->get_data();
+	Image img;
+	Ref<AtlasTexture> atex = p_from;
+	if (atex.is_valid()) {
+		Ref<ImageTexture> tex = atex->get_atlas();
+		if (!tex.is_valid()) {
+			return Ref<Texture>();
+		}
+		Image atlas = tex->get_data();
+		img = atlas.get_rect(atex->get_region());
+	}
+	else {
+		Ref<ImageTexture> tex = p_from;
+		img = tex->get_data();
+	}
+
 	if (img.empty())
 	if (img.empty())
 		return Ref<Texture>();
 		return Ref<Texture>();