记录一个奇怪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的,一定要趁早------趁着"哪些对象挂了它?"还没忘干净的时候。。

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

相关推荐
灰暗世界%3 小时前
飞牛bug修复
bug
zhchyun200810 小时前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(03)
unity
淡海水1 天前
15-02-YooAsset面试篇-Unity架构设计与源码
java·unity·面试·c#·游戏引擎·yooasset
郝学胜-神的一滴1 天前
中级OpenGL教程 030:gl_FragCoord解锁区域渲染与深度可视化新姿势
c++·unity·游戏引擎·图形渲染·unreal engine·opengl
ellis19701 天前
u3d插件xLua[四]Lua访问C#源码分析,反射,生成代码
unity
2401_894915531 天前
GEO 定位优化源码搭建常见报错排查:数据库、伪静态、接口调试
java·数据库·网络协议·tcp/ip·spring·unity
xcLeigh2 天前
Unity基础:C#脚本的创建与挂载——让你的游戏物体活起来
游戏·unity·c#·教程
凌云拓界2 天前
NodeVerdict | 性能门禁:把追踪数据变成 CI 规则
ci/cd·信息可视化·开源·node.js·bug·数据可视化·安全架构