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