Creator 编辑器不稳定性问题征集

最近一些朋友反馈遇到 Creator 编辑器表现不稳定的问题,包括:

  • 编辑器无法打开特定项目
  • 编辑器无法正常工作,需要重新启动
  • 编辑器失去响应
  • 编辑器崩溃

我们认为这些稳定性问题是应该最优先解决的,但通过我们现有的 demo,测试用例和合作项目无法有效的重现问题,所以希望通过这个帖子收集大家这方面的反馈,并尽可能的建立不同问题之间的联系,让寻找问题根本变得更容易。

希望遇到问题的朋友们积极回复,我们会以最高优先级回复和处理,反馈问题时请提供:

  • 编辑器版本号(窗口右下角)
  • 问题发生前或发生时的项目环境和进行的操作(请尽可能的回忆)
  • 问题发生时的编辑器窗口截图
  • 如果问题发生时有报错,请提供控制台报错展开后的完整信息(点 log 左侧的三角展开报错)

我们需要大家的帮助才能重现这些问题,非常感谢能够参与的朋友!

Cocos Creator Team

5赞

偶尔是会遇到这些小问题,重启一下就可以继续工作。下次遇到会注意记录。

1赞

编辑器常会编译出一些
GET http://localhost:7456/res/import/29/29fbe8f6-502f-460d-932d-d8c3e056dddd.json 404 (Not Found)
这样的json文件找不到,排查在预制中会有这样的数据,不知道是怎么生成的,其实没有实体文件。这种问题从1.x版本开始就有了。希望尽快解决。

今天使用CocosCreator 1.2.1 rc1的时候碰到了这样的问题:
新建一个JS脚本,把脚本拖到一个节点上成为组件,编辑脚本,回到Creator给脚本改名。
Creator刷新后节点上的组件名成功被刷新为重命名后的名字,但是控制台大量报错。对于我的每一个脚本,Console里面都有相同的两条报错。比如有个叫Ground的脚本:
C:\CocosCreator\resources\app.asar\editor\page\scene-utils\source-maps.js:1 A Class already exists with the same classname : “Ground”.
at C:\CocosCreator\resources\engine\cocos2d\core\platform\js.js:257:24
at Object.js.setClassName (C:\CocosCreator\resources\engine\cocos2d\core\platform\js.js:287:9)
at doDefine (C:\CocosCreator\resources\engine\cocos2d\core\platform\CCClass.js:420:8)
at define (C:\CocosCreator\resources\engine\cocos2d\core\platform\CCClass.js:445:23)
at Object.CCClass [as Class] (C:\CocosCreator\resources\engine\cocos2d\core\platform\CCClass.js:794:11)
at Object.require.Ground (assets/scripts/views/objects/room/Ground.js:1)
at s (…/…/…/…/…/CocosCreator/resources/app.asar/node_modules/browser-pack/_prelude.js:1)
at e (…/…/…/…/…/CocosCreator/resources/app.asar/node_modules/browser-pack/_prelude.js:1)
at file:///C:/path/to/myproject/library/bundle.project.js?055:1:451cc.error.Editor.error @ C:\CocosCreator\resources\app.asar\editor\page\scene-utils\source-maps.js:1

C:\CocosCreator\resources\app.asar\editor\page\scene-utils\source-maps.js:1 A Class already exists with the same cid : “f2842G8EChMk6W20X9D2EkE”.
at Object._setClassId (C:\CocosCreator\resources\engine\cocos2d\core\platform\js.js:257:24)
at define (C:\CocosCreator\resources\engine\cocos2d\core\platform\CCClass.js:447:20)
at Object.CCClass [as Class] (C:\CocosCreator\resources\engine\cocos2d\core\platform\CCClass.js:794:11)
at Object.require.Ground (assets/scripts/views/objects/room/Ground.js:1)
at s (…/…/…/…/…/CocosCreator/resources/app.asar/node_modules/browser-pack/_prelude.js:1)
at e (…/…/…/…/…/CocosCreator/resources/app.asar/node_modules/browser-pack/_prelude.js:1)
at file:///C:/path/to/myproject/library/bundle.project.js?055:1:451cc.error.Editor.error @ C:\CocosCreator\resources\app.asar\editor\page\scene-utils\source-maps.js:1

Ctrl+R错误依旧;关闭Creator至Dashboard重新打开项目错误依旧;关闭Creator关闭Dashboard再重新打开,错误消失。但是事后我无法复现这个错误,仅提供记忆里的操作步骤和错误记录以供参考。

有较大第三方SDK js文件的时候,遇到了打开较慢,持续登录失败的情况,无法登录的时候并未进入离线模式,再次尝试时,有时会有离线状态打开Cocos,但是没有掌握什么规律,希望在不易登陆的情况下也能方便的打开,或者自己能设置是否离线登录。

这个问题在 1.2 以后的版本进行了改善

会在保存场景或构建项目时提示丢失引用的资源,并提供引用位置的详细信息,可以获取新版本测试一下

1.2.1 版本在导入较大的 js 文件时会弹出对话框,询问是否将 js 文件导入为插件。导入为插件的 js 文件不会参与项目脚本的编译,能够有效防止由于编译时间过长或编译失败带来的编译器异常。

可以尝试验证一下。

这种解决方法是可以的,不过我的意思并不是说慢这件事不能忍受,现在的工程如果清理掉缓存文件夹,又有大文件(包括图片或者脚本)存在,这时打开工程是要进行初始化吧,这个环节耗时很久,而且没有Creator界面出现,让人容易误会Creator挂掉了,其实查看进程的话,是能看到creator正在运行的。希望能有个进度条或者标志,让其他人知道Creator正在工作。

另一个就是网络不好时的登录问题,会出现这个,ipc timeout. message: appcreate-project, session:1@renderer:1005,然后就无法使用Creator了,希望这时候也能用Creator,不要因此耽误用户开发。

编辑器无法正常工作,需要重新启动
编辑器失去响应
编辑器崩溃
我们工程大概100多个prefab,90M的asset,基本上拖进去10个不同的prefab,然后删掉,creator必定崩溃,
但是很抱歉,整个工程,我没法发出来

你要的应该就是这个

我用的1.2版本,出现过一次,我在canvas对应script上添加两个组件引用,却不生效的情况。
例如我添加了一个headNode,代码调用this.headNode打印是空。我反复的查看是不是我操作出问题,最后creator似乎是刷新了一下,script两个组件引用消失了。应该是我在某种情况下操作,没有保存我当时的操作状态,添加的过程就一直不生效。

好的,这个加载进度我们有计划添加了

目前我们还是希望更多用户可以登录,很快加入的 anysdk 功能会自动使用登录后的开发者帐号,如果无法连接登录服务器时,有两种选择:1. 彻底断网后启动,2. 用命令行启动并添加 -- --nologin 参数

能说一下拖进去的10个 prefab 里每个 prefab 包括多少节点,有多少组件,引用了多少图片资源吗?

当时有报错信息吗?脚本里可能有语法错误吗?

CocosCreator 1.1.2和1.2.0在我的Windows10系统上无法安装,在Cocos Creator Setup一直提示prepareing…,并且提示程序失去响应。

有的图片导入到creator中,无法正常设置给精灵。如图:点击图片,属性页左上角缩略图无法显示。

将图片托给精灵后,报错。

在代码中是可以将同一个图片设置给精灵的。

没有报错,也没脚本错,有时候重新编辑下预制会好

反应一个问题,有时候由于重构,脚本的文件名需要改,比如我有个scalebutton的prefab,里面有一个buttonscaler.js的脚本组件,很多场景已经引用了该prefab,今天我想改下buttonscaler.js的名字,只是简单的改成了ButtonScaler.js,而且是在creator的IDE里面改的,改完之后就会出现8431cf98-eeab-4446-b5ac-75f59f663dcb之类的什么没有找到的黄色字体的错误,然后在所有引用该脚本组件的属性显示地方都出现了missing的错误,我最后是把所有引用了scalebutton的地方把missing删除掉,然后再手动加入才修复的。单单只修改scalebutton里的missing是没有用的。

我觉得至少在编辑器里修改脚本的文件名后,所有引用该脚本的地方都能够自动修改。不需要再重新手动去修复。

1赞