严重Bug!!! Creator 嵌套预制体编辑的属性无法保存

  • 文档版本:3.4.1

  • 文档链接:

Creator 嵌套预制体编辑的属性无法保存,且无法断开预制体连接
PrefabTest.rar (3.3 KB)
附上项目。
复现方法:修改PlayerView中的UserView的位置,保存,重新打开,就可以看到原本保存的位置被还原了.
当直接修改PlayerView.prefab文件中CCPropertyOverrideInfo,可以修改UserView的位置

确实挺严重的

看来某种因素造成这个 UserView.prefab 状态错误了. 把 root 改成右边的样子, 就正常了.

如果没记错的话,3.5.1某种情况下也会出现这种情况

这两个原预制体文件的行数都非常长,且嵌套层数与预制体数量很多,手动查找更改不太现实.

把UserView放到任何一个预制体里都会出现相同的问题

我们目前用过的3.4.0,3.4.1一直有这个问题,好像和删除资源或脚本出错时保存预制体有关

在出错的预制体上,脚本的属性也会错误属性错误
脚本里只有继承来的2个属性

这个是脚本有调整过属性才会这样提示

这个脚本里的属性没有做过任何调整

再说即便调整了也不应该展示完全不存在的属性啊 :sweat_smile:

这个UserView的预制体是有问题的,确实是root的数据不对,建议修复下该预制体再继续使用。
嵌套预制体目前在部分情况下确实无法正常保存修改的数据:请教升到 3.4.2 版本后,场景上的预制件在序列化设定值都无法有作用
3.5.1有修复部分问题,建议你们升级一下

目前的机制确实是脚本属性有改动过,会有一个提示你reset的功能,如果你确认脚本属性没有调整,麻烦把相关的文件上传一下,我们看看是什么问题导致这个属性显示出来

有么有相关的修复工具可以使用吗?从几万行的文件里进行修复确实很难啊

这个可能比较困难,因为牵扯到的文件很多

这个root,一般都是最外层,你打开prefab文件,从根节点上找_prefab字段,它的值表示prefab文件里的位置,你用vscode,把prefab当作json打开,然后outline中可以点击对应的位置跳到相应的地方

抱歉目前没有工具修复这个问题,因为这个root为什么会为空还需要定位一下。

不需要所有文件,只需要这个脚本异常的节点所在的资源文件(prefab或scene)就好

了解,我这边先试下

3.5.1的预制体出错率远远高于3.5.0,实测

没有工具还是很难定位的,下面是真正的预制体
User.rar (6.7 KB)
从132个元素里边找可太难了,这还是比较小的预制体,我们总的prefab里元素能到2000+ :scream: