突然就打不开了

open prefab failed 584d33d3-d1ae-4602-bb57-354a9d42adbe TypeError: Cannot read property ‘_prefab’ of null

啥问题,根本找不到错误

报错机制有点问题啊,根本找不到错误

这个是 3.6.0 版本的吗 ?
重启编辑器也一样吗 ?

对啊,之前3.5,上个星期刚变成3.6还不报,今天打开突然就这样了,

1赞

重启电脑也是这样吗?

也是这样的
[Scene] open scene failed 1332853b-a9a7-4444-907a-9829546c9f62 TypeError: Cannot read property ‘_prefab’ of null at PrefabUtil.findOutmostPrefabInstanceNodes (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:14702)
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15048
at Array.forEach ()
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15031
at Array.forEach ()
at PrefabUtil.findOutmostPrefabInstanceNodes (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15011)
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15117
at Array.forEach ()
at PrefabUtil.findOutmostPrefabInstanceNodes (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15100)
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15258
Error: [Scene] open scene failed 1332853b-a9a7-4444-907a-9829546c9f62 TypeError: Cannot read property ‘_prefab’ of null
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15031
at Array.forEach ()
at PrefabUtil.findOutmostPrefabInstanceNodes (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15011)
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15117
at Array.forEach ()
at PrefabUtil.findOutmostPrefabInstanceNodes (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15100)
at K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\prefab\utils.ccc:1:15258
at Logger._logHandler (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\manager\startup\log.ccc:1:318)
at Logger.record (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\node_modules@base\electron-logger\lib\renderer.ccc:1:458)
at console.error (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\node_modules@base\electron-logger\lib\renderer.ccc:1:1414)
at SceneFacadeManager.openScene (K:\CocosDashboard\resources.editors\Creator\3.6.0\resources\app.asar\builtin\scene\dist\script\3d\facade\scene-facade-manager.ccc:1:6695)

1赞

回退版本 3.5.2 的话也会这样吗 ?
如果新建一个空项目, 然后搜索一下 UUID 为 584d33d3-d1ae-4602-bb57-354a9d42adbe 的预制体,
然后把这个 prefab 放进去, 能运行吗 ?

就像这样搜索

image
image

1赞

回退3.52的话,错误更多,只能先重写了

1赞

:upside_down_face:
这样看来还是不能轻易升级呀, 太不安全了

这个错误的 prefab 文件能发给我们么?可以尝试修复一下

邮箱多少?我发给你

sijie.wang@cocos.com

把prefab 全删掉一个个加回来,哪个报错就是哪个有问题啊

论git的重要性

我用3.6.1版本也遇到了这个问题,3.5.2版本正常,表现如下

若prefabA引用了prefabB,B上面绑了一个脚本C,在加载A时,就B物体上面的脚本C很奇怪的就变为null,

comp本应该是自己写的脚本C,现在C为空,所以__prefab也就不存在了

望官方可以给个答复

网页调试没问题,在微信小游戏真机上和PC开发者工具都会报错

prefabB 是节点还是资源?加载 A 是 load 还是 instantiate?能给个 demo 吗?

A和B都是节点,C是自定义脚本组件,加载是先load再instantiate。prefab都是放在远程服务器。
如果是cocos自带的组件就不会空,例如sprite、widget,自定义的组件是null。

我不肯定是否是prefab的问题,或许是加载的方式,项目结构等等,这是公司的项目,单独抽离出一个demo不太容易,3.5.2及之前的版本是没有问题的

网页调试没问题,数据应该是对的。你试试打包成web版,远程包和非远程包分别勾选,看看是不是资源加载过程的问题

打包web手机端,无论是远程包和非远程包,跟微信小游戏开发者工具里面的报错都是一样的