3.6 | 编辑器预览(GameView)公测帖

抱歉目前没有 jsb 相关的 API,这个跟在其它桌面平台预览是一样的。建议采用分支或者动态判断来切换预览时使用的代码逻辑。

只需要按照桌面平台去兼容就ok了吧

编辑器预览经常拉不起资源,导致启动不成功,恶心的要死

请问有报错吗?表现是什么?什么类型的资源容易拉不到?

就很正常的模型啥的,企业微信截图_16680455348975

浏览器预览,打包啥的都不会有这个问题

而且这个问题是随机资源,模型可能性比较大

麻烦展开下这个报错信息。

随机资源有没有什么特别的地方?比如是不是打开工程后添加的资源出的错

这个报错不是引擎报错是业务层报错,其实就是从一个ab包中加载资源后从来没拿出来用,然后就拿不到。就在编辑器预览这里频繁开关编辑器预览,不是必现

这种问题大部分都是时序问题吧~。奇怪的是浏览器预览不复现,编辑器预览才有

刚反复预览3次,出现一次一个node的prefab加载不到

加载包后看看对应资源有没有被加载

经过我的测试,我发现在add函数里面打印一下此问题不在复现
企业微信截图_16681396384992
图中日志文件所在位置: cocos-engine/weak-cache.ts at develop · cocos/cocos-engine (github.com)
PS:

采用的自定义引擎,资源部分未做任何修改

而浏览器预览和其他平台不会出现此问题,原因在于editor下采用的存储方式不一样
cocos-engine/shared.ts at develop · cocos/cocos-engine (github.com)

如果我只打印key,不打印val,此问题任然有

此处可能是console导致的引用让weakref认为对象有效

如果发生了此问题,当我在get中使用的时候,uuid所在的weakmap中的关联weakref对象是存在的,只是使用deref取出的值为void 0;

unity用惯了,在浏览器中预览属实不方便。烦请查看一下此问题,

我原以为是remove掉了,但是在remove中打印了日志,查明并没有产生任何remove调用

再说2个问题,
其一是编辑器预览下,底层应该是采用的native,那么,原生插件理当生效,问题由此产生,原生插件创建范例 · Cocos Creator 原生插件如何在编辑器预览模式下生效

其二是编辑器预览调试下,如果在dev面板不小心按下了F5刷新,编辑器必挂,这个时候只有重启编辑器一条路

编辑器预览目前不是用native,模拟器才是native

ok,模拟器的plugin逻辑加载没有写,我已经在cmake里面加上了,现在可以成功启动编译plugin,但是遇到一个新问题就是调试的js代码没有带sourcemap,这样导致类名啥的都是uuid,很繁琐,有什么办法在模拟器里面启动sourcemap吗。其实最好是编辑器预览是native,并可以加载plugin那就非常nice了,而且有个非常大的麻烦就是我点了chrome的enable js sourcemap后,chrome就潇洒的崩了崩了, 你敢信~。虽然我还没有sourcemap

编辑器的一个bug,麻烦看一下。

报个修改 view.setDesignResolutionSize问题。
1、在游戏运行中,切换模竖屏时,会修改 view.setDesignResolutionSize。
2、预览窗口中,UI显示不正常,或者没有显示。但在暂停后,Scene中能正常看到UI。



PS.浏览器一切正常。

预览的时候莫名其妙报错,浏览器运行正常的

cocos\asset\asset-manager\shared.ts 里

export const assets = EDITOR ? new WeakCache<Asset>() : new Cache<Asset>();

条件可以改成

EDITOR && !cclegacy.GAME_VIEW

这样试试看能否正常。

目前模拟器用的引擎代码没有sourceMap文件,但是项目脚本应该是有的。我们会在下个版本加上。