Version: 2023.1
public static Texture GetCachedIcon (string path);

描述

在给定资源路径下检索资源的图标。

using System.Collections.Generic;
using UnityEditor;
using UnityEngine;

public class AssetDatabaseExamples : MonoBehaviour { [MenuItem("AssetDatabase/Get Cached Icon Example")] public static void GetCachedIconExample() { var textureList = new List<Texture>(); //Get asset icons and put them in a list foreach (var guid in AssetDatabase.FindAssets("", new []{"Assets"})) { var path = AssetDatabase.GUIDToAssetPath(guid); textureList.Add(AssetDatabase.GetCachedIcon(path)); }

//Set Material textures to the asset icons var textureNo = 0; for (var i = 0; i < 10; i++) { var path = $"Assets/Materials/GroundMaterial{i}.mat"; var asset = (Material)AssetDatabase.LoadMainAssetAtPath(path); if (textureNo >= textureList.Count) textureNo = 0; asset.mainTexture = textureList[textureNo++]; } } }