creator2.4.5编辑器shaderSource报错

  • Creator 版本:2.4.5

  • 目标平台:win7 , creator编辑器–>

  • 重现方式:
    未知,但经常出现.
    现象:
    1.出现时点击任何预制体都无法在编辑器里显示任何内容.
    2.关闭编辑器进入项目选择界面时,项目也无法打开.
    3.完全退出creator,重启后恢复正常.
    4.之前2.4.3也有一样的问题,遇到不少次,有时只能不停重启来继续工作.

  • 首个报错:
    TypeError: Failed to execute ‘shaderSource’ on ‘WebGLRenderingContext’: parameter 1 is not of type ‘WebGLShader’.
    at _createShader (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\gfx\program.js:207:6)
    at Program.link (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\gfx\program.js:98:22)
    at ProgramLib.getProgram (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\core\program-lib.js:275:26)
    at ForwardRenderer._draw (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\core\base-renderer.js:352:32)
    at ForwardRenderer._drawItems (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:330:14)
    at ForwardRenderer._opaqueStage (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:363:10)
    at ForwardRenderer._render (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\core\base-renderer.js:239:7)
    at ForwardRenderer.render (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\renderer\renderers\forward-renderer.js:126:12)
    at Function.render (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\core\renderer\render-flow.js:286:12)
    at Object.render (D:\CocosDashboard_1.0.10\resources.editors\Creator\2.4.5\resources\engine\bin.cache\dev\cocos2d\core\renderer\index.js:209:18)

  • 编辑器操作系统:

  • 重现概率:非常经常

3分钟出现一次这个错, 也是醉了

所以,解决方案是什么?

还有一次,重开他直接报这个错,我只好再重开,它又好了,这太严重了.

引擎组的人在,处理一下啊?

引擎组的人在,处理一下啊?

呼叫引擎组救命的第4天


参考这个方案,或者试试在 dashboard 的设置里,有个启动选项,填入 “–disable-gpu”;

在 dashboard 的设置里,有个启动选项,填入 “–disable-gpu” 这种方法不行.
这个问题应该是属于shader写得有bug,禁用gpu它不还得执行shader
第一种方法我再看看

试过了,这2个方法都不行.呼叫引擎组第5天.

呼叫引擎组,第6天.

你往前翻报错,最前面有没有一个 glContext loss 之类的错误?另外使用之前的版本会出现这样的问题么?

你这里输入错误了:

--disable-gpu

有两个 -

截图上只有一个

之前2.4.3也会报这个错误,但是因为不经常出现,重启就可以了.2.4.5是太常出现了.
红色报错的话,这个第一个错.有出错我截个图,一天会出七八次还是很容易截到图的.

白色的是第一个正常log,接下去就出现循环报错,永不停止的那种循环…只能重开

这个现象还是挺特殊的,

首先,它不是固定出现,是在切换预制体时,或者第一次开启creator时,不定时出现,
原因很可能是某些程序执行时间顺序不一样,或者多线程执行顺序不一样导致的,否则不可能有时候出现,有时候又不出现了.

其次,出现时,上方的预制体渲染必然变成空的,什么也渲染不出来了.

更典型是的是,都没动creator,就在我编辑这段话过程中,我把creator从最小化切换出来看了一下,它居然在我没任何操作的时候报这个错了.就是仅仅最大化最小化也可能出现的错误…

等待解决方案的第10天

没什么用,我把–disable-gpu 复制进CocosDashboard 配置,然后更新本地配置,关闭CocosDashboard ,重启creator , 一启动就给我来了一次报错…

再重开又好了,过了会又出错:

呼叫引擎组,第12天.

你那显卡是什么型号?驱动版本是啥?如果关了 gpu 加速还会,怀疑是显卡驱动导致的了,更新一下试试看。

可以试试:

--disable-gpu --disable-software-rasterize
1赞