记录一个奇怪bug

一开始Weapon脚本是继承Monobehavior的,实例化后挂在gameObject上跟着角色。后来改成了不继承mono的,也不实例化。过程都是顺利的,运行也没问题,脚本编辑器也没有错误。

但偶尔有一次报了一些错误,大概是说Weapon (1)上的脚本Weapon 有问题。但是双击错误信息,它也并没有跳转到任何一个对象,或是某一段代码。我想应该是之前做的某个Prefab,挂了Weapon脚本,现在不能用了。然而我找遍了Assets也没找到。然后又逐一打开每个场景,去Hierarchy里面搜索Weapon,也没找到嫌犯。后来把Console里面的消息Clear了也没事了,正常运行。

今天升级了unity版本,从2019LTS到2021LTS,打开后报了6个错误,4个都是这个问题,消失的Weapon(1)又来了。又找了一遍还是没有,搜到一个不是很相关的帖子,试了一下,又保存和重启了Unity,打开后错误没了。没了。没了。。

参考贴:references runtime script in scene file.fixing,怎么回事_百度知道

点Unity菜单栏的Assets > ReimportAll 。

之后是否还会出现我不确定,解决方法是不是找对了也不确定,总之先记录下来。

如果真的是这个方法解决的,那或许是缓存文件夹里面有一些残留的东西。Reimport一下就好了。

万一未来还有后续再更新好了。


更新 :2023.10.17 问题解决!

今天随便点了几下,错误又冒出来了,看来并没有解决。我逐一双击错误信息,都是无跳转(跟之前一样)...... 然而!某一条竟然跳转了,直接让我找到了报错的对象,果然一开始的猜想是对的!

就是很早之前做的两个简陋的临时prefab,挂了该脚本。现在工程和场景里面早已经不用它们了。

之所以搜索不到,因为冒出问题的是prefab里面的子对象Weapon(1),而搜索只能搜索到prefab的名称(Enemy)!

这个问题确实挺头疼的。。教训就是,如果要把继承Mono的脚本改为不继承Mono的,一定要趁早------趁着"哪些对象挂了它?"还没忘干净的时候。。

把他们删掉了,这回应该是画上句号了。

相关推荐
不绝19111 小时前
导航系统/NavMeshAgent组件
unity
mxwin13 小时前
Unity Shader 屏幕空间 UVScreen Space UV 完全指南
unity·游戏引擎·uv
LF男男17 小时前
TouchManager
unity·c#
mxwin17 小时前
Unity Shader 径向模糊与径向 UV 变形速度感 · 冲击波效果完全指南
unity·游戏引擎·shader·uv
weixin_4239950018 小时前
unity 微信开发小游戏,网络资源获取数据
unity·游戏引擎
Yasin Chen18 小时前
Unity TMP_SDF 分析(五)片元着色器
unity·游戏引擎·着色器
mxwin19 小时前
Unity Shader Texture Bombing用随机旋转与偏移的多次采样,打破大地形纹理的
unity·游戏引擎
zcc85807976220 小时前
Unity MVVM UniTask + 轻量级 ReactiveProperty
unity
zcc85807976221 小时前
Unity 自动生成UI绑定+MVVM 架构模板
unity
葡萄城技术团队1 天前
Excel公式前的“@”符号:是Bug还是黑科技?
科技·bug·excel