public static List FindAssetsByType() where T : UnityEngine.Object { List assets = new List(); string[] guids = UnityEditor.AssetDatabase.FindAssets(string.Format("t:{0}", typeof(T))); for (int i = 0; i < guids.Length; i++) { string assetPath = UnityEditor.AssetDatabase.GUIDToAssetPath(guids[i]); T asset = UnityEditor.AssetDatabase.LoadAssetAtPath(assetPath); if (asset != null) assets.Add(asset); } return assets; }