文章目录
摘要
1.Untiy3D
2.GameObject prefab=Resources.Load (path);
3 path值通过字符串public string ResourceDir = “XXXX”;或string ResourceDir = “XXXX” +name(传递进来的string参数)赋值。路径正确但prefab=null
4只找到了解决办法,没有解决原理,怀疑跟存储方式有关。
出错流程和解决流程
代码简化版
public string ResourceDir = “XXXX”;
void RegisterNew(string name)
{
string path = “”;
path = ResourceDir + “/” + name;
GameObject prefab = Resources.Load (path);
}
1想出错
只有在在去掉public的string ResourceDir时改成错误的路径,比如string ResourceDir=”Prefab”去掉s,运行一遍,报错。调试prefab=null
2要想改正
必须在去掉public时改回string ResourceDir=”Prefabs”才行,采取别的办法比如public string ResourceDir=”Prefabs”也不行,此时path正确,但prefab&