Unity使用时碰到的一些坑

1.Unity运行时报错

ImvalidOperationException:Collection was modified; enumeration may not execute.

报错原因:

在写foreach内使用了Collection中的Add或者Remove,如:

List<int> ints = new List<int>();
    foreach(int e in List){
        ints.Add(e);
        ints.Remove(e);
    }

这样的操作是不被允许的。

解决方法:使用for循环来代替,如:

for(int i = 0; i < List.Count; i++){
        ................
    }

 

2.Unity在写脚本时没有弹出自动补全

问题原因:没有设置脚本文件默认打开程序

解决方法:在Unity → Edit → Preferences → External tools中改成默认使用VS打开即可

 

3.Unity脚本运行报错:

UnassignedReferenceException: The variable *** of *** has not been assigned.

问题原因:存在没有被赋值的变量

解决方法:检查inspector是否有需要附上的物体,如prefab等

 

4. Asset database transaction committed twice!

Assertion failed on expression: 'errors == MDB_SUCCESS || errors == MDB_NOTFOUND'

问题原因:unity许可证过期

解决方法:更新许可证,重启即可

 

5. Unity打开时一直处于holding on状态打不开

问题原因:工程文件路径中存在中文

解决方法:去掉路径中中文

 

参考资料:https://blog.csdn.net/qq_41904236/article/details/126065822

—— 完 ——
相关推荐
评论

立 为 非 似

中 谁 昨 此

宵 风 夜 星

。 露 , 辰

文章点击榜

细 无 轻 自

如 边 似 在

愁 丝 梦 飞

。 雨 , 花