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

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

相关推荐
程序猿多布6 小时前
预定义委托(C# and Unity)
unity·c#
Edision_li15 小时前
DeepSeek教unity------Dotween
unity·游戏引擎
Tlog嵌入式16 小时前
单片机常见bug记录(长期更新)
单片机·嵌入式硬件·bug
zfoo-framework17 小时前
Unity中NavMesh的使用 及其 导出给java服务端进行寻路
unity
程序猿多布17 小时前
数学函数(C#、Lua 、Unity)
unity·c#·lua
浅陌sss2 天前
Unity中可靠的UDP实现
unity
会发光的猪。2 天前
el-input无法输入0.0001的小数,自动转换为0在vue3中的bug
前端·javascript·vue.js·elementui·bug
shandianchengzi2 天前
【BUG】LLM|Ubuntu 用 ollama 部署 DeepSeek 但没输出,llama 有输出
ubuntu·llm·bug·llama·ollama·deepseek
奔跑的犀牛先生2 天前
unity学习46:反向动力学IK
unity
幻世界2 天前
【工具插件类教学】实现运行时2D物体交互的利器Runtime2DTransformInteractor
unity·交互·运行时2d物体交互