笔记来自Unity中文课堂《Unity开发过程中常见的报错与Debug》
1、Cant add script,不能添加脚本
1.Unity中脚本的文件名称必须和脚本内的class名称一致
2.脚本必须继承MonoBehaviour
2、NullReferenceException,空引用
出现的情况:
1.自己建的class
2.private情况下的Unity组件,如Transform(如果是public的情况,也就是存在面板赋值的情况,会报未赋值而不是空引用)
解决方式:
1.是不是没有拖拽、没有查找、查找了但是没找到
2.原先并不是null,但是代码中是否有赋值为null
3.有可能组件并不是自己身上的,那么这个组件实际挂载的对象,是不是已经被销毁了,或者这个组件被销毁了
注意:
如int、float、bool都是有默认值的,所以不初始化也不会报错
另外要特别注意,很多组件我们并不是只给一个单位使用,所以要考虑所有单位的情况,比如一群AI
3、UnassignedReferenceException,未赋值引用
其实雷同于上一条,但是出现在“可以面板拖拽赋值”的情况
4、Argument Out Of RangeException,参数超过范围
一般发生在数组、列表中,一般是因为传递的索引为负数或超过了列表上限
为什么会负数?因为你的索引可能是计算出来的