- Home /
Prefill list with AssetDatabase.LoadAssetAtPath
Hey guys,
I've been struggling to automatize some assets referencing in my project. It seemed to be going well until I tried to make a build.
Here's the main point : I have a list that I want to fill with prefabs references. When I drag and drop prefabs one by one, it all works great. I wanted to automatize this, call a method in the editor that would automatically find assets in the editor and fill up the list instead of dragging assets one by one. Here's how I do it :
public void initList()
{
string[] foldersToSearch = new string[]{"Assets/Prefabs/Modules"};
string[] modules = AssetDatabase.FindAssets("t:GameObject", foldersToSearch);
List<string> lPaths = new List<string>();
foreach (string guid in modules)
{
string sName = AssetDatabase.GUIDToAssetPath(guid);
if (sName.Contains("Button") == false)
{
lPaths.Add(sName);
}
}
_lPrefabsUsed.Clear();
foreach (string path in lPaths)
{
_lPrefabsUsed.Add(AssetDatabase.LoadAssetAtPath<GameObject>(path) as GameObject);
}
}
Of course I only call this from the editor but then I expect that the list _lPrefabsUsed would keep references to the prefabs so I can instantiate them at anytime during the game. But when I hit play the list empties. I guess AssetDatabase.LoadAssetAtPath is not the way to go or not enough to do what I want but I can't figure out how to do this.
Any ideas?
Thanks!
Answer by Globa64 · Feb 18, 2018 at 04:51 PM
Hey man
I think this can help you: https://answers.unity.com/questions/711778/adding-prefabs-to-a-list-or-an-array-from-a-folder.html
Good luck,Hey man
I think this can be usefull for you. https://answers.unity.com/questions/711778/adding-prefabs-to-a-list-or-an-array-from-a-folder.html Hope this helps, good luck.
Your answer
Follow this Question
Related Questions
A node in a childnode? 1 Answer
What is the best way to convert a string list to a class list? 1 Answer
webplayer serialize/deserialize error advice plz 0 Answers
Database input datetime 2 Answers
using classes in List<>'s 1 Answer